简单⼏步让⽹站⽀持https,windowsiis下https配置⽅式
1.https证书的分类
SSL证书没有所谓的"品质"和"等级"之分,只有三种不同的类型。
SSL证书需要向国际公认的证书证书认证机构(简称CA,Certificate Authority)申请。
CA机构颁发的证书有3种类型:
域名型SSL证书(DV SSL):信任等级普通,只需验证⽹站的真实性便可颁发证书保护⽹站;
企业型SSL证书(OV SSL):信任等级强,须要验证企业的⾝份,审核严格,安全性更⾼;
增强型SSL证书(EV SSL):信任等级最⾼,⼀般⽤于银⾏证券等⾦融机构,审核严格,安全性最⾼,同时可以激活绿⾊⽹址栏。
我们只要使⽤DV证书就可以了,⼀般来说我们申请到的免费ssl证书都是dv证书。
2.申请免费的证书
2.1 ⾃签名惹的祸
Ca证书必须要可信任的机构颁发才可以信任,⾃签名证书就是⾃⼰给⾃⼰签名,没有通过第三⽅CA机构颁发。浏览器默认添加了⼀些可信任的CA机构,都是通过国际Web Trust认证的。
如果你的CA证书不是这些浏览器⾥默认添加的可信任的CA机构签发的话,那么就会出现像12306这样的笑话。
2.2申请免费的DV证书
Let's Encrypt是国外⼀个公共的免费SSL项⽬,由 Linux 基⾦会托管,由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起,靠谱!
申请免费的证书可以参考这篇⽂章,⼯具和步骤都⾮常的完整,这⾥就不累述了
最后申请完之后iis的配置就是新建⼀个⽹站,其他都不⽤配置,就可以了,⽼的⽹站不要删除,如果要强制https访问的话可以再搜索其他的⽂章,这⾥不再展开
3.https⽹站安全验证
https已经可以访问了,但是https就⼀定是安全的吗,我们可以通过下⾯这个⽹站进⼀步检查你的⽹站的安全性,主要是从https的安全性去测试
可能⼀开始测试是个F,像我⼀开始测试就是个F,这是因为操作系统的默认设置⾥有很多不安全的设置,需要我们⼿动来配置修改。
可以仔细看下⾯的说明,没有开启TLS1.2 ,RC4已经过时了,Forward Secrecy⽀持的不好等等。
4.为了A+不断修改
这⾥⼤段的删除线是我⼀下午的⼼⾎,哪怕最后发现了powerShell脚本可以⼀次性完成上⾯所有的⼯作,你可以不看,但请尊重我的劳动
4.1 关闭SLL2和SSL3
到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols右键->新建->项->新建SSL 2.0,SSL 3.0
SSL 2.0和SSL 3.0 中间是有空格的
在SSL 2.0 和 SSL 3.0上分别右键->新建->项->新建Server, Client
在新建的Server和Client中都新建如下的项(DWORD 32位值),
DisabledByDefault 值1
Enabled 值0
总共8个
、
4.2 开启TLS1.0 1.1 1.2
还是在刚才的⽬录下⾯,新建3个TLS 1.0 ,TLS 1.1,TLS 1.2
然后分别在下⾯建⽴Client,Server
然后跟⼀样在每个⾥⾯建⽴下⾯的项(DWORD 32位值)
DisabledByDefault 值 0
4.3 关闭RC4
这⾥的步骤更复杂,但和上⾯⼤同⼩异,⽆⾮就是在注册表⾥创建项,设置键值。
但是做到这⾥,我发现最后⼀步的powerShell脚本把所有的事都做了。所以后⾯的步骤我们都省略吧
4.5 修改ssl配置设置
别的我就说,在这个ssl配置的时候我尝试了很多种Cipher Suites的配置⽅式,包括参考别⼈A+的⽹站上报告⾥的配置,⼀个⼀个复制出来,每次都要重启服务器,重新测试,花了好多时间,最后终于评价成为A-,剩下⼀个Forward Secrecy的问题,结果搜索到⼀份powershell的脚本,问题是⼀步⼀步处理的,没⽑病,但最后到⼀个脚本⼀次性解决了前⾯所有的问题,所以分享出来给⼤家,减少⼤家⾛弯路的时间
4.6 最后配置 Forward Secrecy
4.7 ⼀键配置的powershell脚本
Powershell脚本原⽂:
使⽤⽅法是,开始-》运⾏-》输⼊powershell,打开类似cmd窗⼝的命令⾏⼯具,然后直接复制脚本进去执⾏就ok了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223免费网站怎么申请
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
Copyright 2016, Alexander Hass
Version 1.7
-
Windows Version compare failed. Get-CimInstance requires Windows 2012 or later.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论