开启HSTS教程

HSTS简介

 

HTTP严格传输安全(英语:HTTP Strict Transport Security,缩写:HSTS)是一套由互联网工程任务组发布的互联网安全策略机制。网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

HSTS优点

HSTS可以用来抵御SSL剥离攻击。SSL剥离攻击是中间人攻击的一种,由Moxie Marlinspike于2009年发明。他在当年的黑帽大会上发表的题为“New Tricks For Defeating SSL In Practice”的演讲中将这种攻击方式公开。SSL剥离的实施方法是阻止浏览器与服务器创建HTTPS连接。它的前提是用户很少直接在地址栏输入https://,用户总是通过点击链接或[失效链接]3xx重定向,从HTTP页面进入HTTPS页面。所以攻击者可以在用户访问HTTP页面时替换所有https://开头的链接为http[失效链接]://,达到阻止HTTPS的目的。
HSTS可以很大程度上解决SSL剥离攻击,因为只要浏览器曾经与服务器创建过一次安全连接,之后浏览器会强制使用HTTPS,即使链接被换成了HTTP。
另外,如果中间人使用自己的自签名证书来进行攻击,浏览器会给出警告,但是许多用户会忽略警告。HSTS解决了这一问题,一旦服务器发送了HSTS字段,用户将不再允许忽略警告。

HSTS不足

用户首次访问某网站是不受HSTS保护的。这是因为首次访问时,浏览器还未收到HSTS,所以仍有可能通过明文HTTP来访问。

由于HSTS会在一定时间后失效(有效期由max-age指定),所以浏览器是否强制HSTS策略取决于当前系统时间。部分操作系统经常通过网络时间协议更新系统时间,如Ubuntu每次连接网络时,OS X Lion每隔9分钟会自动连接时间服务器。攻击者可以通过伪造NTP信息,设置错误时间来绕过HSTS。

 

 

浏览器支持

 

Chromium和Google Chrome从4.0.211.0版本开始支持HSTS

Firefox 4及以上版本

Opera 12及以上版本

Safari从OS X Mavericks起

Internet Explorer和Microsoft Edge从Windows 10开始支持

 

 

开启HSTS

1.需要先将HTTP强制跳转到HTTPS链接

2.Apache与Nginx需要添加在监听的443端口的配置文件.Vestacp是在snginx.conf里面.

 

Apache

 

编辑站点配置文件在443端口区修改为以下内容

 

 

Lighttpd

增加到 Lighttpd 配置文件:/etc/lighttpd/lighttpd.conf

 

 

Nginx

Nginx最为简单,在server_name下面另起一行增加即可

LNMP编辑你的网站目录下的: /usr/local/nginx/conf/vhost/xxx.com.conf

 

 

IIS

需要第三方组件:http://hstsiis.codeplex.com

 

修改好配置文件后,重启WEB服务器即可.

 

参数说明

其中:

  • max-age是必选参数,是一个以秒为单位的数值,它代表着HSTS Header的过期时间,通常设置为1年,即31536000秒。
  • includeSubDomains是可选参数,如果包含它,则意味着当前域名及其子域名均开启HSTS保护。
  • preload是可选参数,只有当你申请将自己的域名加入到浏览器内置列表的时候才需要使用到它。

 

HSTS Preload List

加入HSTS Preload List

打开:

https://hstspreload.org/

 

输入你的域名后点击“”Check HSTS preload status and eligibility

 

 

LNMP – 安装SSL安全证书且部署HTTPS教程

 

ssl-logo2

修改/usr/local/nginx/conf/vhost/bxl.pm.conf(这里填写你的配置文件)

将listen 80的端口改为443(如果不需要强制跳转,可以在下面补上listen 443即可),并下面加入

ssl on;

ssl_certificate 证书的存放位置;

ssl_certificate_key 密钥的存放位置;

 

下面我是的配置文件,大家可以参考.

 

修改完毕后,我们最好验证一下

 

 

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

 

如果出现上面的字符说明节点已经配置正常。

最后重启nginx即可

 

Comodo Positive SSL证书安装配置教程

comodo-positive-ssl-logo

Comodo Positive SSL的证书有免费的也有付费的,一般免费的都是UK2提供的吧(购买或者使用UK2的服务器都有,但是授权一般为:Hosted by HOSTING SERVICES, INC.就说明使用的UK2签发的证书).也有一些代理商,比如:GGSSL等等价格也非常便宜(好像只要4.99美元把).

 

