起点の証明書の管理

オリジン証明書とは、 IBM Cloud® Internet Services によって発行される TLS 証明書であり、 CIS のエッジとお客様のオリジンサーバー間の通信を保護するためのものです。 無料の TLS 証明書を注文して起点サーバーにインストールしてください。

原産地証明書の図
原産地証明書の図

CIS 原産地証明書は、 CIS でのみ有効です。

起点証明書の注文

起点証明書を注文するには、証明書署名要求 (CSR) を入力するか、鍵と CSR を生成するための CIS の秘密鍵のタイプを選択します。

証明書の保護対象の起点にあるホスト名 (ワイルドカードを含む) を最大 100 件指定します。 ワイルドカードでカバーできるのは1レベルのみ。 範囲を広げるには、同じ証明書で複数のワイルドカードを使用します (例えば、 *.yourdomain.com*.yoursubdomain.yourdomain.com)。 CIS 起点証明書は IP アドレスを許可しません。

有効期限を指定します。 証明書のデフォルトの有効期間は 15 年です。最短の有効期間は 7 日です。

秘密鍵とCSRが CIS によって生成された場合、秘密鍵は証明書を注文した後にのみ利用可能になります。

APIを使用してオリジン証明書を取得するには、「 既存のオリジン証明書を取得する 」を参照してください。

サーバーへの起点証明書のインストール

Apache HTTPD

  1. 起点証明書を注文します。

  2. 秘密鍵と発行元証明書を、 PEM 形式でコピーし、サーバー上の鍵ファイルや証明書ファイルを保管しているディレクトリ内の別々のファイルに保存してください。

  3. Apache 構成ファイルを見つけます。 通常、ファイル名は「 httpd.conf 」または「 apache2.conf 」であり、保存場所は「 /etc/httpd/ 」または「 /etc/apache2/ 」となります。 ただしこれは、構成ファイルによって異なります (特にサーバーの管理に特別なインターフェースを使用している場合など)。 Apache の DistrosDefaultLayout を参照してください。 以下のコマンドは、Linux 上で SSL 構成ファイルを見つける方法の 1 つです。

    grep -i -r "SSLCertificateFile" /etc/httpd/
    
  4. 設定する <VirtualHost> ブロックの位置を指定します。 必要に応じて、サイトの既存の非セキュア仮想ホストをコピーし、 HTTP および HTTPS 経由でアクセスできるようにしてください。これは、接続の種類ごとに仮想ホストが必要となるためです。

  5. SSL 用に <VirtualHost> ブロックを設定します。 以下の例は、シンプルな SSL の構成を表しています。 証明書およびプライベート・キーのファイル名を使用します。 SSLCertificateFile は起点 CA 証明書のファイル名、 SSLCertificateKeyFile は起点 CA プライベート・キーのファイル名です。

    <VirtualHost 192.168.0.1:443>
      DocumentRoot             /var/www/html2
      ServerName               www.mydomain.com
      SSLEngine                on
      SSLCertificateFile       /path/to/your_domain_name.crt
      SSLCertificateKeyFile    /path/to/your_private.key
    </VirtualHost>
    
  6. 構成をテストします。 Apacheを再始動する前に、構成ファイルにエラーがないことを確認してください。 以下のコマンドを実行して、構成をテストします。

    apachectl configtest
    
  7. Apache を再始動します。 以下のコマンドを実行し、SSL サポートを有効にして Apache を再始動します。

    apachectl stop
    apachectl start
    

SSL サポートが apache start でロードされない場合、コマンド apachectl startssl を実行します。 Apache の初期設定で、 apachectl startssl を使用して SSL のみがサポートされている場合は、 Apache の起動設定を調整し、コマンド apachectl start に SSL のサポートを含めるようにしてください。 そうでない場合、サーバーが再起動すると、 apachectl startssl を実行して、 Apache を手動で再起動する必要がある場合があります。 この再起動では、通常、設定を囲んでいる および </IfDefine SSL> タグを削除する必要があります。

NGINX

  1. 起点証明書を注文します。

  2. 秘密鍵と発行元証明書を、 PEM 形式でコピーし、サーバー上の鍵ファイルや証明書ファイルを保管しているディレクトリ内の別々のファイルに保存してください。

  3. NGINX 仮想ホスト・ファイルを更新します。 ご使用の Web サイト用に NGINX 仮想ホスト・ファイルを編集します。 以下の例は、SSL サポート用のサーバー・ブロックを表しています。 サイトが HTTP および HTTPS 経由でアクセス可能になるよう、サーバーブロック内のリスニングソケットで ssl パラメータを有効にしてください。

    server {
      listen    80;
      listen    443;
      ssl       on;
      ssl_certificate         /path/to/your_certificate.pem;
      ssl_certificate_key     /path/to/your_private.key;
      location / {
        root    /home/www/public_html/yourdomain.com/public/;
        index   index.html;
      }
    }
    
  4. NGINX を再始動します。 以下のコマンドのいずれかを実行して NGINX を再始動します。

    sudo /etc/init.d/nginx restart
    sudo systemctl restart nginx
    

