ssplyh 发表于 2018-12-8 08:00:03

在IIS7.5上配置Https,SSL

  本博文目的:在非服务器、而且没有证书颁发机构(Certificate Authority简称CA)的开发环境中,配置HTTPS,SSL用于测试或学习
  一、建造测试网站
  1.在桌面上建立个文件夹,然后再在文件夹里新建个html文件
  2.打开IIS,添加网站,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080115541375.jpg
  3.访问网站http://localhost:8090,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080200193571.jpg
  二、创建证书
  IIS里的Server Certificates提供了5种创建证书的方法,见下图:
http://pic002.cnblogs.com/images/2012/126058/2012080115465564.jpg
http://pic002.cnblogs.com/images/2012/126058/2012073120025546.jpg
  1.其中Create a Self-Signed Server Certificate选项,创建自签名服务器证书,目的在于:
  a)解决第三方证书问题。
  b)远程管理 IIS。
  c)在服务器与一组有限的已知用户之间创建安全的私有通道,例如软件测试环境中的私有通道。
  d)测试依赖 SSL 设置的功能。
  使用该功能,证书的Common Name(CN)默认是电脑名+域名,即Computer Name+ Domain,见下图:
http://pic002.cnblogs.com/images/2012/126058/2012080200234518.jpg
  2.Create Certificate Request选项则提供了可自定义创建证书的方式,见下图:
http://pic002.cnblogs.com/images/2012/126058/2012080520320680.jpg
  点击"Next":
http://pic002.cnblogs.com/images/2012/126058/2012073120261283.jpg
  这里提供了2种加密方式:RSA和DH SChannel。点击"Next":
http://pic002.cnblogs.com/images/2012/126058/2012073120301353.jpg
  选择一个文件名,如图:
http://pic002.cnblogs.com/images/2012/126058/2012073120325563.jpg
  最后点击"Finish"。
  打开刚才的文件MyCert.txt,里面内容如下:
http://pic002.cnblogs.com/images/2012/126058/2012073120345662.jpg
  这个文件是用于导入到CA里生成证书用的,但关键是我的电脑里没有CA,windows组件里也没有CA的安装选项,也就是说我现在无法制作这个证书了。这时,一个给力的工具就要闪亮登场了——SelfSSL。
  三、使用SelfSSL.exe生成证书
  下载并安装IIS 6.0 Resource Kit Tools: http://www.microsoft.com/en-us/download/details.aspx?id=17275
  安装好之后,点击“开始”-“所有程序”-“IIS Resources”-“SelfSSL”,打开SelfSSL,界面如下:
http://pic002.cnblogs.com/images/2012/126058/2012080200350744.jpg

  其中/S:site>http://pic002.cnblogs.com/images/2012/126058/2012080200364688.jpg
  还有/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,回车之后,见下图:
http://pic002.cnblogs.com/images/2012/126058/2012080517441489.jpg
  选择Y并回车,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080517451323.jpg
  回到IIS,打开Server Certificates,发现证书已创建成功,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080517462777.jpg
  四、绑定证书到网站上
  回到IIS,选中站点,右键,选择Edit Bindings,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080517333163.jpg
  点击Add按钮
http://pic002.cnblogs.com/images/2012/126058/2012080517371074.jpg
  选择Type为https的,并Edit,在弹出的界面里的SSL Certificate下,选择我们刚才创建的证书,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080517494950.jpg
  再次回到IIS,选中站点,选择SSL Settings,如图:
http://pic002.cnblogs.com/images/2012/126058/2012080518243149.jpg
  打开SSL Settings之后,做出如下选择:
http://pic002.cnblogs.com/images/2012/126058/2012080518254475.jpg
  再一次打开我们的网站,发现提示该网站不安全,见下图:
http://pic002.cnblogs.com/images/2012/126058/2012080518285573.jpg
  当然,你如果设置SSL Settings如下,则打开网站的时候是这样的:
http://pic002.cnblogs.com/images/2012/126058/2012080518280476.jpg
http://pic002.cnblogs.com/images/2012/126058/2012080517510640.jpg
  我们创建的证书,Issued To,Issued By都是同一个,这种叫做根证书,该证书需要存放在Trusted Root Certification Authorities目录下,网站才会被信任,这可以通过certmgr.msc查看。那么如何让SSL验证通过呢,即如何让锁形安全标志出来呢,有两种方法:
  1.点击图中红色框处:
http://pic002.cnblogs.com/images/2012/126058/2012080518302869.jpg
  出现下面的小弹出框:
http://pic002.cnblogs.com/images/2012/126058/2012080518332975.jpg
  点击上图中的“View certificates”:
http://pic002.cnblogs.com/images/2012/126058/2012080518360972.jpg
  点击上图中的“Install Certificate”:
http://pic002.cnblogs.com/images/2012/126058/2012080518375843.jpg
  点击“Next”:
http://pic002.cnblogs.com/images/2012/126058/2012080518414776.jpg
  点击上图中的“Browse”:
http://pic002.cnblogs.com/images/2012/126058/2012080518471197.jpg
  选择上图中的“Show physical stores”,并选择“Trusted Root Certification Authorities”:
http://pic002.cnblogs.com/images/2012/126058/2012080518501267.jpg
  然后一路点击ok和完成,直到出现“The import was successful”。
  这时,我们打开Certmgr.msc,发现证书已成功导入。
  此时,打开网站链接https://localhost,发现锁形安全标志已出现:
http://pic002.cnblogs.com/images/2012/126058/2012080518594349.jpg
  2.回到IIS,打开Server Certificates,选中我们创建的证书,右键,导出证书,见图:
http://pic002.cnblogs.com/images/2012/126058/2012080520372870.jpg
http://pic002.cnblogs.com/images/2012/126058/2012080520434398.jpg
  点击OK之后,会在C盘目录下看到MySSLTest.pfx文件。
http://pic002.cnblogs.com/images/2012/126058/2012080520460543.jpg
  在 开始-运行 里输入certmgr.msc,打开Certificate Manager,找到Trusted Root Certification Authorities目录,
  并右键,选择All Tasks,然后选择Import:
http://pic002.cnblogs.com/images/2012/126058/2012080520405437.jpg
  选择我们刚刚保存的文件MySSLTest.pfx:
http://pic002.cnblogs.com/images/2012/126058/2012080520490863.jpg
  点击Next,输入密码:
http://pic002.cnblogs.com/images/2012/126058/2012080520500614.jpg
  点击Next:
http://pic002.cnblogs.com/images/2012/126058/2012080520512251.jpg
  一路点击Next和Finish,直到出现“The import was successful”:
http://pic002.cnblogs.com/images/2012/126058/2012080520530036.jpg
  此时,打开网站链接https://localhost,发现锁形安全标志已出现:
http://pic002.cnblogs.com/images/2012/126058/2012080518594349.jpg
  全文完

页: [1]
查看完整版本: 在IIS7.5上配置Https,SSL