【http转https】其之二:申请Let's Encrypt颁发SSL证书

【http转https】其之二:申请Let‘s Encrypt颁发SSL证书

文:铁乐猫
2017年1月12日

申请Let‘s Encrypt颁发SSL证书

由 ISRG(Internet Security Research Group,互联网安全研究小组)提供服务, ISRG 来自于美国加利福尼亚州的一个公益组织。Let‘s Encrypt 得到了 Mozilla、Cisco、Akamai、Electronic Frontier Foundation 和 Chrome 等众多公司和机构的支持,发展十分迅猛。

对于域名所有权的验证,支持两种方式:放置临时文件进行验证、查询 whois 给域名所有人发邮件验证

需要注意的是它一次只会颁发3个月有效期的证书,到期之后需要自己再续上 (仍然是免费的),维护起来比较麻烦,不过可以使用工具去自动续期。 另外它不支持通配符泛域名 (*.demo.com),所以在申请认证的时候,要把域名都 301 跳转到证书里包含的域名上,不然浏览器会弹证书错误。

windows在Let‘s Encrypt获取证书,也就是IIS的站点获取SSL证书,一般使用certify这个自动化工具会方便很多。
另外常见的一种就是用工具 letsencrypt-win-simple
下载最新版 letsencrypt-win-simple:
链接不好找:https://github.com/Lone-Coder/letsencrypt-win-simple/releases
最新版是:letsencrypt-win-simple.V1.9.1.zip。在服务器解压 letsencrypt-win-simple.V1.9.1 ,解压后运行lessencrypt.exe。
会弹出一个cmd窗口,第一次运行会让你先填一个邮箱地址。用于更新失败时邮件通知你。

输入email后,还会再问你同意与否,后面列出的一个网址,看pdf(估计就是协议),那必须得填Y阿。

W - 生成一个证书并通过 WebDav 来进行安装
F - 生成一个证书通过FTP、FTPS安装。
M - 通过配置手动生成证书
A - 给 IIS 当前已经发布的所有网站各自部署上对应的证书
会自动替你扫描出IIS上的站点,让你选择,一般选M手动获取站点证书。

这样接下来就是填入host name 站点主机名,web root 网站的根目录。
letsencrypt-win-simple.V1.9.1 会自动生成临时文件并放到网站根目录,然后 Let‘s Encrypt 服务器会访问这个文件, 用于验证这个网站是否属于你。

如果验证不通过,是因为 IIS 需要修改一些配置, 验证通过后会实时颁发证书,并且会自动把证书添加到服务器中,然后直接在 IIS 中进行HTTPS部署即可。
除了直接运行letsencrypt程序来交互操作,还可以在CMD上敲命令去单条命令完成,例如:
部署单个域名
输入以下命令
letsencrypt.exe --accepttos --manualhost 你的域名 --webroot 你的网站物理路径(wwwroot路径)

除了用官方自带的命令行工具外,还有一个第三方的更好用的图形界面下的工具:
一个可以自动续订Let‘s Encrypt颁发证书的 GUI 软件,叫做 certify
作用是可以自动配置、创建和自动续订证书,并且到快要续订的时候会自动发邮件给你。
首先先去 官网下载 certify ,然后在服务器上安装。
官网下载链接:http://certify.webprofusion.com/
注意,certify 要求以管理员权限运行,并且要求服务器安装了 PowerShell 4.0。
PowerShell 4.0 默认集成在 Windows Management Framework 4.0 中,而 Windows Management Framework 4.0 又依赖 Microsoft .NET Framework 4.5 。
可以查看下自己的服务器是否具备这些环境,然后按需更新即可。更新之后安装 certify 运行。


点击 New Contact 按钮,创建一个联系人,这个联系人会在证书快要过期的时候收到续订证书的提醒邮件,输入email 即可。
(注:第一次启动程序的时候也会弹出对话框让你填这个新联系人)


点击 New Certificate,certify 会自动扫描 IIS 中的站点,选择你要申请证书的域名。

