スズキです。
表記の件、実体はcURLです。
cURLは問題ない証明書だと下記のように正常に実行できますが、
# curl -s https://ssl.suz-lab.com; echo $?
INDEX
0
問題がある証明書だと下記のように終了コードが0以外となります。
# curl -s https://d3hhpvahx0p2rw.cloudfront.net; echo $?
51
ということで、Nagiosのプラグインを下記のように作ってみました。
#!/bin/sh
. `dirname $0`/utils.sh
WARN=0
CRIT=0
while getopts c:w:h: OPTNAME; do
case $OPTNAME in
w)
WARN=$OPTARG
;;
c)
CRIT=$OPTARG
;;
h)
HOST=$OPTARG
;;
*)
echo "UNKNOWN: Usage"
exit $STATE_UNKNOWN
;;
esac
done
curl -s https://$HOST
CODE=$?
if [ $CODE -gt $CRIT ]; then
echo "CRITICAL CODE $CODE"
exit $STATE_CRITICAL
elif [ $CODE -gt $WARN ]; then
echo "WARNING CODE $CODE"
exit $STATE_WARNING
else
echo "OK CODE $CODE"
exit $STATE_OK
fi
echo "UNKNOWN: End"; exit $STATE_UNKNOWN
実行すると問題無い証明書の場合は下記のようになり、
# ./check_ssl -h ssl.suz-lab.com; echo $?
INDEX
OK CODE 0
0
問題ある証明書の場合は下記のようになります。
# ./check_ssl -h d3hhpvahx0p2rw.cloudfront.net; echo $?
CRITICAL CODE 51
2
本件、証明書の有効期限もチェックできたらいいかもしれません。