自動(dòng)續(xù)期
Let's Encrypt申請(qǐng)的證書會(huì)有三個(gè)月的有效期,可以到期前手動(dòng)續(xù)約,也可以自己寫定時(shí)腳本任務(wù)自動(dòng)續(xù)約。嫌手動(dòng)麻煩,就寫了個(gè)簡(jiǎn)單的續(xù)期腳本。
1、腳本

#/bin/sh
#續(xù)期 說(shuō)明:只用renew的話,會(huì)先檢查證書是否需要更新,大概是距離到期還有三天或者十幾天之內(nèi)才會(huì)執(zhí)行更新,否則會(huì)提示不需要更新。(昨天更新了證書,今天直接用renew,提示不允許更新)
#這里方便測(cè)試,增加參數(shù)--force-renew,能夠強(qiáng)制立即更新(但好像也會(huì)有檢查,時(shí)間會(huì)變短,比如我剛才更新過(guò)了,馬上再次執(zhí)行會(huì)報(bào)錯(cuò)并提示不需要更新)。
./certbot-auto renew --force-renew
#生成p12
cd /mnt/web/letsTemp && openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out fullchain_and_key.p12 -name tomcat -passin passyourPKCS12pass -passout pass:yourPKCS12pass
#移動(dòng)新生成的證書文件
cp /etc/letsencrypt/live/yourDomain/fullchain.pem /mnt/web/letsTemp
cp /etc/letsencrypt/live/yourDomain/privkey.pem /mnt/web/letsTemp
#生成jks文件
#備份并刪除原jks文件
mv /mnt/web/letsTemp/MyDSKeyStore.jks /mnt/web/letsTemp/MyDSKeyStore`date '+%Y-%m-%d'`.jks
cd /mnt/web/letsTemp && keytool -importkeystore -deststorepass yourKeyPass -destkeypass yourKeyPass -destkeystore MyDSKeyStore.jks -srckeystore fullchain_and_key.p12 -srcstoretype PKCS12 -srcstorepass yourPKCS12pass -alias tomcat
#重啟服務(wù)器
/mnt/web/tomcat/tomcat8/bin/restartup.sh

2、定時(shí)任務(wù)
腳本有了,還需要在linux中添加一個(gè)定期執(zhí)行腳本的任務(wù),這里用linux自帶的cron來(lái)處理這部分。
crontab -e
在打開(kāi)的編輯器中添加如下內(nèi)容(每個(gè)月1號(hào)凌晨3點(diǎn)更新)
0 0 3 * * sh /mnt/web/lets/ssl_auto_auth.sh >/dev/null 2>&1 &
@import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
posted on 2017-09-07 22:23
聶文龍 閱讀(293)
評(píng)論(0) 編輯 收藏 引用