10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DockerでLet's encryptを使う前には絶対に証明書のフォルダをマウントしろ!

Last updated at Posted at 2018-11-13

未踏ジュニアでのコミュニケーション基盤として採用しているMattermostはdocker-composeで動いている。その中でLets encryptを用いてhttps化している。
ある時メンテ中にサーバーを再起動した際に、急にSSLエラーによってサーバを起動しようとしてエラーが起きた。一見しがちなミスであるのに、大きな時間の損失にもなりうる今回の問題を紹介する。

週5証明書までのRate limitを超えないためにSSL証明書を永続化しよう

少なくともMattermostに関しては自身がlets encryptを用いたSSL証明書を発行できる機能がある。自前でWebサービスをホスティングする際にはhttps-portalなども用いられるだろう。
どちらもSSL証明書が勝手に出てくれて便利なのだが、コンテナを立ては壊してを繰り返したとき再度SSL証明書が発行される。
再度発行されるだけなのが待ち時間の問題なら大した話ではない。この証明書、同一ドメインに対して毎週5個までしか発行できないのだ。
マウントしていないSSL証明書が5回失われると、来週までhttpsとはサヨナラすることになってしまう。
このような理由でSSL証明書のフォルダをマウントして永続化を必ず行うことを推奨する。
 

5回ではないかもしれない

この5回という制限、XXX.AAA.YYY.comなら、完全に一致するXXX.AAA.YYY.comなら週5個まで。YYY.com全体に対して50回となる。YYY.comのサブドメインを管理している人が自分だけではない場合、その週はすでに何回か使われているかもしれない。
そういう場合はcrt.shで特定のドメイン以下の証明書がどれだけ発行されているかを見ることができる。

上のURLの%以下は自分のドメインに置き換えよう。

10
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?