Apache Tomcat

  1. 起点証明書を注文します。

  2. 秘密鍵と発行元証明書をPKCS #7形式(cert.p7b )でコピーし、サーバー上の鍵および証明書ファイルを保管しているディレクトリ内の別々のファイルに保存してください。

    SSL の証明書ファイルは、CSRの生成に使用したものと同じキーストアに、同じエイリアス名(または「server」)でインストールする必要があります。 次のステップのインストール作業は、SSL 証明書ファイルが別の鍵ストアにインストールされている場合は機能しません。

  3. 証明書をインストールします。 以下のコマンドを実行して、SSL 証明書ファイルを鍵ストアにインストールします。

    keytool -import -trustcacerts -alias server -file cert.p7b -keystore your_site_name.jks
    

    確認メッセージが表示されます: 「証明書の応答がキーストアにインストールされました。」 証明書を信頼するかどうか尋ねられたら、y または yes を入力します。 これで、鍵ストア・ファイル (your_site_name.jks) を Tomcat サーバーで使用できるようになりました。

  4. SSL コネクターを構成します。 SSL コネクターを構成して Tomcat がセキュア接続を受け入れられるようにします。

    1. Tomcat の server.xml ファイルをテキスト・エディターで開きます。 server.xml ファイルは通常、Tomcat のホーム・ディレクトリーの conf フォルダーにあります。
    2. 新しい鍵ストアを保護するために使用するコネクターを識別します。 通常は、ポート 443 または 8443 のコネクターが使用されます。
    3. コネクタの周囲にある可能性のあるコメントタグをすべて削除してください。
    4. コネクターで構成した正しい鍵ストアのファイル名とパスワードを更新します。

    以下の例は、構成済みの SSL コネクター・ブロックを表しています。

    <Connector port="443" maxHttpHeaderSize="8192" maxThreads="150"
    minSpareThreads="25" maxSpareThreads="75" enableLookups="false"
    disableUploadTimeout="true" acceptCount="100" scheme="https"
    secure="true" SSLEnabled="true" clientAuth="false" sslProtocol="TLS"
    keyAlias="server" keystoreFile="/home/user_name/your_site_name.jks"
    keystorePass="your_keystore_password" />
    

    お使いのTomcatのバージョンがTomcat 7より古い場合は、 keystorePasskeypass に変更してください。

  5. server.xml ファイルを保存します。

  6. Tomcat を再始動します。

Microsoft Internet Information Services (IIS) 7.0

  1. IIS マネージャーで CSR を作成し、.pem としてエクスポートします。 IIS マネージャーは管理ツールの下にあります。

  2. CSRを使用して、 CIS のオリジン証明書を注文してください。

  3. 起点証明書を、サーバーのデスクトップにコピーします。

  4. IIS マネージャーを開き、**「接続」**の下でサーバーのホスト名を選択します。

  5. 中央メニューの IIS セクションから、**「サーバー証明書」**を選択します。

  6. 「操作」メニューから、**「証明書の要求の完了」**を選択します。 **「証明機関の応答を指定します」ページの「証明機関の応答が含まれるファイルの名前」の下の...をクリックして、デスクトップにコピーした .cer 証明書ファイルの場所に移動し、ファイルを選択して「開く」**をクリックします。

  7. 証明書の分かりやすい名前を入力します。 分かりやすい名前は、証明書を識別するための名前です。

  8. **「OK」**を選択して、サーバーでの証明書のインストール作業を終了します。

  9. 証明書を Web サイトにバインドします。 IIS マネージャーの**「接続」の下にあるメニューで、サーバー名の下の「サイト」を展開して、対象の Web サイトを選択します。 「操作」メニューから、「サイトの編集」の下の「バインド」を選択します。 「サイト バインド」ウィンドウで「追加」**を選択して、以下の情報をサブミットします。

    Type              https
    IP Address        All Unassigned
    Port              443
    SSL Certificate   your_cert_friendly_name
    
  10. これで、ご使用の Web サイトがセキュア接続を受け入れるように構成されました。

Microsoft Internet Information Services (IIS) 8.0 および 8.5

  1. IIS マネージャーで CSR を作成し、.pem としてエクスポートします。 IIS マネージャーは管理ツールの下にあります。

  2. CSRを使用して、 CIS のオリジン証明書を注文してください。

  3. 起点証明書を、サーバーのデスクトップにコピーします。

  4. IIS マネージャーを開き、**「接続」**の下でサーバーのホスト名を選択します。

  5. 中央メニューの IIS セクションから、**「サーバー証明書」**を選択します。

  6. 「操作」メニューから、**「証明書の要求の完了」**を選択します。 **「証明機関の応答を指定します」ページの「証明機関の応答が含まれるファイルの名前」の下の...をクリックして、デスクトップにコピーした .cer 証明書ファイルの場所に移動し、ファイルを選択して「開く」**をクリックします。

  7. 証明書を識別するフレンドリーな名前を入力する。

  8. **「OK」**を選択して、サーバーでの証明書のインストール作業を終了します。

  9. 証明書を Web サイトにバインドします。 IIS マネージャーの**「接続」の下にあるメニューで、サーバー名の下の「サイト」を展開して、対象の Web サイトを選択します。 「操作」メニューから、「サイトの編集」の下の「バインド」を選択します。 「サイト バインド」ウィンドウで「追加」**を選択して、以下の情報をサブミットします。

    Type              https
    IP Address        All Unassigned
    Port              443
    SSL Certificate   your_cert_friendly_name
    
  10. 同じIPアドレスにバインドされた SSL を使用するサイトが複数ある場合は、必要に応じて、 SSL の証明書でサーバー名指示(SNI)を使用するように設定してください。 **「サーバー名表示を要求する」**ボックスを選択します。

  11. これで、ご使用の Web サイトがセキュア接続を受け入れるように構成されました。

証明書チェーン

場合によっては、オリジンのウェブサーバーが証明書チェーンをアップロードすることを要求する。 これらのリンクを使用して、 ECC または RSA バージョンをダウンロードしてから、証明書チェーンを起点 Web サーバーにアップロードします。

起点証明書の取り消し

CIS 起点証明書を削除します。 この処理は元に戻せません。

APIを使用してオリジン証明書を失効させるには、 作成されたオリジン証明書を失効させるを 参照してください。