check_sslcerts/checksslcerts.sh aktualisiert

This commit is contained in:
2025-05-28 08:03:40 +02:00
parent f61b3beee1
commit cd5e55d44a

View File

@@ -1,7 +1,6 @@
#!/bin/bash
sites=$(cat sites.txt)
sites=$(cat /data/scripts/sslcerts/sites.txt)
export SITE_SSL_PORT="443"
@@ -9,8 +8,8 @@ for site in `echo $sites`
do
export SITE_URL=$site
notAfter=$(openssl s_client -connect ${SITE_URL}:${SITE_SSL_PORT} \
-servername ${SITE_URL} 2> /dev/null | openssl x509 -noout -dates | grep notAfter)
notAfter=$(/usr/bin/openssl s_client -connect ${SITE_URL}:${SITE_SSL_PORT} \
-servername ${SITE_URL} 2> /dev/null | /usr/bin/openssl x509 -noout -dates | grep notAfter)
not_after=$(echo "$notAfter" | cut -d= -f2-)
@@ -18,13 +17,38 @@ do
expiry_ts=$(date -d "$not_after" +%s)
diff_sec=$((expiry_ts - now_ts))
diff_days=$((diff_sec / 86400))
if [ "$diff_days" -lt 14 ]
then
echo "send warning für $site ($diff_days)"
url="https://msg.rproxy.conet-services.de/message.php"
# JSON-Daten für den POST-Request
json_data=$(cat <<EOF
{
"msg": "Certificate for $site is about to expire in $diff_days day(s)",
"subject": "Certificate expiration warning",
"x_conet_src": "conetadm@conlxscript1:/data/scripts/sslcerts/checksslcerts.sh",
"from_descr": "CONET Monitoring",
"from_email": "noreply@conet-services.de",
"to_email": "help@conet.de",
"reply_mail": "support-con@tasks.conet.de"
}
EOF
)
# Senden der POST-Anfrage mit curl
response=$(curl -s -X POST $url \
-H "Content-Type: application/json" \
-d "$json_data"
)
fi
printf "%02d days" "$diff_days"
echo -n "@"
printf "%20s" "$not_after"
printf "%30s" "$not_after"
echo -n ":"
echo $site
echo "delete from sslcerts where cn='$site'" | mysql -u conetadm -p'Conet12#' -Dscripts
echo "INSERT INTO sslcerts (expiration, datestring, cn) VALUES ('$diff_days', '$not_after', '$site') ON DUPLICATE KEY UPDATE cn = VALUES(cn);" | mysql -u conetadm -p'Conet12#' -Dscripts
printf "%40s\n" "$site"
echo "delete from sslcerts where cn='$site'" | /usr/bin/mysql -u conetadm -p'Conet12#' -Dscripts
echo "INSERT INTO sslcerts (expiration, datestring, cn) VALUES ('$diff_days', '$not_after', '$site') ON DUPLICATE KEY UPDATE cn = VALUES(cn);" | /usr/bin/mysql -u conetadm -p'Conet12#' -Dscripts
done
done