From 21dfe488c0a8c3bf906f8751bf6bf751a2c04d49 Mon Sep 17 00:00:00 2001 From: Olivier Mehani Date: Fri, 5 Aug 2016 13:13:28 +1000 Subject: [PATCH] [ssl_] Allow to specify ports other than HTTPS Signed-off-by: Olivier Mehani --- plugins/ssl/ssl_ | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) mode change 100644 => 100755 plugins/ssl/ssl_ diff --git a/plugins/ssl/ssl_ b/plugins/ssl/ssl_ old mode 100644 new mode 100755 index 7f02b99d..c41e7b6e --- a/plugins/ssl/ssl_ +++ b/plugins/ssl/ssl_ @@ -28,7 +28,12 @@ Copyright (C) 2013 Patrick Domack . $MUNIN_LIBDIR/plugins/plugin.sh -SITE=${0##*ssl_} +ARGS=${0##*ssl_} +SITE=${ARGS/:*/} +PORT=${ARGS##*:} +if [ "$PORT" = "$SITE" ]; then + PORT=443 +fi case $1 in config) @@ -46,7 +51,7 @@ case $1 in ;; esac -cert=$(echo "" | openssl s_client -CApath /etc/ssl/certs -servername "${SITE}" -connect "${SITE}:443" 2>/dev/null); +cert=$(echo "" | openssl s_client -CApath /etc/ssl/certs -servername "${SITE}" -connect "${SITE}:${PORT}" 2>/dev/null); if [[ "${cert}" = *"-----BEGIN CERTIFICATE-----"* ]]; then echo "${cert}" | openssl x509 -noout -enddate | awk -F= 'BEGIN { split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec", month, " "); for (i=1; i<=12; i++) mdigit[month[i]] = i; } /notAfter/ { split($0,a,"="); split(a[2],b," "); split(b[3],time,":"); datetime=b[4] " " mdigit[b[1]] " " b[2] " " time[1] " " time[2] " " time[3]; days=(mktime(datetime)-systime())/86400; print "expire.value " days; }'