]> gitweb.morketsmerke.org Git - backup.git/commitdiff
Dodanie skryptu lereminder.
authorxf0r3m <jakubstasinski@protonmail.com>
Sun, 15 Jun 2025 16:30:35 +0000 (16:30 +0000)
committerxf0r3m <jakubstasinski@protonmail.com>
Sun, 15 Jun 2025 16:30:35 +0000 (16:30 +0000)
lereminder [new file with mode: 0644]

diff --git a/lereminder b/lereminder
new file mode 100644 (file)
index 0000000..6f5df34
--- /dev/null
@@ -0,0 +1,33 @@
+#/bin/bash
+
+FQDN=$1;
+hostnames=$(openssl s_client -ign_eof -connect ${FQDN}:443 2>/dev/null | openssl x509 -noout -ext subjectAltName | grep 'DNS' | sed 's,\ ,\n,g' | grep 'DNS' | cut -d ":" -f 2);
+expDate=$(openssl s_client -connect ${FQDN}:443 2>/dev/null | openssl x509 -noout -enddate | cut -d "=" -f 2)
+ut_expDate=$(date --date="$expDate" +%s);
+ut_now=$(date +%s);
+
+days=$(($(expr $ut_expDate - $ut_now) / 86400))
+if [ $days -eq 1 ]; then
+  days_msg="1 dzień";
+else
+  days_msg="${days} dni";
+fi
+
+if [ $days -le 7 ]; then
+  cat > /tmp/lereminder.html << EOF
+<p>Dobiega końca okres ważności (pozostało: <b>${days_msg}</b>) certyfikatu dla domeny: ${FQDN}.</p>
+<p>Zaloguj się do serwera i odnów certyfikat.</p>
+<p>Ten certyfikaty jest również wykorzystywany dla poniższych dodatkowych domen:
+<ul>
+EOF
+
+  for name in $hostnames; do
+    echo "<li>${name}</li>" >> /tmp/lereminder.html
+  done
+
+  cat >> /tmp/lereminder.html << EOF
+</ul>
+</p>
+EOF
+ cat /tmp/lereminder.html | mutt -e "set content_type=text/html" -s "Ważność certyfikatu Let's Encrypt dla ${FQDN}" mail@example.com
+fi