手動でデプロイした SSL 証明書が有効にならない、またはブラウザーにセキュリティ警告が表示される場合は、以下のチェック項目を確認し、問題を特定して解決してください。
クイックチェックリスト
詳細な手順に進む前に、このリストをご確認ください。デプロイが失敗する原因のほとんどは、以下のいずれかです。
サーバーのファイアウォールまたはセキュリティグループでポート 443 が開いていること
Web サーバー設定の証明書ファイルのパスと名前がディスク上のものと一致していること
設定変更後に Web サーバーが再起動されていること
証明書の有効期限が切れておらず、ステータスが [発行済み] であること
証明書の [バインドされたドメイン] が、対象のドメインと一致していること
証明書と秘密鍵が一緒に生成されていること (一致するキーペア)
証明書は X.509 形式で、PEM でエンコードされています (
.crtまたは.pem)証明書チェーンが完全であること (サーバー証明書 + 中間証明書 + ルート証明書)
証明書ファイルディレクトリに Web サーバープロセスに対する読み取り権限があること
DNS が正しい IP アドレスを指していること
1. ポート 443 が開いているかの確認
HTTPS トラフィックはポート 443 を使用します。このポートがブロックされていると、ブラウザーは安全な接続を確立できません。
Alibaba Cloud Elastic Compute Service (ECS) インスタンスを使用している場合は、セキュリティグループのルールを確認してください。
ECS コンソールの [セキュリティグループ] ページに移動します。
ポート 443 でインバウンドトラフィックが許可されていることを確認します。
セキュリティグループルールの管理の詳細については、「セキュリティグループの管理」をご参照ください。

Web Application Firewall (WAF) を使用している場合は、WAF がポート 443 への外部アクセスをブロックしていないことを確認してください。
Web Application Firewall 3.0 コンソールにログインします。上部のメニューバーから、WAF インスタンスのリソースグループとリージョン ([中国本土] または [中国本土以外]) を選択します。
左側メニューで、[オンボーディング] をクリックします。
[CNAME レコード] タブで、ポート 443 への外部アクセスが許可されていることを確認します。

