最近官网需求部署个SSL证书,一番操作后把借鉴的网站与实际过程记录下来
Let's Encrypt,官网是https://letsencrypt.org/,它是一个由各大公司赞助的公益组织;
有趋势有需求,自然也有免费可用。免费的SSL证书中,首推就是Let's Encrypt。
1 下载一个letsencrypt-win-simple的工具
这个地址有最新的版本和source: https://github.com/Lone-Coder/letsencrypt-win-simple/releases
也可以用我云盘地址,直接下载v1.9.6的版本:http://pan.baidu.com/s/1nveHTlJ
注:我用的时候本打算下最新的版本v1.9.12.0下来用,但他提示 Do not use this version(不要使用此版本),我用了下面的版本v1.9.11.2,出现了一个问题,之后就用v1.9.6了,其实应该也可以用的,但我第一次用,失败一次后,感觉还是按作者流程来走先试成功再说,但其实来说v1.9.11.2也是可以用的,只不过需要解决一些问题。这个流程是v1.9.6的,新版的有些不同,可参考
2 下载完之后解压运行里面的letsencrypt.exe打开控制台窗口,第一次运行会提示你输入一个邮箱以供后续使用
输入一个可用邮箱回车即开始注册,并问你是否同意协议
输入Y回车,邮箱注册完之后,程序会自动获取当前服务器部署的所有网站,如下:
按N 再按1, 再选择要生成ssl的域名项即可,最后配置自动更新程序,选择y
生成的证书在C:UsersAdministratorAppDataRoamingletsencrypt-win-simplehttpsacme-v01.api.letsencrypt.org下(这个好像不在,我没找到目录)
注意: 1 生成的计划任务的执行程序默认是生成证书时的letsencrypt.exe的路径,请到管理工具-计划任务查看相应任务属性,确认action的letsencrypt.exe路径对不对,如果移动到 其它地方了也需要进行相应修改,否则会执行失败
2 iis需要配置mime类型:扩展名:. mime类型:application/octet-stream,添加无后缀的文件访问 ,否则验证不通过,跟上面2.10 提到的是一样的;
3 由于Let's Encrypt免费SSL证书只有90天的有效期,过期需要更新,该程序会生成一个计划任务,每天上午9点钟运行检查过期的证书并更新。所以生成完成证书会提示你 是不是需要指定用户运行刷新证书的计划任务(会显示下次过期的时间),选择Y,输入相应的系统登录用户名和密码即可。
运行完成后,IIS中你所要生成的网站,会绑定一个https 443端口。我想要启动网站,弹框,另一程序正在占用。最后发现是SVN占用了端口,把SVN的端口改掉。随后又发现一个问题,我绑定的http网址无法正确指向,参考网上资料解决了。