下载下来后一般的顺序为:

www_bxl_pm.crt

COMODORSADomainValidationSecureServerCA.crt

COMODORSAAddTrustCA.crt

AddTrustExternalCARoot.crt

 

所以,我们需要安装正确的顺序来合并,Linux使用cat命令直接合并.

 

Windows下直接使用Notepad直接编辑,但是不能有换行,还有就是顺序错乱等问题,都会导致不信任.

合并后直接上传到相应的问题目录,该重启的重启,然后大功告成.

Ubuntu/Debian 彻底卸载Apache2

apache-logo

前面文中有提起卸载webmin等,这篇主要是彻底卸载apache,不然安装其他的面板可能会出现问题.

 

卸载Apache2

输入以下的命令进行卸载.

删除相关文件

卸载完毕后,删除一些原来的目录,记得备份相关文件

删掉/etc/apache2 文件夹:

删掉/var/www文件夹:

删掉/etc/init.d/apache2文件:

删掉libapache2-mod-jk文件:

为了删除的更干净,我们最好查找一些配置文件并删除.

删除关联,清理残留

 

 

输入完成上面的命令后基本可以删掉所有有关Apache的配置等.下面就可以重新安装或者安装其他的面板了.

 

在以前有详细写过如何卸载Mysql:https://www.xlboo.com/9654.html

Webmin/Virtualmin – 安装根证书教程

本篇文章主要内容就是安装取消Webmin/Virtualmin的根证书信息

安装根证书

首先登录你的Webmin/Virtualmin面板https://ip:10000,如果有改动的话,可以使用自己设置的端口等

然后找到:

Server Configuration > Manage SSL Certificate(管理SSL证书)

webmin-manage-ssk-certificate

进入页面后选择

CA Certificate

webmin-manage-ssl-ca

有四个选项,

1.不需要安装

2.在服务器/VPS上选择相应的文件

3.上传自己PC的文件

4.粘贴证书文本

 

这篇文章有alphassl的根证书信息,https://www.xlboo.com/9249.html

大家可以先去了解一下根证书的几种格式.

 

选择后根证书的上传方式后,点击(Save Certificate)保存,安装就成功了.

 

取消根证书

webmin-manage-ssl-ca

取消很简单,选择第一个选项.即可取消根证书信息.

 

下篇更新提示:更新其他版本的SSL安装信息

AlphaSSL – 获取根证书Root Certificate

因为移动端总是显示不信任(AlphaSSL颁发机构不可信),忽然想到当时大意了,竟然忘记安装ca了.下面就来说一下如何安装根证书.非常简单.

 

首先登录到alphassl官方帮助页面获取最新的根证书信息

https://www.alphassl.com/support/install-root-certificate.html

官方帮助的一些web服务器的安装教程,大家可以看一下.

 faq Apache
faq IIS 4
faq IIS 5
faq IIS 6
faq Microsoft Exchange
faq Microsoft Outlook Web Access
faq c2Net Stronghold
 faq Tomcat
faq cPanel
faq Plesk
faq IBM HTTP
faq Ensim
faq Cobalt
 faq HSphere
faq Weblogic
faq F5 Fire
faq F5 BIG IP
 faq Oracle Wallet Manager
faq Zeus

 

获取根证书

第一行为本站提供缓存,第二行为官方的正规链接地址

 

crt DER格式 .pem格式 .TXT格式
crt DER格式 .pem格式 .TXT格式

Alpha根证书

根证书信息

SHA-256 – Orders March 31, 2014 and After

AlphaSSL SHA-256 R1 Intermediate Certificates

AlphaSSL CA – SHA256 – G2

SHA256 – RSA – 2048

Valid until: 20 February 2024

 

安装也是非常简单的,后面几篇会更新相关的

Apache – RewriteCond: NoCase option for non-regex pattern ‘-f’ is not supported and will be ignored

 

发现Mylsq异常退出,查看了一下apache的日志发现有以下的问题:

 

解决方案

将 /.htaccess 文件中的

改为

即可.

 

Invalid command ‘php_admin_value’, perhaps misspelled or defined by a module not included in the server configuration解决办法

今天使用webmin升级的时候,发现apache没有启动,故启动出现以下的报错.

php-admin-v

 

出现这个问题呢 主要是服务器没有libphp5.安装即可解决

安装前记得要升级一下源

