申请Let's Encrypt通配符HTTPS证书(转)
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
首先聲明,轉(zhuǎn)載自:https://my.oschina.net/kimver/blog/1634575,感謝原創(chuàng)作者,我修改了部分內(nèi)容以及Nginx的配置。搭建過程從頭run了一遍
閱讀目錄:
1. 摘要
2. 使用 acme.sh 的方式
3. 配置Nginx
4. 注意事項及說明
1. 摘要
????摘要: 申請Let's Encrypt通配符HTTPS證書
????Let's Encrypt 發(fā)布的 ACME v2 現(xiàn)已正式支持通配符證書,接下來將為大家介紹怎樣申請,Let's go.
注 本教程是在centos 6下操作的,其他Linux系統(tǒng)大同小異。
? ? Nginx的搭建:https://my.oschina.net/u/3209432/blog/1581391
? ? Nginx配置Https: https://my.oschina.net/u/3209432/blog/1595521
2. 使用 acme.sh 的方式
? ??2.1 獲取acme.sh
????[root@loubobooo ~]# curl https://get.acme.sh | sh如下圖所示安裝成功
? ? 1.1 執(zhí)行以下命令
????[root@loubobooo ~]# source ~/.bashrc [root@loubobooo ~]# acme.sh2.開始獲取證書
acme.sh強大之處在于,可以自動配置DNS,不用去域名后臺操作解析記錄了,我的域名是在阿里注冊的,下面給出阿里云解析的例子,其他地方注冊的請參考這里自行修改:傳送門
請先前往阿里云后臺獲取App_Key跟App_Secret?傳送門,然后執(zhí)行以下腳本
# 替換成從阿里云后臺獲取的密鑰 [root@loubobooo ~]# export Ali_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"[root@loubobooo ~]# export Ali_Secret="jlsdflanljkljlfdsaklkjflsa" # 換成自己的域名和二級域名[root@loubobooo ~]# acme.sh --issue --dns dns_ali -d loubobooo.com -d *.louboboo.com這里是通過線程休眠120秒等待DNS生效的方式,所以至少需要等待兩分鐘
注:這里會生成4個文件
[Sat Mar 17 13:59:22 CST 2018] Your cert is in ?/root/.acme.sh/loubobooo.com/xxx.com.cer?
[Sat Mar 17 13:59:22 CST 2018] Your cert key is in ?/root/.acme.sh/loubobooo.com/xxx.com.key?
[Sat Mar 17 13:59:22 CST 2018] The intermediate CA cert is in ?/root/.acme.sh/xxx.com/ca.cer?
[Sat Mar 17 13:59:22 CST 2018] And the full chain certs is there: ?/root/.acme.sh/xxx.com/fullchain.cer?
到了這一步大功告成!
第一次成功之后,acme.sh會記錄下App_Key跟App_Secret,并且生成一個定時任務(wù),每天凌晨0:00自動檢測過期域名并且自動續(xù)期。對這種方式有顧慮的,請慎重,不過也可以自行刪掉用戶級的定時任務(wù),并且清理掉~/.acme.sh文件夾就行
3. 配置Nginx
????[root@loubobooo ~]# vim /usr/local/nginx/conf/vhost/download.xxx.com.conf?#將所有http協(xié)議內(nèi)容重定向到https協(xié)議
server {
? ? listen 80;
? ? server_name download.xxx.com;
? ? rewrite ^ https://$server_name$request_uri? permanent;
}
#https協(xié)議
server {
? ? listen 443;
? ? server_name download.xxx.com;
? ? ssl on;
? ? ssl_certificate ?/root/.acme.sh/xxx.com/fullchain.cer;
? ? ssl_certificate_key ?/root/.acme.sh/xxx.com/loubobooo.com.key;
? ? ssl_trusted_certificate /root/.acme.sh/xxx.com/ca.cer;
? ? autoindex on;
? ? access_log ?/usr/local/nginx/logs/access.log combined;
? ? error_log ?/usr/local/nginx/logs/error.log;
? ? index index.html index.htm index.jsp index.php;
? ? #error_page 404 /404.html;
? ? location / {
? ? ? ? root /ftpfile/setup;
? ? }
}
4. 注意事項及說明
? ? 注意事項:
? ? ????配置Nginx時,需要在Nginx編譯時添加ssl模塊
????說明:本次使用
???????操作系統(tǒng):CentOS 6.8?64位
? ?????Nginx版本:1.13.9
轉(zhuǎn)載于:https://my.oschina.net/loubobooo/blog/1637837
總結(jié)
以上是生活随笔為你收集整理的申请Let's Encrypt通配符HTTPS证书(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: del rd命令行下删除文件不需要确认
- 下一篇: JDK1.8源码(二)——java.la