share facebook facebook2 twitter menu hatena pocket slack

2013.09.13 FRI

SSL証明書(HTTPS)の有効性をチェックをするNagiosプラグイン

鈴木 宏康

WRITTEN BY鈴木 宏康

スズキです。

表記の件、実体は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

本件、証明書の有効期限もチェックできたらいいかもしれません。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。