SSL証明書の期限の管理は
メール等で飛んでくるように設定していても忘れがちですね。
自動更新と思っていたものが、手動更新だったり、
外部のURLが証明書の期限切れていたり。。。
外部のものも合わせると
自分が担当しているプロジェクトは、
約10個ほど証明書の期限を管理する必要があったため、
監視できるサービスを調査していました。
というわけでmackerelでSSL証明書の期限の監視を
実装して行きましょう。
mackerelの料金
まず、mackerelの料金から。
プラン自体は2種類でFreeプランと
有料のStandardプランがあります。
初回登録から2週間まではTrialプランとして
Standardプランと同じ機能を使うことができます。
注意点として、
- Trialプラン終了後は自動的にFreeプランに変更
- SSL証明書の監視は、外形監視項目となるので、Freeプランでは使用できない。
今回のように、外形監視のみを行う場合でも、
外形監視が20個ごとに、スタンダードホスト1台とみなされるので
1833円/月かかってしまうことに注意です。
アカウント(組織)の設定
mackerelは、アカウント登録時にorganization(組織)を作成し、
内部の設定は組織ごとの設定になります。
モニタリング項目の設定
アカウント登録後は
monitor > 監視ルールを追加
でモニタリング項目を登録していきます。
今回、外形監視であるSSL証明書の監視を追加するため
「外形監視」を選択
監視ルールの詳細設定
監視対象のURLやhttpメソッドを入力していきます。
アラートの発生条件は、オプションを指定しない場合は
- ステータスコードが、4XX,5XXの場合
- 15秒以上のタイムアウト
- SSL証明書が不正の場合
になります。
以降は、オプション設定です。
- レスポンスタイムの閾値
- 通知の再送間隔
- リクエストヘッダ、ボディ
- 証明書の有効期限の閾値
などを設定できます。
ここまでで、
監視項目の設定が終わったので、
アラートの内容をslackに通知させるようにしましょう。
通知設定
Channelsで通知設定できますが、
アカウント作成時はDefaultで、Emailが設定されています。
Slackを追加する場合は、
右上の「通知グループ/通知チャンネルを追加」から
Slackを選択します。
ここで、通知チャンネルと
SlackのIncomming Webhooks URLを入力します。
上のURLから、Incomming Webhooks URLをコピペしてきてください。
また、通知する内容や、通知するイベントなどを設定できます。
ここまで設定すると、Slackで通知されます。
成功するとこんな感じ。
最後に
一通り、SSL証明書の監視をmackerelで設定していきましたが、
SSL証明書の監視だけでいくと1833円/月かかってしまう点と
証明書の監視はあくまでhttpリクエストのオプションとしてついている点が気になりますね。
とはいえ、説明やヘルプが日本語なので設定自体が簡単で
slackの設定まで含めて、30分以内で設定可能なのは嬉しいですね。