ドメイン名がシンプルアプリケーションサーバーにバインドされている場合、そのドメイン名へのHTTPSアクセスを設定できます。 このようにして、データ伝送プロトコルをHTTPからHTTPSに低コストで変換し、Webサイトの認証と暗号化されたデータ伝送を実行できます。 これにより、データ送信中のデータ改ざんや情報漏洩を防ぎます。 このトピックでは、単純なアプリケーションサーバーにSSL証明書をインストールし、サーバーへのHTTPSアクセスを有効にする方法について説明します。 このトピックでは、WordPress 5.8アプリケーションサーバーを使用します。
前提条件
単純なアプリケーションサーバーが作成されます。 詳細については、「WordPressブログの作成」をご参照ください。
ドメイン名が購入されました。 Alibaba Cloudからドメイン名を購入する方法の詳細については、「ジェネリックドメイン名の登録」をご参照ください。
シンプルアプリケーションサーバーが中国本土のリージョンにある場合は、シンプルアプリケーションサーバーにバインドされているドメイン名のインターネットコンテンツプロバイダ (ICP) ファイリングを取得する必要があります。 詳細については、「ICPファイリングとは何ですか?」をご参照ください。
ドメイン名は簡易アプリケーションサーバーにバインドされ、解決されます。 詳細については、「ドメイン名のバインドと解決」をご参照ください。
背景情報
証明書を申請して購入し、Alibaba Cloud certificate Management Serviceを使用して証明書をwebサーバーにデプロイすると、webサービスはHTTPSを介してデータを転送します。 HTTPSを使用する場合、SSL経由の暗号化チャネルがアクティブ化され、クライアントブラウザからwebサーバーにデータが送信されます。 これにより、一方向の暗号化伝送が可能になり、伝送中のデータが改ざんされたり傍受されたりしない。 HTTPS送信は、App Storeまたはアプリケーションエコシステムで公開されるモバイルアプリ、ミニプログラム、プログラム、およびコントロールの重要な機能です。 HTTPS送信は、Webサイトに次の利点を提供します。
セキュリティコンプライアンス: HTTPS送信により、WebサイトはApp Storeまたはアプリケーションエコシステムの要件を満たすことができます。
ネットワークデータの暗号化伝送: HTTPS伝送は、ユーザーとWebサイト間のデータ通信を暗号化して、送信されたデータが傍受、改ざん、聴取されるのを防ぎ、送信されたデータのセキュリティを確保します。
高いWebサイトセキュリティ: HTTPS送信はフィッシングイベントを防ぎます。 ユーザーがWebサイトにアクセスすると、ブラウザはWebサイトが安全で信頼できることを求めます。 これにより、Webサイトの信頼性、アクセストラフィック、検索ランキングを向上させることができます。
ステップ1: SSL証明書の購入
証明書の購入
証明書管理サービスコンソールの [今すぐ購入] ページをご覧ください。
ビジネス要件に基づいて、購入する証明書の仕様を選択します。
パラメーター
説明
例
証明書タイプ
証明書をバインドするドメイン名のタイプを指定します。 有効な値:
単一ドメイン: この値を選択すると、証明書を単一のドメイン名にバインドできます。 たとえば、証明書を
aliyundoc.com
にバインドすると、証明書は自動的に無料で適用されo www.aliyundoc.com。ワイルドカードドメイン: 同じレベルのワイルドカードサブドメインを使用する複数のサーバーがある場合、1つの証明書のみを購入してインストールする必要があります。 サブドメインごとに証明書を購入してインストールする必要はありません。
次のリストは、ワイルドカードドメイン名の一致ルールを示しています。
同じレベルのサブドメインのみを一致させることができる。 異なるレベルのサブドメインは一致できません。 たとえば、証明書を * .aliyundoc.comにバインドすると、d learn.aliyundoc.com s demo.aliyundoc.comなどのサブドメインが一致します。 s guide.demo.aliyundoc.com d developer.demo.aliyundoc.comなどのサブドメインは一致しません。
ワイルドカードドメイン名の親ドメイン名が第1レベルドメイン名である場合、ワイルドカードドメイン名にバインドされた証明書は自動的に無料で親ドメイン名に適用されます。 たとえば、* .aliyundoc.comにバインドされた証明書を申請した場合、証明書は自動的にo aliyundoc.com無料で適用されます。 * .demo.aliyundoc.comにバインドされた証明書を申請した場合、証明書はr aliyundoc.comドメイン名に無料で適用されo demo.aliyundoc.com。
1つのワイルドカードドメイン名にバインドされた証明書を申請できます。 複数のワイルドカードドメイン名にバインドされた証明書を申請することはできません。 複数のワイルドカードドメイン名を証明書にバインドする場合は、同じブランドとタイプの複数の証明書を組み合わせて、マルチドメインのワイルドカード証明書を生成できます。 詳細については、「証明書の結合」をご参照ください。
複数のドメイン: この値を選択すると、複数の単一ドメイン名を証明書にバインドできます。 最大5つの単一ドメイン名を証明書にバインドできます。
単一ドメイン
ブランド
証明書ブランドを選択します。 証明書ブランドは、証明書を発行する認証機関 (CA) です。
証明書ブランドの詳細については、「SSL証明書の選択」をご参照ください。
Digicert
証明書の仕様
証明書の仕様を選択します。
証明書の仕様の詳細については、「SSL証明書の選択」をご参照ください。
DV SSL
ドメイン名
このパラメーターは、Certificate Typeパラメーターを [Multiple Domains] に設定した場合にのみ必要です。 証明書をバインドするドメイン名の数を指定します。
1
数量
購入する証明書の数を指定します。 デフォルト値は1で、変更できません。 複数の証明書を購入する場合は、サービス期間パラメーターを設定します。 たとえば、サービス期間パラメーターを2年に設定した場合、2つの証明書が提供されます。 各証明書の有効期間は1年です。
1
サービス期間
証明書サービスの有効期間を選択します。 有効な値:
1年: 証明書サービスを1年間使用できます。 サービスは、有効期間が1年の証明書を提供します。 証明書のデフォルトの有効期間は1年です。 証明書の有効期限が切れた後、新しい証明書を購入するには、新しい注文を行う必要があります。
2年間: 証明書サービスを2年間使用できます。 証明書サービスは、2つの証明書と1つのホスティングクォータを提供します。 各証明書の有効期間は1年です。
証明書のホスティング機能の詳細については、「概要」をご参照ください。
3年間: 証明書サービスを3年間使用できます。 証明書サービスは、3つの証明書と2つのホスティングクォータを提供します。 各証明書の有効期間は1年です。
1 年
[今すぐ購入] をクリックして、支払いを完了します。
証明書アプリケーションの送信
Certificate Management Serviceコンソール にログインします。
左側のナビゲーションウィンドウで、 を選択します。
SSL証明書ページの 公式証明書 タブで、適用する証明書を見つけ、[操作] 列の 証明書申請 をクリックします。
証明書申請 パネルで、ビジネス要件に基づいてパラメーターを設定し、[クイックイシュー] チェックボックスをオンにして、[送信] をクリックします。
パラメーター
説明または例
証明書タイプ
単一ドメイン
証明書の仕様
digicert DV
ドメイン名
証明書をバインドするNode.jsシンプルアプリケーションサーバーのドメイン名を入力します。 例: aliyundoc.com。
年
1
クイック問題
ドメイン検証方法
Alibaba Cloud DNSが証明書申請者のAlibaba Cloudアカウント内で有効化されている場合、証明書管理サービスは証明書の申請時にドメイン名を自動的に識別します。 自動DNS検証は自動的に選択され、変更できません。 証明書が発行されるのを待ちます。
Alibaba Cloud DNSが証明書申請者のAlibaba Cloudアカウント内で有効化されていない場合、次のいずれかの方法でドメイン名の所有権を確認できます。
手動DNS検証: 検証を完了するには、DNSサービスプロバイダーのシステムにドメイン名のTXTレコードを手動で追加する必要があります。
ファイルの検証: 証明書管理サービスコンソールから専用の検証ファイルを手動でダウンロードし、webサーバーの必要な検証ディレクトリにファイルをアップロードする必要があります。
連絡先
[連絡先] ドロップダウンリストで、[連絡先の作成] をクリックして、証明書アプリケーションの連絡先を作成します。 既存の連絡先を選択することもできます。
連絡先情報が正確で有効であることを確認してください。
場所
証明書申請者の都市または地域を選択します。
暗号化アルゴリズム
証明書の暗号化アルゴリズムを指定します。 デフォルト値はRSAで、変更できません。 Rivest − Shamir − Adleman (RSA) アルゴリズムは、高い互換性を提供する、広く使用されている非対称アルゴリズムである。
CSR生成
証明書署名要求 (CSR) ファイルの生成方法を指定します。 CSRファイルは、証明書申請者のサーバーおよび会社情報を含むリクエストファイルです。 証明書を申請するときは、CAがレビューするためのCSRファイルを準備する必要があります。
[自動] を選択した場合、Certificate Management Serviceは、CSRファイルの生成に設定した暗号化アルゴリズムを使用します。
[ドメイン検証方法] パラメーターが [自動DNS検証] に設定されている場合、システムはDNS検証を完了し、証明書の発行を待つだけで済みます。 [ドメイン検証方法] パラメーターが [手動DNS検証] または [ファイル検証] に設定されている場合、[情報の検証] パラメーターに基づいてドメイン名の所有権を手動で検証する必要があります。 詳細と一般的なエラーについては、「ドメイン名の所有権の確認」をご参照ください。
申請書を送信した後、CAが申請書を確認して証明書を発行するまで約30分待ちます。 証明書の発行後、証明書のステータスは [発行済み] に変わります。
ステップ2: SSL証明書の設定
証明書の発行後、証明書のステータスは [発行済み] に変わります。 証明書をダウンロードして設定する必要があります。 証明書の展開とインストールの詳細については、「インストールの概要」をご参照ください。
SSL証明書をダウンロードします。
左側のナビゲーションウィンドウで、.
[クラウドサーバーへのデプロイ] ページで、タスクの作成 をクリックし、次の手順を実行します。
基本設定 ステップで、タスク名を指定し、次へ をクリックします。
証明書の選択 ステップで、簡易アプリケーションサーバーに関連付ける証明書の種類とSSL証明書を選択し、次へ をクリックします。
リソースの選択 ステップで、証明書のデプロイ先となる単純なアプリケーションサーバーとリソースを選択し、次へ をクリックします。
システムは、現在のAlibaba Cloudアカウントにwebアプリケーションがデプロイされているすべてのシンプルなアプリケーションサーバーを自動的に識別してプルします。 クラウドリソースを同期しても対応するリソースが表示されない場合は、NGINXやApacheなどのwebアプリケーションがシンプルアプリケーションサーバーにデプロイされているかどうかを確認します。
証明書が単純なアプリケーションサーバーに以前にデプロイされている場合、システムはデプロイされた証明書の名前を表示します。
デプロイ設定 ステップで、証明書を簡易アプリケーションサーバーにデプロイするパラメーターを設定し、[OK] をクリックします。 下表に、各パラメーターを説明します。
重要簡易アプリケーションサーバーに証明書の構成パスが存在しない場合、システムは自動的に証明書の構成パスを作成します。 Certificate Management Serviceコンソールで設定されたパスは、簡易アプリケーションサーバーのwebアプリケーションで設定された証明書関連ファイルへのパスと一致している必要があります。
オプション
説明
例
証明書のパス
簡易アプリケーションサーバー上の証明書への絶対パス。
/data/cert/certpublic.crt
秘密鍵のパス
簡易アプリケーションサーバー上の証明書の秘密鍵ファイルへの絶対パス。
/data/cert/cert.key
証明書チェーンのパス
簡易アプリケーションサーバー上の証明書チェーンファイルへの絶対パス。
/data/cert/certchain.crt
コマンドを再読み込み
証明書をデプロイした後、簡易アプリケーションサーバーでwebアプリケーションを再起動するか、証明書が有効になるようにアプリケーション構成ファイルをリロードする必要があります。 したがって、webアプリケーションの再起動またはリロードコマンドを設定する必要があります。
重要再起動コマンドまたはリロードコマンドを実行すると、サービスの起動に失敗することがあります。 サービスの起動エラーが発生した場合は、対応する簡易アプリケーションサーバーに移動して問題のトラブルシューティングを行います。
なし
表示されたメッセージボックスで、[OK] をクリックします。
SSL証明書を設定します。
シンプルなアプリケーションサーバーに接続します。 詳細については、「Linuxサーバーへの接続」をご参照ください。
次のコマンドを実行して、vhost.confファイルを変更します。
説明この例では、ApacheはWordPress 5.8サーバーにインストールされています。 設定ファイルのパスと名前は、環境によって異なります。 あなたの実際の環境が優先されます。
sudo vim /etc/httpd/conf.d/vhost.conf
I
キーを押して挿入モードに入ります。次のコードを設定ファイルに追加します。
サンプルコードを追加する前に、コード内の次のパラメーターを変更します。
ServerName: 単純なアプリケーションサーバーのドメイン名。 (例:example.com)。
DocumentRoot: アプリケーションへのルートパス。 例: /data/wwwroot/wordpress.
Directory: アプリケーションへのパス。 例: /data/wwwroot/wordpress.
SSLCertificateFile: 公開鍵ファイルへのパス。 例: /data/cert/certpublic.crt。
SSLCertificateKeyFile: 秘密鍵ファイルへのパス。 例: /data/cert/cert.key。
SSLCertificateChainFile: 証明書チェーンファイルへのパス。 例: /data/cert/certchain.crt
重要HTTPS経由でWebサイトにアクセスできるようにするには、証明書ファイルのパスを正しく指定する必要があります。
次のサンプルコードは、変更された構成ファイルの内容の例を示しています。
#-----HTTPS/SSL template start------------ <VirtualHost *:443> # Bind a domain name to the server. ServerName example.com DocumentRoot "/data/wwwroot/wordpress" #ErrorLog "logs/example.com-error_log" #CustomLog "logs/example.com-access_log" common <Directory "/data/wwwroot/wordpress"> Options Indexes FollowSymlinks AllowOverride All Require all granted </Directory> SSLEngine on # Configure an SSL certificate. Make sure that the paths in the configuration file are the same as the paths where the certificate files are deployed. SSLCertificateFile /data/cert/certpublic.crt SSLCertificateKeyFile /data/cert/cert.key SSLCertificateChainFile /data/cert/certchain.crt </VirtualHost> #-----HTTPS template end------------ #--------------HTTPS/SSL end-----
(条件付きで必要) HTTPリクエストからHTTPSリクエストへの自動リダイレクトを有効にする場合は、次のコードを
<VirtualHost *:80> コードブロック:
#----------HTTP for WordPress Start-------- <VirtualHost *:80> ServerName example.com #ServerAlias example.com DocumentRoot "/data/wwwroot/wordpress" ErrorLog "logs/wordpress-error_log" CustomLog "logs/wordpress-access_log" common RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R] <Directory "/data/wwwroot/wordpress"> Options Indexes FollowSymlinks AllowOverride All Require all granted </Directory> </VirtualHost> #----------HTTP for WordPress End--------
[Esc]
を押して:wq!
と入力し、[enter]
を押してファイルを保存し、編集モードを終了します。次のコマンドを実行して、httpdサービスを再起動します。
sudo systemctl restart httpd
次のコマンドを実行して、データベースを再起動します。
sudo service mysqld restart
ステップ3: SSL証明書がインストールされているかどうかを確認する
WordPressでHTTPSドメイン名を指定します。
WordPressにログインします。
WordPress管理者アカウントのURLとユーザー名とパスワードを取得する方法については、「手順2: アプリケーションの設定」をご参照ください。
左側のナビゲーションウィンドウで、 を選択します。
[WordPressアドレス (URL)] および [サイトアドレス (URL)] フィールドに、バインドされて解決されるドメイン名を入力します。 このトピックでは、
https://example.com
が使用されます。変更を保存 をクリックします。
説明WordPressアドレス (URL) およびサイトアドレス (URL) フィールドを変更すると、管理者ログインアドレスが
https://example.com/wp-login.php
に変わります。example.com
を実際のドメイン名に変更することを忘れないでください。
ブラウザを使用して
https:// <シンプルアプリケーションサーバのドメイン名>
にアクセスします。ブラウザのアドレスバーにロックアイコンが表示された場合、SSL証明書がインストールされます。
HTTPS経由でWebサイトにアクセスできない場合は、次の方法を使用して問題をトラブルシューティングできます。
SSL証明書をインストールする簡易アプリケーションサーバーで、ポート443が有効になっているか、ブロックされていないかを確認します。 ポート443を許可する方法の詳細については、「簡易アプリケーションサーバーのファイアウォールの管理」をご参照ください。
ドメイン名のICP登録が取得されているかどうかを確認します。 中国本土のサーバーでホストされているWebサイトに対してドメイン名が解決されている場合は、そのドメイン名のICP登録が取得されていることを確認してください。 詳細については、「」をご参照ください。ICPファイリングとは何ですか?
証明書ファイルのパスが正しく指定されているか確認します。 構成ファイルのパスが、証明書ファイルのアップロードに使用されるパスと同じであることを確認してください。 詳細については、「SSL証明書の設定」をご参照ください。
関連ドキュメント
さまざまなタイプのサーバーが、さまざまな形式のSSL証明書をサポートします。 サーバータイプに基づいてSSL証明書をインストールできます。 詳細については、「インストールの概要」をご参照ください。