欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

程序员文章站 2022-12-09 11:33:48
本博文目的:在非服务器、而且没有证书颁发机构(certificate authority简称ca)的开发环境中,配置https,ssl用于测试或学习 一、建造测试网站...

本博文目的:在非服务器、而且没有证书颁发机构(certificate authority简称ca)的开发环境中,配置https,ssl用于测试或学习

一、建造测试网站

1.在桌面上建立个文件夹,然后再在文件夹里新建个html文件

2.打开iis,添加网站,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

3.访问网站http://localhost:8090,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 二、创建证书

iis里的server certificates提供了5种创建证书的方法,见下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

1.其中create a self-signed server certificate选项,创建自签名服务器证书,目的在于:

  a)解决第三方证书问题。

  b)远程管理 iis。 

  c)在服务器与一组有限的已知用户之间创建安全的私有通道,例如软件测试环境中的私有通道。

  d)测试依赖 ssl 设置的功能。

使用该功能,证书的common name(cn)默认是电脑名+域名,即computer name+ domain,见下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

2.create certificate request选项则提供了可自定义创建证书的方式,见下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击"next":

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

这里提供了2种加密方式:rsa和dh schannel。点击"next":

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

选择一个文件名,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

最后点击"finish"。

打开刚才的文件mycert.txt,里面内容如下:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

这个文件是用于导入到ca里生成证书用的,但关键是我的电脑里没有ca,windows组件里也没有ca的安装选项,也就是说我现在无法制作这个证书了。这时,一个给力的工具就要闪亮登场了——selfssl。

三、使用selfssl.exe生成证书

下载并安装iis 6.0 resource kit tools: 

或到下载:

安装好之后,点击“开始”-“所有程序”-“iis resources”-“selfssl”,打开selfssl,界面如下:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

其中/s:site id可以从 iis根目录->sites 里看到,如下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

还有/p:port指https的port,而非http的port。在本例中,指https的默认端口443(当然你也可以指定其他端口),而不是localhost:8090里的8090。

 接下来,在selfssl里输入命令:selfssl.exe /n:cn=localhost /k:1024 /v:365 /s:2 /p:443,回车之后,见下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

选择y并回车,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

回到iis,打开server certificates,发现证书已创建成功,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

四、绑定证书到网站上

回到iis,选中站点,右键,选择edit bindings,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击add按钮

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

选择type为https的,并edit,在弹出的界面里的ssl certificate下,选择我们刚才创建的证书,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

再次回到iis,选中站点,选择ssl settings,如图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

打开ssl settings之后,做出如下选择:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

再一次打开我们的网站,发现提示该网站不安全,见下图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 

当然,你如果设置ssl settings如下,则打开网站的时候是这样的:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 

我们创建的证书,issued to,issued by都是同一个,这种叫做根证书,该证书需要存放在trusted root certification authorities目录下,网站才会被信任,这可以通过certmgr.msc查看。那么如何让ssl验证通过呢,即如何让锁形安全标志出来呢,有两种方法:

1.点击图中红色框处:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 出现下面的小弹出框:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击上图中的“view certificates”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击上图中的“install certificate”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击“next”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击上图中的“browse”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

选择上图中的“show physical stores”,并选择“trusted root certification authorities”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

然后一路点击ok和完成,直到出现“the import was successful”。

这时,我们打开certmgr.msc,发现证书已成功导入。

此时,打开网站链接https://localhost,发现锁形安全标志已出现:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 

2.回到iis,打开server certificates,选中我们创建的证书,右键,导出证书,见图:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击ok之后,会在c盘目录下看到myssltest.pfx文件。

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 

在 开始-运行 里输入certmgr.msc,打开certificate manager,找到trusted root certification authorities目录,

并右键,选择all tasks,然后选择import:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

选择我们刚刚保存的文件myssltest.pfx:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击next,输入密码:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

点击next:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

一路点击next和finish,直到出现“the import was successful”:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

此时,打开网站链接https://localhost,发现锁形安全标志已出现:

在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

 全文完