2.2 , 安装脚本
./acme.sh --install -m 266417775x@qq.com
-m 后面接邮箱名字
更高级用法见如下链接:
https://github.com/acmesh-official/acme.sh/wiki/How-to-install
https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E
在安装的路径中(默认为/root/.acme.sh/) 编辑account.conf 文件添加如下内容:
#LOG_FILE="/root/.acme.sh/acme.sh.log"
#LOG_LEVEL=1
#AUTO_UPGRADE="1"
#NO_TIMESTAMP=1
ACCOUNT_EMAIL='2664177758@qq.com'
UPGRADE_HASH='0a4500e85b9bce1ed1418c1ccff4f960ef519cc5'
SAVED_Ali_Key='xxxxx'
SAVED_Ali_Secret='yyyyyy'
USER_PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/data/midware/ali_jdk_8.16.17/bin'
主要是 SAVED_Ali_Key和 SAVED_Ali_Secret两项,邮箱在第二部安装脚本指定的邮箱会自动写入
acme.sh --issue --dns dns_ali -d tianyiluo.com -d blog.tianyiluo.com
上面默认生成的是ECC证书,如果想生成RSA证书需要加上 --keylength 2048(或4096)
阿里云的CDN或LBS都不支持 ECC证书上传,只能使用RSA证书
#!/bin/bash
##DESC:脚本获取公钥的过期时间,然后在到期15天前调用更新脚本更新证书,并把更新后证书替换原证书,从新reload nginx
# 设置 acme.sh 的路径和 home 目录
ACME_HOME="/root/.acme.sh"
CERT_DIR=tianyiluo.com_ecc
NGINX_CERT=/webdata/conf/ssl
NGINX_INSTALLED_DIR=/usr/local/nginx_new
cd $ACME_HOME
CERT_INVALID_TIME=$(openssl x509 -in $ACME_HOME/$CERT_DIR/fullchain.cer -noout -enddate|awk -F '=' '{print $2}')
CERT_UNIXTIME=$(date -d "$CERT_INVALID_TIME" +%s)
CURRENT_UNIXTIME=$(date +%s)
DIFF_UNIXTIME=$(echo "$CERT_UNIXTIME - $CURRENT_UNIXTIME"|bc)
if [ $DIFF_UNIXTIME -le 1296000 ];then
# 如果证书过期时间小于15天,执行 acme.sh 命令进行证书续签
./acme.sh --cron --home $ACME_HOME > /dev/null
cd $ACME_HOME/$CERT_DIR
\cp -rp fullchain.cer tianyiluo.com.key $NGINX_CERT
$NGINX_INSTALLED_DIR/sbin/nginx -s reload
fi
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!