云知笔记

在IIS站点中部署SSL证书从而实现全站HTTPS加密的步骤详解

前言:随着整个IT行业对信息安全、用户隐私的重视,越来越多的网站都开启了HTTPS加密访问方式,逐步抛弃HTTP常规访问方式,HTTPS加密访问之所以开始普及,这要追溯到2015年5月,维基媒体基金会发布公告,旗下所有网站将默认开启HTTPS,这些网站中最为人所知的当然是全球最大的在线百科-维基百科。此后GOOGLE等网络巨头的加入并鼓励全球网站实现HTTPS,尤其是在Google调整了搜索引擎算法之后,让采用HTTPS的网站在搜索中排名更靠前,GOOGLE这一做法更加鼓励了一大批中,小型网站加入到HTTPS加密访问的行列中来,因为开启HTTPS不仅保护了信息全安和用户隐私,而且更加能够容易让大型搜索引擎把公司内容靠前展示在用户面前。对于普通用户而言,访问开启HTTPS的网站,更加具有安全感和信任感,由此可见所有网站全面开启HTTPS是必然的趋势。下面以IIS服务器为例,详细说明如何为自已的网站部署SSL证书并开启HTTPS加密访问的方法:

一、申请证书:

SSL证书的种类有三种,分别是EV证书,OV证书和DV证书,颁发数字证书的公司也很多,比如赛门铁克,亚洲诚信等,证书的年费也不一样,从几万到几千一年的都有,至于怎么选购证书,这里就不再赘述,这里以购买的腾讯云SSL证书为例

进入腾讯云控制面板,打开SSL证书管理(上图)

 

 

针对你需要部署的域名进行申请购买,如果你是在其它公司购买的证书,可以直接上传证书(上图)

如果购买或上传的证书审核通过后,在你准备部署的网站域名后面会显示已颁发,随后你可以下载证书压缩包用于服务器部署,解压后看到以下文件夹,是各种服务器版本的证书包,其中包括:Apache, IIS,Nginx和Tomcat,我们要用的是IIS版本(下图)

 

 

二、开始部署:

首先登录你的服务器,打开IIS控制面版(不清楚IIS布局的可以去百度IIS相关资料),找到服务器证书功能模块(下图)

 

双击打开后,选择导入,导入我们刚刚解压得到的pfx文件,这个pfx文件就是你需要部署域名的那个文件。

 

导入完成后重启IIS,在浏览器中用HTTPS打头访问网站(如下图):

这个时候我们带https打开我们部署的网站,现在显示的还是红色的,未经过身份验证,所以下一步我们去找到我们需要部署的网站,在服务器网站栏里,双击绑定,对域名进行HTTPS绑定(下图)

 

注意,HTTPS的默认访问端口为443,而不是80端口(上图)

现在我们再用HTTPS打头访问网站,发现HTTPS前面加了一把绿色小锁,说明加密验证成功(下图)

三、URL重写实现全站部署HTTPS:

虽然经过刚才几步操作,我们可以用HTTPS打头对网站进行加密访问了,但问题出来了,网站访问用户都没有专业的网络知识,根本不知道你的网站是不是部署了SSL证书以及是否可以进行HTTPS加密访问,这就需要我们把所有来自客户端浏览器的访问请求都进行HTTPS跳转,即对网站访问URL进行重写,下面我们就详细说明部署HTTPS最关键的步骤—–URL重写:

首先回到IIS控制面板,在功能模块中找到URL重写(如下图):

如果你的IIS控制面版中没有找到URL重写模块,是因为没有安装,你需要下载URL重写模块安装程序进行安装,

IIS7.5 和IIS8URL重写组件下载地址:

中文32位:http://download.microsoft.com/download/4/9/C/49CD28DB-4AA6-4A51-9437-AA001221F606/rewrite_x86_zh-CN.msi

中文64位:http://download.microsoft.com/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite_x64_zh-CN.msi

英文:http://www.iis.net/downloads/microsoft/url-rewrite

IIS 10安装中文版URL重定组件会出现冲突,具体解决方法请参考我的另一编原创文档:

《Windows10中的IIS10安装php manager的方法》

文中会提到在IIS10中解决中文版重写组件的安装冲突的方法。

在彻底实现全站URL重写之前,请检查网站根目录是否有web.config文件,如有,请先备份这里的web.config文件,以免跳转规则重写出错导至全站无法访问,接下来打开URL重写功能(如下图)

 

添加规则,规则名称:Redirect to https,使用正规表达式,模式填写 (.*),然后接下来选择添加条件。第一个填{HTTPS} 与模式匹配 ^OFF$ ,第二个填{HTTPS_HOST} 与模式不匹配 ^(localhost)(如下图)

 

 

操作类型选择重定向,然后选择属性为https://{HTTP_HOST}/{R:1} 重定向类型选择303。方法如下图:

最后对重写URL规则进行应用并重启IIS(如下图)

 

 

测试访问:你会发现所有搜索引擎收录的你网站页面链接进网店后全部自动开启HTTPS加密,一般用户随意输入网址访问你的网站也将自动开启HTTPS加密,至此,你的网站成功部署SSL证书并全站开启了HTTPS加密访问。

老张在IIS7.5中成功测试了上述方法,如有错误欢迎指正。Email:6121181@qq.com

 

2 评论 “在IIS站点中部署SSL证书从而实现全站HTTPS加密的步骤详解”

发表评论

电子邮件地址不会被公开。

+ 25 = 26