[](http://images2015.cnblogs.com/blog/965728/201701/965728-20170120142406406-684809033.jpg
点击 Request Certificate 获取证书,certify 会在网站根目录下生成 .well-known 文件夹,并且会自动配置 web.config,自动验证证书。

验证完成后会弹窗显示证书已安装。就可以去看自己已经申请的证书详细信息了。


且 IIS 中也已经自动给你配置好了证书,这点是省了不少事。

如果发现证书没有续订或者没有生效,点击一下 Auto Apply 就可以了。
最后记得把网站根目录下的 .well-known 目录给删掉,以保持网站目录干净。

用certify这个工具简直不能太赞了,图形化界面比letsencrypt自身的官方脚本工具直观,又会在IIS上自动替你绑定443,还带自动续订和邮件通知的功能。

【http转https】其之二:申请Let's Encrypt颁发SSL证书

时间: 2024-10-26 14:44:39

【http转https】其之二:申请Let's Encrypt颁发SSL证书的相关文章

申请Let's Encrypt免费SSL证书

沃通及期收购的startssl被封,用不了,只能申请Let's Encrypt免费证书,我就不科普了,免费是免费,时效只有3个月,就得更新,就是这样,喵 到下面的网站,一下脚本,可以助力你快速申请证书 https://certbot.eff.org/ 下面以centos 6 - nginx 为例: 打开https://certbot.eff.org/ 选好系统版本,即下面的URL https://certbot.eff.org/#centos6-nginx 1.下载 wget -O /sbin/

手把手教你申请腾讯云免费SSL证书

SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,由于公钥加密的密码只能被在申请证书时生成的私钥解密,因此浏览器在生成密码之前需要先核对当前访问的域名与证书上绑定的域名是否一致,同时还要对证书的颁发机构进行验证,如果验证失败浏览器会给出证书错误的提示.SSL证书对于网站数据的安全传输起到至关重要的作用. 现在很多提供SSL证书的商家,各品牌SSL证书价格与几千到十几万不等,腾讯云作为

HTTPS那些事(二)SSL证书

转自:http://www.guokr.com/post/116169/ 从第一部分HTTPS原理中, 我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码.在握手过程中,网站会向浏览器发送SSL证书,SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,由于公钥加密的密码只能被在申请证书时生成的私钥解密,因此浏览器在生成密码之前需要先核对当前访问的

HTTPS那些事(二)SSL证书(转载)

原创地址:http://www.guokr.com/post/116169/   从第一部分HTTP工作原理中,我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码.在握手过程中,网站会向浏览器发送SSL证书,SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,由于公钥加密的密码只能被在申请证书时生成的私钥解密,因此浏览器在生成密码之前需要先核对当

StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全

StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全 一.StartSSL个人证书登录申请 1.StartSSL官网: 1.官方首页:http://www.startssl.com/ 2.控制面板:http://www.startssl.com/?app=12 2.第一次用StartSSL,先进入控制面板,先点击注册. 3.然后是填写你的个人基本信息,以部落的经验,主要地址填写详细,StartSSL会根据你的IP自动填入你所在的地址. 4.提交后你的邮箱会收到一个验证码. 5.用这

HTTPS那些事(二)SSL证书(转自果壳)

http://www.guokr.com/post/116169/ 此帖子内容转载自我的日志.原文链接:http://www.guokr.com/blog/116169/ 从第一部分HTTPS原理中,我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码.在握手过程中,网站会向浏览器发送SSL证书,SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,

Nginx配置SSL证书部署HTTPS网站

一.什么是 SSL 证书,什么是 HTTPSSSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:1.数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听:2.用户可以通过服务器证书验证他所访问的网站是否真实可靠. HTTPS 是以安全为目标的 HTTP 通道,即 HTTP 下加入 SSL 加密层.HTTPS 不同于 HTTP 的端口,HTTP默认端口为80,HTTPS默认端口为44

LAMP环境添加SSL证书,使网站变成HTTPS加密传输

一 简介 目前国内大部分网站都是采用的HTTP协议,也就是明文传输数据,与此同时SSL证书最近几年逐渐开始在国外普及.安装SSL证书之后数据就可以进行加密传输,在浏览器中看到的效果就是:在地址栏前面带有一个绿色小锁,同时URL地址是以HTTPS开头的 下面我将简单介绍如果在LAMP环境(Linux+Apache+MySQL+PHP)下添加SSL证书的详细步骤: 二 获取证书 付费的证书有很多,这里就不说了.关于免费证书据我了解的就有:沃通免费SSL证书以及StartSSL免费SSL证书.如果想要

(二)、SSL证书

从第一部分HTTPS原理中,我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码.在握手过程中,网站会向浏览器发送SSL证书,SSL证书和我们日常用的身份证类似,是一个支持HTTPS网站的身份证明,SSL证书里面包含了网站的域名,证书有效期,证书的颁发机构以及用于加密传输密码的公钥等信息,由于公钥加密的密码只能被在申请证书时生成的私钥解密,因此浏览器在生成密码之前需要先核对当前访问的域名与证书上绑定的域名是否一致,同时还要对证书的颁发机构进行验证,如果验证失