そーだいなるらくがき帳

そーだいが自由気侭に更新します。

日本PostgreSQLユーザ会のサイトのSSL証明書が毎年切れるので自動化して監視した話

f:id:Soudai:20170721011231p:plain

日本PostgreSQLユーザ会(以下 JPUG)が管理するサイトが毎年夏になるとSSL証明書の更新を忘れて期限切れになっていました。

日本PostgreSQLユーザ会 | 日本PostgreSQLユーザ会

JPUGはボランティアの団体だから責任は無いのですがJPUGの管理するサイトには優れた日本語ドキュメントなどがあり、影響範囲は決して少なくありません。

PostgreSQL 9.6.3文書

そのためこの度、JPUGの関連するサイトは全てLet's Encryptを利用する自動化を行いました。

knowledge.sakura.ad.jp

これにより、今後は3ヶ月に1回自動的にSSL証明書が更新されます。

自動化したけど失敗したらどうするの?

仰る通り、システムとは止まる物なので監視が必要です。
そこで今回はSaaSのサーバ監視サービスのMackerelを利用しました。
MackerelにはURL外形監視の機能があります。
とても簡単にSSL証明書の有効期限やサイトの死活監視が出来ます。

mackerel.io

これでSSL証明書の更新が失敗したり、サイトが落ちたらアラート通知が来ます。
またこの問題はAWS Certificate Managerでも起こります。
その場合も下記の例のように同じく簡単に監視できます。

tech.yayoi-kk.co.jp

でもお高いんでしょ?

OSSに貢献するコミュニティなどはOSSプランがあります。
こちらはMackerelのスタンダードプラン相当を無料で提供されます。
そのためもし同じような問題を抱えている方が居ましたらぜひMackerelをお試しください。
OSSプランなどの問い合わせから下記のリンク先から受付しています。

docs.google.com

おまけ

まさかこのときは はてな のしかも Mackerelチーム に来るなんて欠片も考えてなかったですね