ブログをTLS1.3対応にした
わーい。
といってもとりあえずこのブログだけなのだが(お察しください)。
去年TLS1.3の仕様が確定して、これに対応したOpenSSL1.1.1の正式版がリリースされ、最近やっとOSの安定版に取り込まれ始めたっぽい(2019/01/09現在)。Debianにはまだtestingにしか来てないようだが、Ubuntu 18.10(cosmic)には来ているので、これをベースにすれば何も考えずTLS1.3が使える。意味があるのかないのかで言うと、まったく無いと言ってよい。
公式のnginxイメージはDebainベースなので、これを ubuntu:cosmic
ベースに変えたらそのままビルドできて動いた(雑)。あとは ssl_protocols TLSv1.3 TLSv1.2;
としたらOKだった。
https://gist.github.com/naotaco/0b55e6297a11e99366c6a2ec96d11136
18.10はLTSではないのだが、まあdockerならいつでも新しいバージョンに乗り換えられるしいけるでしょ(慢心)。
定期的にイメージをリビルドしてコンテナ内のパッケージを更新しましょう。あとTLSの暗号スイートまわりの設定は適切にしましょう(プロフェッショナルSSL/TLSを読むとよさそう)。
その他参考
nginx + docker + Let’s Encrypt で割とはまった。Let’s Encryptは1時間に5回証明書の発行に失敗すると(DNS引けないとかドメイン確認用のファイルにアクセスできないなど)するとしばらく発行できなくなったりする。
docker内のnginxでLet’s Encryptから証明書を取得する: https://medium.com/@pentacent/nginx-and-lets-encrypt-with-docker-in-less-than-5-minutes-b4b8a60d3a71
あとついでにIPv6にも対応してるはず。