2. Web サーバー設定の確認
パスの設定ミスやサービスの再起動漏れは、デプロイ失敗の最も一般的な原因の 1 つです。
設定ファイル内の証明書ファイルのパスと名前が、ディスク上の実際の場所と一致していることを確認してください。次の NGINX の例は、関連するフィールドを示しています。
server { # ポート 443 は HTTPS のデフォルトポートです listen 443 ssl; server_name example.com; # これらのパスを実際の証明書と秘密鍵のパスに置き換えてください ssl_certificate /etc/nginx/ssl/example.com.crt; ssl_certificate_key /etc/nginx/ssl/example.com.key; # その他の設定... }編集後に設定ファイルが保存されたことを確認してください。
Web サーバーを再起動して変更を適用してください。
NGINX:
bash sudo nginx -s reloadApache HTTP サーバー:
bash sudo systemctl restart httpd
3. 証明書の有効性とステータスの確認
Certificate Management Service コンソールにログインします。
左側メニューで、[証明書管理] > [SSL 証明書管理] を選択します。
[SSL 証明書管理] ページで、対象の証明書を見つけて以下を確認します。
[ステータス] が [発行済み] であること
[バインドされたドメイン] に正しいドメインがリストされていること


証明書の有効期限が切れている場合は、更新してください。更新手順については、「SSL 証明書の更新と有効期限の処理」をご参照ください。
自己署名証明書を使用している場合、ブラウザーは警告を表示します。これは、自己署名証明書がデフォルトでは信頼されていないためです。Google Chrome で信頼ステータスを確認するには、次の手順を実行してください。
Chrome でサイトを開きます。
アドレスバーの
アイコンをクリックします。警告アイコンが表示されない場合は、ブラウザーが証明書を信頼していることを意味します。赤色の
アイコンが表示される場合は、信頼されていないことを意味します。

アイコンをクリックして詳細を表示します。証明書が信頼されていない場合、証明書情報ウィンドウに警告が表示されます。
商用証明書を使用している場合は、信頼できる認証局 (CA) によって発行されたことを確認してください。Chrome で確認するには、次の手順を実行してください。
アドレスバーの
アイコンをクリックします。[接続は保護されています] をクリックします。
[証明書 (有効)] をクリックします。信頼できる CA が発行した証明書には警告が表示されません。

証明書情報ウィンドウで、[発行者] フィールドを見つけ、コモンネーム (CN) と組織名 (O) が既知の CA と一致することを確認してください。

4. DNS 名前解決の検証
DNS が正しいサーバー IP を指していない場合、HTTPS 接続は誤ったホストに送信され、証明書が一致しなくなります。
Alibaba Cloud DNS コンソールにログインします。
[権威DNS解決] ページの [権威ドメイン名] タブで、ドメイン名をクリックして [設定] ページを開きます。

[レコードの追加] をクリックし、[レコード値] がサーバーの IP アドレスと一致することを確認してください。一致しない場合は、[編集] をクリックして更新してください。

DNS の変更が反映されるまでには時間がかかることがあります。最近 DNS 設定を更新した場合は、ローカルの DNS キャッシュをクリアして再試行してください。
DNSキャッシュのクリア
Windows
Win+Rを押し、cmdと入力して Enter を押すと、コマンドプロンプトが開きます。次のコマンドを実行します。
ipconfig /flushdns「DNS リゾルバーキャッシュは正常にフラッシュされました。」というメッセージが表示されれば成功です。
macOS
「ターミナル」アプリケーションを開きます(
Command+Spaceを押し、[ターミナル] と入力して Enter キーを押します)。次のコマンドを実行します。
# dscacheutil は、システムのキャッシュサービスと対話します sudo dscacheutil -flushcache # DNS サービスを担当するバックグラウンドプロセスである mDNSResponder を再起動します sudo killall -HUP mDNSResponder
管理者パスワードの入力を求められる場合があります。
Linux
コマンドは、システムが使用する DNS キャッシュサービスによって異なります。
DNS サービス | コマンド |
|
|
|
|
|
|
|
|
|
|
これらのコマンドには管理者権限が必要です。キャッシュをクリアした後、システムはアップストリームサーバーから最新の DNS レコードを取得します。
5. ブラウザーキャッシュのクリア
ブラウザーは古い証明書データをキャッシュすることがあります。ブラウザーのキャッシュをクリアしてサイトに再アクセスするか、シークレットモード (Chrome) または InPrivate モード (Microsoft Edge) でサイトを開いてキャッシュをバイパスしてください。

6. 証明書チェーンの検証
これが重要な理由: ブラウザーは、ルート証明書からサーバー証明書までの完全なチェーンを検証します。中間証明書が欠落していると、特に Authority Information Access (AIA) URL を介した中間証明書の取得をサポートしていない Android ブラウザーでは、信頼されていない証明書に関する警告が表示されます。
証明書チェーンは、次の順序でなければなりません。
-----BEGIN CERTIFICATE-----
Webサイト証明書
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
CA中間証明書
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
CAルート証明書
-----END CERTIFICATE-----チェーンの順序は、Web サイト証明書 > CA 中間証明書 > CA ルート証明書です。中間証明書チェーンには複数の階層が存在する場合があります。
Chrome での証明書チェーンの表示
アドレスバーの
アイコンをクリックし、[接続は保護されています] をクリックします。ポップアップウィンドウで、[証明書は有効です] をクリックします。
[詳細] をクリックし、[証明の階層] を確認します。

欠落している証明書チェーンの補完
Alibaba Cloud から証明書をリクエストした場合は、証明書ファイルを再度ダウンロードしてください。ダウンロードした PEM ファイルには、サーバー証明書と中間証明書がすでに含まれています。
Windows の場合は、手動で証明書を開き、中間証明書を見つけて Base64 形式でエクスポートし、エクスポートしたコンテンツを証明書ファイルに追加してください。
ルート証明書と中間証明書のダウンロードについては、「ルート証明書のダウンロードとインストール」および「SSL 証明書のダウンロード」をご参照ください。
信頼できる CA が発行した証明書のルート証明書は、主要なブラウザー (Google Chrome、Mozilla Firefox、Microsoft Edge)、オペレーティングシステム (Windows、macOS)、およびモバイルデバイス (iOS、Android) にプリインストールされています。アプリ、Java クライアント、古いブラウザー、IoT デバイスの場合は、サーバー証明書の種類に一致するルート証明書を手動でダウンロードしてインストールしてください。
7. 秘密鍵と証明書の一致の確認
これが重要な理由: Certificate Signing Request (CSR) を生成すると、同時に秘密鍵が作成されます。その証明書で機能するのは、一致する秘密鍵のみです。一致しない秘密鍵をアップロードすると、HTTPS ハンドシェイクが失敗します。
Linux システムで一致を確認するには、次の手順を実行してください。
ECS インスタンスにログインし、証明書のインストールディレクトリに移動してください。
# /ssl を実際の証明書インストールパスに置き換えてください cd /ssl証明書の公開鍵の MD5 ハッシュを取得してください。
# your_certificate.pem を実際の PEM ファイル名に置き換えてください sudo openssl x509 -in your_certificate.pem -noout -pubkey | openssl md5秘密鍵の公開鍵の MD5 ハッシュを取得してください。
# your_private_key.key を実際の秘密鍵ファイル名に置き換えてください sudo openssl rsa -in your_private_key.key -pubout | openssl md52 つの MD5 ハッシュを比較してください。一致する場合、秘密鍵は証明書に対応しています。

秘密鍵を紛失または破損した場合は、新しいキーペアを生成し、新しい証明書をリクエストしてください。
8. ブラウザー互換性の確認
証明書の形式と暗号スイートは、主要なブラウザーと互換性がある必要があります。
信頼できる CA を使用してください。 主要なブラウザーは、既知の CA からの証明書を自動的に信頼します。
X.509 形式を使用してください。 次のコマンドで証明書の形式を確認してください。
# /ssl/cert.pem を実際の証明書ファイルのパスに置き換えてください sudo openssl x509 -in /ssl/cert.pem -text -noout証明書が X.509 形式の場合、コマンドはバージョン、シリアル番号、署名アルゴリズム、発行者、有効期間、公開鍵の詳細を返します。
Certificate: Data: Version: 3 (0x2) Serial Number: 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef Signature Algorithm: sha256WithRSAEncryption Issuer: C = US, O = DigiCert Inc Validity Not Before: Jan 17 00:00:00 2025 GMT Not After : Jan 17 23:59:59 2026 GMT Subject: CN = example.com Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public-Key: (2048 bit) ......証明書と中間証明書チェーンを PEM 形式 (
.crtまたは.pemファイル) で保存します。最新の暗号スイートを使用してください。 サーバーが TLS 1.2 または TLS 1.3 を使用するように設定し、安全でないプロトコルとアルゴリズム (SSL 2.0、SSL 3.0、TLS 1.0、TLS 1.1、RC4、3DES) を無効にします。
複数のブラウザーとデバイスでサイトをテストし、互換性を確認してください。
9. 証明書ファイルディレクトリの権限の検証
Web サーバープロセスは、証明書ファイルを読み取れる必要があります。権限が厳しすぎると、サーバーは証明書を読み込めません。
Linux サーバーで権限を確認および設定するには、次の手順を実行してください。
ディレクトリの権限を表示します。
最初の文字 (
d) はディレクトリを示します次の 3 文字 (
rwx) は所有者の権限であり、それぞれ読み取り、書き込み、実行を意味します中央の 3 文字 (
r-x) はグループ権限で、読み取りと実行を表します。最後の 3 つ (
r-x) は他ユーザーの権限を示します:読み取り、実行
# /ssl を実際の証明書ディレクトリパスに置き換えてください sudo ls -ld /ssl出力は
drwxr-xr-xのようになります。各項目の意味は次のとおりです。
Web サーバーを実行しているユーザーまたはグループに、読み取り (
r) および実行 (x) 権限があることを確認してください。ディレクトリの実行権限により、ユーザーはそのディレクトリに入ることができます (たとえば、cdなど)。(オプション) 権限を更新するには、次を実行してください。
# /ssl を実際の証明書ディレクトリパスに置き換えてください sudo chmod 750 /ssl750権限は、所有者に読み取り、書き込み、実行アクセス権を、グループに読み取りと実行アクセス権を付与し、その他のユーザーにはアクセス権を付与しません。
Web サイトの実装はさまざまです。Web サーバーとアプリケーションのログファイルで SSL 関連のエラーメッセージを確認し、根本原因を特定してください。問題が解決しない場合は、アカウントマネージャーにお問い合わせください。
よくある質問
古い SSL 証明書を交換すると、サービスが中断しますか?
古い証明書を交換しても、直接サービスが中断することはありません。ただし、新しい証明書をデプロイした後、新しい証明書を有効にするには、通常、Web サーバーまたはアプリケーションを再起動する必要があります。再起動プロセスにより、短時間サービスが中断する可能性があります。この操作はオフピーク時に実行し、サービスを再起動する前に新しい証明書が正しくデプロイされていることを確認することを推奨します。