解決方法

Ubuntu

Debian

 

Centos

然后如同上面代码所示重启以下apache服务器修复

Windows 7 – IIS7配置图文教程

上篇文章主要是说了IIS在windows7中的安装,我用的是正版的windows7,所以很多的功能都是存在的。

Windows 7 – IIS6安装图文教程:https://www.xlboo.com/8189.html

这里就大概的说一下windows7中大概的配置网站吧。

 

首先打开IIS管理器

选中“Default Web Site”,双击中间的“ASP”

win7-iis-6-asp-open

最好是启用父路径,也就是把“启用父路径”改为“True”

win7-iis-6-asp-pach-true

然后更改完毕后点击旁边的“应用”即可

win7-iis-6-asp-pach-true-ok

我们将配置win7-iis-6-asp-gj

单击右侧“高级设置”

win7-iis-6-asp-lj

这里就是你需要设置网站存放数据地址。

 

 

 

Windows 7 – IIS6安装图文教程

最近一些网站需要在IIS中运行,自己的电脑也是windows7的,所以一直没有写安装IIS的教程,这里就写一个IIS的安装教程吧,下篇文章将是一些普通的教程。

 

打开程序与功能

在控制面板中找到程序类目win7-iis-open-0

打开Windows功能

找到“打开或关闭Windows功能”

win7-iis-open-1

Internet 信息服务

win7-iis-open

 

等待安装的完成

win7-iis-open-lp

找到管理工具

安装完成后,回到控制面板里面,找到“管理工具”,点击

win7-iis-install-1

双击“Internet 信息服务(IIS)管理器”就是IIS了。

win7-iis-install-2

 

IIS界面

win7-iis-6

 

 

Windows 2003 – 安装IIS6.0配置教程

 

IIS6.0介绍

 

IIS 6.0在Windows2003服务器的四种版本“企业版、标准版、数据中心版和Web版”中都包含有,它不能运行在Windows XP、2000或NT上。除了本文开头介绍的Windows 2003 Web版本以外,Windows 2003的其余版本默认都不安装IIS;其跟以前IIS版本的差异也可谓很大,比较显著的就是提供POP3服务和POP3服务Web管理器支持。另外,在 windows2003下的IIS安装可以有三种方式:传统的“添加或删除程序”的“添加/删除Windows组件”方式、利用“管理您的服务器”向导和采用无人值守的智能安装。52siga

 

 

IIS6.0安装

windows2003-install-iis6-1

首先在控制面板里依次选择“添加或删除程序”的“添加/删除Windows组件”;

windows2003-install-iis6-2

双击“应用程序服务器”

windows2003-install-iis6-3

再双击“Internet信息服务”,选中“Internet 信息服务(IIS)”(注:此选项下还可进一步作选项筛选,请根据自己需要选用,如下图所示),点确定即安装完成。

windows2003-install-iis6-4

 

点击确定后就可以安装完成了.

 

配置IIS6.0

1.同其它windows平台一样,此时默认Web站点已经启动了。但请大家注意,IIS6.0最初安装完成是只支持静态内容的(即不能正常显示基于 ASP的网页内容),因此首先要做的就是打开其动态内容支持功能。依次选择“开始”-“程序”-“管理工具”-“inter信息服务管理器”,在打开的 IIS管理窗口左面点“web服务扩展”;如下图所示,将鼠标所在的项“ASP.NET v.1.1.4322”以及“Active Server Pages”项启用(点允许)即可。

windows2003-install-iis6-5
ASP .NET解释:这是新一代的 Microsoft 服务器端脚本环境。它提供一种新的编程模式和结构,使 Web 开发者能够构建和部署比以前更安全、更灵活、更稳定的企业类 Web 应用程序。

APMServ 5.2.6 – 一键快速搭建Apache+PHP+MySQL+Nginx+Memcached+ASP平台

这个呢是我很久之前使用的,今天在测试新版的源码的时候需要在本地先进行测试。最近张宴也换域名了,听说apmserv6.0也要出来了 ,但是迟迟没有发布!

apmserv

apmserv_vhost

软件名称:APMServ 5.2.6
软件作者:张宴
授权方式:免费软件
发布日期:2008年10月21日
运行环境:WinNT/Win2000/WinXP/Win2003
文件大小:20.4MB

