网络上关于如何签发免费SSL证书的博文一大片,但是真正操作起来的能让新手不迷惑的却很少,很多操作步骤受限于国内无法访问外网的阻碍,导致无法真正实施成功。 实际上,关于申请免费SSL证书主要涉及两大部分: 第一,如何快速申请到一个免费的DV证书(通常免费的证书都是DV证书,DV证书对于个人或者测试用途足够了)。 第二,成功申请到证书之后如何配置部署,使得网站可以通过HTTPS访问。
上面两步可以使用脚本工具自动化实现,也可以手动完成。 如下示例将以完全手动的方完成SSL证书申请和部署(基于nginx)。
申请SSL证书
再经历了仔细阅读Let’s Encrypt手册依然没有成功完成SSL证书申请的煎熬之后,果断放弃。 最后在FreeSSL.cn非常直观简单地就完成了免费SSL证书的签发。 个人觉得,在FreeSSL.cn上签发SSL证书真的非常方便,热别适合新手使用。 首先,进入到FreeSSL.cn页面,选择支持多域名和通配符的“5lSSL”。
跳转到51ssl的页面,此时需要注册一个账户并登录。 选择“订单管理”->“证书申请”。
选择“非商业证书”->“TrustAsia 免费域名型通配符SSL证书”,点击“购买”按钮。
说明:在这里选择什么类型的证书,完全根据自己的需求而定。由于我需要使用多个子域名证书,所以选择了“TrustAsia 免费域名型通配符SSL证书”。
来到“申请 TrustAsia 免费域名型通配符SSL证书”的操作界面。 填写好相关细心之后,点击“提交证书申请”按钮。
接下来最重要的一步就是“域名验证”,强烈建议使用“Email验证”方式,这样只需要在收到验证邮件之后鼠标点击就可以完成验证操作。 根据提示完成相关验证操作,证书的签发需要等待一会儿,不要着急,大约几分钟之后会收到证书签发成功的邮件。
在收到证书签发成功的邮件通知以后,再次来到管理后台界面,选择“订单管理”,点击订单编号旁边的“快速查看”,在弹出界面中点击“下载证书”,弹出证书下载界面。
在证书下载弹出界面中,首先选择部署SSL证书的服务器,然后再选择“下载”,或者将证书文件发送到邮箱。
以部署到nginx的证书为例,下载得到一个压缩包,包含2个文件:
- “.pem文件”:SSL证书文件
- “.key文件”:SSL证书私钥文件
部署SSL证书
注意:在部署SSL证书之前,先要确保域名已经在添加了解析,并且可以通过http协议使用域名访问到目标网站。
以在nginx中部署SSL证书为例,将通过上述方式签发得到的SSL证书上传到nginx服务器,在nginx配置文件中添加配置:
代码语言:javascript复制server {
listen 80;
server_name www.zhangsan.org.cn;
# 访问http时强制跳转到https
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443 ssl;
server_name www.zhangsan.org.cn;
root /data/www;
index index.html index.htm;
access_log /dev/null;
ssl_certificate /data/ssl/zhangsan.org.cn_cert_chain.pem; # 证书文件路径
ssl_certificate_key /data/ssl/zhangsan.org.cn_key.key; # 证书私钥文件路径
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
}
至此,签发和部署免费SSL证书的操作过程完毕!
【参考】 https://freessl.cn/ https://www.jianshu.com/p/1a792f87b6fe Let's Encrypt 证书申请及配置 https://github.com/acmesh-official/acme.sh/wiki/Run-acme.sh-in-docker https://www.laoliang.net/jsjh/technology/8898.html 2021年阿里云最新新手详细申请免费SSL(https)证书图解方法(流程) https://blog.csdn.net/jiuyuefenglove/article/details/108625400 SSL证书申请最详细教程 https://zhuanlan.zhihu.com/p/174755007 33种免费获取SSL证书的方式 https://blog.csdn.net/ithomer/article/details/78075006 十大免费SSL证书:网站免费添加HTTPS加密 https://blog.fundebug.com/2018/07/06/apply-lets-encrypt-certificate/ 教你快速撸一个免费HTTPS证书 https://www.awaimai.com/2218.html 使用Let's Encrypt为网站加上HTTPS https://coolshell.cn/articles/18094.html 如何免费的让网站启用HTTPS https://yeaheo.com/post/nginx-lets-encrypt-ssl-certificate-config/ 免费申请 Let's Encrypt SSL 证书 https://blog.sprov.xyz/2019/04/25/apply-ssl-certificate-at-freessl/ 在 FreeSSL 上为你的域名申请免费 SSL 证书