不过给网站加上‘安全锁标志’确实是一件非常酷的事儿
好久没看更新博客了,一直忙于手里的项目,闲暇时间也想把更多的尽力放在基础知识上。
给自己的网站加上https访问早就有这种想法,一直到昨天才去实践。
https的好处就不必多说了,现在好多浏览器对http网站会有不安全网站的提示,这就让人很无语,即使你的网站很安全或者没必要用到https,但是这种不安全提示会给用户带来很不好的体验。这样看来https认证是不得不做的事儿了。不过给网站加上‘安全锁标志’确实是一件非常酷的事儿。
https认证有付费和免费服务两种,企业级别的网站可选择付费认证,阿里的ssl认证起步价1000以上,比一台入门型的服务器还贵。免费的存在一些限制,配置上也很麻烦,不然自己也不会拖的这么久。
https进入配置介绍阶段
1.配置这个命令需要满足两个基本条件,对域名要有控制权,对服务器要有控制权。
2.本次配置的服务器环境是阿里云的centos平台下的nginx服务器。
3.选择Let's Encrypt提供的数字认证证书,采用其官方提供的Certbot工具进行配置:https://certbot.eff.org/ 。这很好有官方的文档,里面有针对不同平台下的不同服务器对应的配置命令,参照其配置命令基本上也八九不离十。
4.下载工具certbot
wget https://dl.eff.org/certbot-auto
chmod a+x ./certbot-auto
5.配置虚拟主机验证域名使用权
location ^~ /.well-known/acme-challenge/ {
default_type "text/plain";
# root 和你的实践的根目录保持一致
root /home/chenxing/www/qiusuoweb/;
}
location = /.well-known/acme-challenge/ {
return 404;
}
6.重启nginx使配置生效
nginx -s reload
7.生成认证
./certbot-auto certonly --webroot -w /home/chenxing/qiusuoweb -d www.qiusuoweb.com
很多问题会出现在这个过程中,有有对应的问题提示,按照提示去解决问题就可以。最后生成fullchain.pem和privkey.pem两个秘钥表示证书生成成功。
8.配置虚拟主机端口以及载入证书
listen 443 ssl;
server_name qiusuoweb.com www.qiusuoweb.com;
index index.html index.htm index.php;
root /home/chenxing/qiusuoweb/;
ssl_certificate /etc/letsencrypt/live/www.qiusuoweb.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.qiusuoweb.com/privkey.pem;
9.重启nginx使其配置生效
nginx -s reload
10.最终效果图
如果https配置成功后,但是没有出现安全锁的绿色标志,那么你就要清理本次访问的网页中的http链接了,这里不仅仅是加载的资源有些是http,连出站的链接是http也是不会出现安全锁的标志的,可以通过浏览器查看源代码的方式看你网站有哪些还是http链接,然后去处理就好了。
兼容http访问
server {
listen 80;
server_name www.qiusuoweb.com;
return 301 https://$server_name$request_uri;
}
重启nginx使其配置生效
自动更新证书
Let's Encrypt提供的证书只有三个月有效期,可以通过一下命令自动更新配置。
./certbot-auto renew --quiet --no-self-upgrade
以上就是配置的基本流程,再操作的过程中由于每个人环境的不同,肯定会出现各种类型的错误,比如有的人没有安装ssl模块啊、出现DNs解析错误等等,这些问题只能根据遇到的具体问题才能具体分析。出现问题可以google或者上官方社区里寻找解决问题的办法。
除特别注明外,本站所有文章均为作者原创。 或分享自己的编程经验,或探讨工作中的问题,或聊以人生趣事。 转载请注明出处来自 https://www.qiusuoweb.com/134.html
运营天数
总访问量
文章数量
-
-
-
交流群:157451741
新浪微博:草莽兴
发布评论