软件简介:
APMServ 5.2.6 是一款拥有图形界面的快速搭建Apache 2.2.9、PHP 5.2.6、MySQL 5.1.28&4.0.26、Nginx 0.7.19、Memcached 1.2.4、phpMyAdmin 2.11.9.2、OpenSSL、SQLite、ZendOptimizer,以及ASP、CGI、Perl网站服务器平台的绿色软件。无需安装,具有灵活的移动性,将其拷贝到其它目录、分区或别的电脑时,均只需点击APMServ.exe中的启动按钮,即可自动进行相关设置,将Apache和MySQL安装为系统服务并启动。APMServ集合了Apache稳定安全的优点,并拥有跟IIS一样便捷的图形管理界面,同时支持MySQL 5.0 & 4.0两个版本,虚拟主机、虚拟目录、端口更改、SMTP、上传大小限制、自动全局变量、SSL证书制作、缓存性能优化等设置,只需鼠标一点即可完成。

1、注意事项:APMServ程序所在路径不能含有汉字和空格。
2、MySQL默认用户名:root,密码为空
3、MySQL数据库文件存放目录:MySQL5.1\data或MySQL4.0\data
4、网站根目录[HTML,PHP]www\htdocs [ASP]www\asp [CGI,Perl]www\cgi-bin
5、访问本机请用http://127.0.0.1/或https://127.0.0.1/ (如果开启SSL)
6、非默认端口,网址为http://127.0.0.1:端口/或https://127.0.0.1:端口/
7、如果在“扩展功能”中选择使用Memcached,它的端口为:11211
8、APMServ集成了以下软件:

Apache 2.2.9 【HTTP服务器】
Nginx 0.7.19 【HTTP服务器】
NetBox 2.8 Build 4128 【HTTP服务器+ASP脚本解释引擎】
PHP 5.2.6 【PHP脚本解释引擎】
MiniPerl 5.8 【Perl脚本解释器】
Memcached 1.2.4 【key-value内存缓存系统】
MySQL 5.1.28 【MySQL数据库服务器】
MySQL 4.0.26 【MySQL数据库服务器】
phpMyAdmin 2.11.9.2 【MySQL数据库在线管理工具】
eAccelerator 0.9.5.3 【PHP脚本加速引擎】
ZendOptimizer 3.3.3 【PHP脚本加速引擎】
OpenSSL 0.9.8h 【HTTPS(SSL)安全传输协议】

附加组件:
㈠Perl、CGI支持(需下载ActivePerl):
APMServ 5.2.6 附带的是MiniPerl,可以运行简单的Perl、CGI程序。如果运行复杂的Perl、CGI程序,请下载ActivePerl,安装在APMServ所在分区根目录下的usr目录中。假如APMServ所在目录为E:\APMServ5.2.6,则将ActivePerl的安装路径选为E:\usr

注意事项:
迅雷、Skype、PPLive、BT等软件启动后默认会占用80端口,导致Apache无法启动。解决方法:先关闭这些软件,启动完APMServ之后,再开启这些软件。

已知BUG修正:
1、无法启动Nginx的BUG修正方法
http://www.unixsns.com/space.php?uid=1&do=thread&id=51

[download id=”6590″]

413 Request Entity Too Large – 413错误解决方法

昨天在使用Wordpress的flash版文件上传功能的时候,总是提示500错误,很是郁闷。仔细想了想,服务器设置的是20MB上传就出现问题是不可能的呀!

切换到传统文件上传界面,重新上传一个大文件,这回出来错误提示了,413 Request Entity Too Large,发现是Nginx的错误提示。

401解决方法

打开nginx主配置文件nginx.conf,找到http{}段,添加

上面的20M是上传的大小,你可以自己设置大小的。

Centos下

重启NGINX

现在试一下就正常了。

Windows xp安装IIS时显示无法复制staxmem.dll的问题

打算测试刚刚下载的一些VIP源码时,打算本机测试时总是提示无法复制staxmem.dll,导致无法安装IIS,但在C:\WINDOWS\ServicePackFiles\i386下,有这个文件,感到不可理解,翻了翻微软,终于查看了原因。

 

解决方法:

1、开始 > 运行 > 输入CMD >再输入以下命令:

2、接着屏幕上会输出如下信息:

3、有提示框出来说你的一个什么数据库损坏,是否恢复。当然选是了。于是有下面的界面:

4、关掉CMD的大黑框,然后再装IIS,就没有staxmem.dll出错了。

nginx 301 域名重定向