Bash脚本续订SSL证书
时间:2020-02-23 14:45:24 来源:igfitidea点击:
如何续订LetSencrypt证书
对于CentOS:
运行以下命令:
wget https://dl.eff.org/certbot-auto chmod a+x certbot-auto sudo mv certbot-auto /usr/local/bin/
如果我们有一个主动防火墙,则防火墙,在防火墙上打开HTTPS端口。
--- CentOS/Fedora/RHEL --- $sudo firewall-cmd --add-service https --permanent $sudo firewall-cmd --reload --- Debian/Ubuntu -- $sudo ufw allow https
要获取电子邮件警报,请安装mailx包:
--- CentOS/Fedora/RHEL -- $sudo yum -y install mailx --- Ubuntu/Debian -- $sudo apt-get -y install mailutils
Bash脚本在Tomcat上自动更新Letsencrypt SSL证书
使用脚本
既然我们拥有一切都集,请克隆此脚本,修改它,使其可执行并为其设置Cron作业。
首先克隆存储库:
git clone https://github.com/jmutai/tomcat-letsencrypt.git cd tomcat-letsencrypt
一旦克隆Repo或者下载脚本。
在我们可以在准备好执行脚本之前,我们需要定义几乎没有变量。
要编辑的文件是tomcat-letsencrypt-auterenew.sh和设置值所需的值:
TOMCAT_DOMAIN="example.com" TOMCAT_KEY_PASS="Password" CERTBBOT_BIN="/usr/local/bin/certbot-auto" EMAIL_NOTIFICATION="Hyman@theitroad"
其中:example.com被替换为Tomcat域名namepassword是Tomcat PasswordHyman @ OniToad是要使用的警报电子邮件地址。
然后保存更改,然后使脚本可执行并将其添加到路径:
$chmod +x tomcat-letsencrypt-autorenew.sh $sudo cp tomcat-letsencrypt-autorenew.sh /usr/local/bin
我们需要配置Tomcat Server.xml文件,如"配置Tomcat Server"部分在CentOS 7上安装Apache Tomcat的"配置Tomcat Server"部分,使用Letsencrypt SSL证书。
SSL文件应位于/etc/sl/${domain}上.JKS。
通过运行执行脚本:
sudo /usr/local/bin/tomcat-letsencrypt-autorenew.sh
如果我们不需要电子邮件通知。
我们可以跳过send_email_notification函数。
设置Cron工作
要每天运行Cron作业,请检查CERT是否应续订:
sudo crontab -e
添加:
30 3 * * * /usr/local/bin/tomcat-letsencrypt-autorenew.sh
这意味着它将每天凌晨3点运行。
如果证书未续签,则脚本将优雅地退出。