APNS(Apple Push Notification Service)の証明書の有効期限をZabbixを使用して監視したときに備忘録。
①スクリプトは大体こんな感じ。ポイントはopensslコマンドで有効期限を表示させて取得する。
openssl x509 -noout -text -
in
${KEYFILE}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#!/bin/bash
if
[ $ #
-ne 2 ]; then
echo
"apns_check [ENV] [GameID]"
1>&2
exit
1
fi
ARGV1=$1
ARGV2
=$2
KEYFILE= "/XXX/XXX/XXX/certs/${ARGV1}/${ ARGV2}/apns.pem"
EXPIREDATE=`openssl x509 -noout -text - in
${KEYFILE} |
grep
"Not After"
|
sed
-e
"s/ Not After : //g" `
FROMDATE=` date
+%s`
TODATE=` date
+%s -d
"${EXPIREDATE}" `
REMAINDATE=` expr
\( ${TODATE} - ${FROMDATE} \) / 60 / 60 / 24`
echo
${REMAINDATE}
exit
0 |
②Zabbix AgentのUserParameterを利用して監視を設定。
1
2
|
# APNS Check
UserParameter=apns.check[*], /opt/batch/apns/apns_check .sh
$1 $2 |
③アイテムを登録