2026年7月2日

2026年7月2日

証明書の中間CA(Chain)エラーを解決する方法

ステップ1: 中間CA(Chain)エラーの概要と重要性

中間CA(Certificate Authority)は、サーバーサイドでSSL/TLS証明書を正規化し、信頼性を確保するために使用されます。ただし、一部のウェブブラウザでは、中間CAが欠落している場合にエラーを表示することがあります。この記事では、そのような状況での解決策について説明します。

ステップ2: 中間CA(Chain)エラーが発生する主な場面

  • ウェブサイトのHTTPS接続失敗:ブラウザで「セキュリティ警告」や「証明書エラー」というメッセージが表示される。
  • SSL/TLS握手に失敗:サーバーのSSL設定が不完全であるために、ブラウザとの通信が中断される。
  • 信頼性の低下:サイトの信認度が低下し、ユーザーからの信頼を損なう可能性がある。

ステップ3: 中間CA(Chain)エラーを解決する手順

ステップ1: 現状確認

まず、現在のSSL設定が正しく配置されているか確認します。

# クリアタイプで中間証明書が含まれているかどうか確認
openssl s_client -connect www.example.com:443 -showcerts

# 調べた結果をファイルに出力して保存
openssl s_client -connect www.example.com:443 -showcerts > cert_output.txt

ステップ2: 中間CA証明書の取得

必要に応じて、欠けている中間CAの証明書を入手します。この手順は、ウェブサイト運営者のみが実行できます。

# Let's Encryptを使用している場合
curl -o intermediate.pem https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem

# 公認中間CAから直接ダウンロードする場合
wget http://www.example.com/intermediate.crt

ステップ3: 証明書チェーンの構築

取得した中間CAの証明書を、既存の根CAの証明書と共に適切な順序で配置します。

# 根CAと中間CA証明書の結合
cat root.pem intermediate.pem > fullchain.pem

# ファイル権限を設定(必要に応じて)
chmod 600 fullchain.pem

ステップ4: SSL/TLS設定の更新

構築した証明書チェーンを使用して、サーバーのSSL設定を更新します。以下はNginxでの例です。

# Nginxコンフィギュレーションファイルの編集
sudo nano /etc/nginx/sites-available/default

# SSL設定の追記
server {
    listen 443 ssl;
    server_name www.example.com;

    ssl_certificate fullchain.pem;
    ssl_certificate_key privkey.pem;
    ssl_trusted_certificate intermediate.pem; # 新しく追加

    # 其他SSL設定...
}

ステップ5: Nginxを再起動

変更内容が正しく適用されていることを確認します。

# Nginxの再起動
sudo systemctl restart nginx

注意事項

  • セキュリティ上の注意:証明書チェーンは常に最新であることが重要です。定期的に中間CAの更新が必要となる場合があります。
  • パフォーマンス/運用上の注意:証明書チェーンの追加や変更は、サーバー負荷に影響を与える可能性があるため、適切なタイミングで行うことが推奨されます。

まとめ

1. 現状確認: 中間CAが存在するかを確認します。

2. 中間CA証明書の取得: 欠けている中間CA証明書を入手します。

3. 証明書チェーンの構築: 根CA、中間CA、および私钥ファイルを適切な順序で配置します。

4. SSL/TLS設定の更新: 証明書チェーンを使用して、サーバーのSSL設定を更新します。

関連記事:

  • [SSL証明書の導入と管理]
  • [NginxでのSSL設定方法]
  • [HTTPS接続のトラブルシュート]

お気軽にご相談ください

お見積りへ お問い合わせへ