visitor

0xB39D......13E2
04-19
0xB39D......13E2
04-19

SSL证书到期,邮件提醒脚本

获取证书的到期日期,算出剩余天数,当天数少于7天时,发送邮件提醒。

#!/bin/bash

DOMAIN="daism.io"
CERT_PATH="/root/daism/certbot/conf/live/$DOMAIN/fullchain.pem"

# 获取剩余天数
if [ ! -f "$CERT_PATH" ]; then
echo "证书不存在: $CERT_PATH"
   exit 1
fi

EXPIRE_DATE=$(openssl x509 -enddate -noout -in "$CERT_PATH" | cut -d= -f2)
EXPIRE_SECS=$(date -d "$EXPIRE_DATE" +%s)
NOW_SECS=$(date +%s)
DAYS_LEFT=$(( (EXPIRE_SECS - NOW_SECS) / 86400 ))

if [ "$DAYS_LEFT" -le 7 ]; then
echo -e "Subject: SSL 证书过期提醒\n\n ⚠ 证书 $DOMAIN 剩余 $DAYS_LEFT 天,将过期于 $EXPIRE_DATE " | msmtp 393909065@qq.com
fi