操作
機能 #4
未完了Redmine Admin さんが4日前に更新
SSL証明書設定に関する会話¶
質問¶
自己証明書だと保護されていない通信ってでてしまうの?
回答¶
はい、自己証明書を使用する場合、ブラウザには「保護されていない通信」や「接続が安全ではありません」といった警告が表示されることがあります。
しかし、今回の設定では自己証明書ではなく、Let's Encrypt(認証局)によって発行された正規のSSL証明書を使用しています。Let's Encryptは無料で利用できる信頼された認証局であり、この証明書はブラウザに信頼されています。
正しくセットアップされていれば、call2arm.comとdev.call2arm.comのどちらも「保護された通信」として表示されるはずです。dev.call2arm.comについては、ポート8443を使用しているため、URLに明示的にポート番号を含める必要があります(https://dev.call2arm.com:8443/)。
もし警告が表示される場合、次の原因が考えられます:
- 証明書の発行プロセスが完全に完了していない
- サーバーが正しいSSL証明書を読み込んでいない
- DNSの設定が完全に反映されていない(DNSの伝播には時間がかかることがあります)
証明書の現在の状態¶
本番環境と開発環境の両方で、Let's Encryptによる正規のSSL証明書が正しく設定されています:
# 本番環境の証明書
total 12
drwxr-xr-x 2 root root 4096 May 11 03:19 .
drwxr-xr-x 3 root root 4096 May 11 03:19 ..
-rw-r--r-- 1 root root 692 May 11 03:19 README
lrwxrwxrwx 1 root root 36 May 11 03:19 cert.pem -> ../../archive/call2arm.com/cert1.pem
lrwxrwxrwx 1 root root 37 May 11 03:19 chain.pem -> ../../archive/call2arm.com/chain1.pem
lrwxrwxrwx 1 root root 41 May 11 03:19 fullchain.pem -> ../../archive/call2arm.com/fullchain1.pem
lrwxrwxrwx 1 root root 39 May 11 03:19 privkey.pem -> ../../archive/call2arm.com/privkey1.pem
# 開発環境の証明書
total 12
drwxr-xr-x 2 root root 4096 May 11 03:24 .
drwxr-xr-x 3 root root 4096 May 11 03:24 ..
-rw-r--r-- 1 root root 692 May 11 03:24 README
lrwxrwxrwx 1 root root 40 May 11 03:24 cert.pem -> ../../archive/dev.call2arm.com/cert1.pem
lrwxrwxrwx 1 root root 41 May 11 03:24 chain.pem -> ../../archive/dev.call2arm.com/chain1.pem
lrwxrwxrwx 1 root root 45 May 11 03:24 fullchain.pem -> ../../archive/dev.call2arm.com/fullchain1.pem
lrwxrwxrwx 1 root root 43 May 11 03:24 privkey.pem -> ../../archive/dev.call2arm.com/privkey1.pem
SSL証明書の検証¶
HTTPSの動作確認を行ったところ、両方の環境で正常に機能していることが確認できました:
# 本番環境(call2arm.com)のHTTPS接続テスト
HTTP/1.1 200 OK
Server: nginx/1.27.5
Date: Sat, 10 May 2025 18:27:05 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 0
Connection: keep-alive
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
# 開発環境(dev.call2arm.com:8443)のHTTPS接続テスト
HTTP/1.1 200 OK
Server: nginx/1.27.5
Date: Sat, 10 May 2025 18:27:11 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 0
Connection: keep-alive
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
正しいSSL証明書チェーン¶
両環境とも、Let's Encryptの証明書チェーンが正しく提供されています:
Certificate chain
depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = E6
verify return:1
depth=0 CN = call2arm.com
verify return:1
上記のように、Let's Encryptの中間証明書(E6)とルート証明書(ISRG Root X1)が含まれています。
まとめ¶
現在の設定では、両方の環境で正規のSSL証明書が正しく設定されています。ブラウザで警告が表示される場合は、以下を試してみてください:
- ブラウザのキャッシュをクリアする
- シークレットウィンドウや異なるブラウザでアクセスしてみる
- DNSの変更が完全に伝播するまで待つ(最大48時間)
証明書の有効期限は約3ヶ月で、Certbotによる自動更新が設定されています。
操作