430 文字
2 分
このサイトをTLS1.3に対応しました
概要
- いつからか、blog.teraren.comのTLS設定において、TLS1.3に対応していなかったので対応しました。
- TLS1.3は、1.2から大きくハンドシェイクシーケンスが変わっていたり、ちょっと古めの暗号化アルゴリズムが排除されていたりします。リビジョンが1つ上がっただけですが、裏の仕組みは大きな違いがあります。
変更
以下、nginxでの変更箇所です。
(ついでに、HSTSにも対応しました。)
diff --git a/nginx/global/ssl.conf b/nginx/global/ssl.confindex 9cd7f49..d74c2ed 100644--- a/nginx/global/ssl.conf+++ b/nginx/global/ssl.conf@@ -2,7 +2,7 @@ # (デフォルト) ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on;
-ssl_protocols TLSv1.2;+ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5;
# 2. Logjam攻撃対策@@ -12,3 +12,6 @@ ssl_stapling on; ssl_stapling_verify on; resolver 8.8.4.4 8.8.8.8 valid=300s; resolver_timeout 10s;++add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains; preload';+Qualysでチェック。A+になりました。


ちなみに、AWSはTLS1.3に未だ対応していないみたいです。
2020/6/14 定期チェック
まだA+なので大丈夫そうです。完了するまでに5分かかりました。。。

追記:2021/2/1
グレードがAに落ちてしまっていたので原因をチェック。

まず、HSTSが短すぎるアラートが出たので変更。
add_header Strict-Transport-Security 'max-age=86400; preload';add_header Strict-Transport-Security 'max-age=15552000; preload';A+に戻った。

また、対応する暗号アルゴリズムを変更しました。
ssl_ciphers HIGH:!aNULL:!MD5;ssl_ciphers 'HIGH !aNULL !eNULL !kECDH !DSS !MD5 !EXP !PSK !SRP !CAMELLIA !SEED !RSA !AES128 !ARIA128 !SHA1 !SHA256 !SHA384';暗号のパラメータに関してはこちらの記事を参考にしました。
その結果

追記 2023/6/22
TLS terminationをCloudflareで行うようにしたのでサーバの方でTLSの設定をする必要がなくなりました。HSTSの設定もCloudflareで行っています。
https://blog.teraren.com/2023/04/23/web-service-on-cloudflare/
その結果、A+を簡単に出すことができました。

このサイトをTLS1.3に対応しました
https://blog.teraren.com/posts/tls-13/