目錄
官網:1. 普通方式
1.1 申請證書
1.2 部署證書
2 docker lemp 方式
-- 定義docker-compose.yml節
-- 站點虛擬機器conf
-- 命令列
-- 設定cron每月自動重啟nginx
- 參考
環境: lemp
說明: 讓網域名稱證書自動續簽, 普通方式與docker方式
安裝:
sudo wget -o - | sh
用crontab -l 可以看到已自動新增了乙個cronjob來定時檢查過期情況
法一:http檔案認證方式
- 做好網域名稱指向,設定好www.***.com.conf 裡面的路徑
server
location ~ \.php$
#include agent_deny.def;
}
- 申請
acme.sh --issue --nginx -d www.steph.icu -w /data0/projects/pp/www.steph.icu
法二: dns自認證方式:
-申請 (namecheap 網域名稱服務商)
export namecheap_username="name"
export namecheap_api_key="key"
export namecheap_sourceip="white list ip"
acme.sh --issue --dns dns_namecheap -d www.***.com
acme.sh --install-cert -d www.***.com \
--key-file /data0/server/auths/certs/www.***.com_key.key \
--fullchain-file /data0/server/auths/certs/www.***.com_chain.crt \
--reloadcmd "service nginx force-reload"
-修改 www.***.com.conf
server
#include agent_deny.def;
}
- 重啟nginx, ok
...}
#首次需要登記email
docker exec om-acme --register-account -m
#保管目錄
mkdir /data0/server/auths/certs/
#申請證書
docker exec om-acme --issue -d -w /data0/projects/bd/oym001/staging/src/mobile
#部署證書,位置與 docker-compose.yml相應
docker exec om-acme --install-cert -d --key-file /data0/server/auths/certs --fullchain-file /data0/server/auths/certs
#修改所屬
chown www-data:www-data /data0/server/auths/certs/ -rf
#重啟nginx
docker-compose restart nginx
# 因證書每三個月到期,更新後需重啟/過載nginx才起效,所以需設定乙個自動重啟cron 命令
# crontab -e
0 3 1 * * /usr/bin/docker restart om-nginx > /dev/null 2>&1
letsencrypt自動續簽
let s encrypt申請的證書會有三個月的有效期,如何更方便的續期呢?所謂letsencrypt續期,續期相當於重新申請一次證書,然後在伺服器端將過期的證書替換掉即可。由於這個免費的證書只有3個月的有效期,所以需要提前申請好新的證書,然後部署到伺服器上。一般情況下在自己伺服器部署申請let s...
kubeadm證書到期自動續簽
bin bash bin kubeadm alpha certs renew all cd cp root kube config root kube bak config date f 備份原來的檔案 bin cp etc kubernetes admin.conf root kube confi...
使用certbot自動續簽ssl證書
安裝完成在命令列執行certbot help檢視是否安裝成功 使用手動方式申請證書 certbot certonly preferred challenges dns manual d xx.xx.net server preferred challenges dns dns認真菜支援泛網域名稱 m...