第7章 オーバークラウドのパブリックエンドポイントでの SSL/TLS の有効化

デフォルトでは、オーバークラウドはオーバークラウドサービスに暗号化されていないエンドポイントを使用します。オーバークラウドで SSL/TLS を有効にするには、Red Hat は認証局 (CA) ソリューションを使用することを推奨します。

CA ソリューションを使用すると、証明書の更新、証明書失効リスト (CRL)、業界で受け入れられている暗号化など、運用に対応したソリューションが得られます。Red Hat Identity Manager (IdM) を CA として使用する方法は、Ansible を使用した TLS-e の実装 を参照してください。

次の手動プロセスを使用して、パブリック API エンドポイントに対してのみ SSL/TLS を有効にすることができます。内部 API と管理 API は暗号化されません。CA を使用しない場合は、SSL/TLS 証明書を手動で更新する必要があります。詳細は、SSL/TLS 証明書の手動更新 を参照してください。

前提条件

  • パブリック API のエンドポイントを定義するためのネットワーク分離
  • openssl-perl パッケージがインストールされている。
  • SSL/TLS 証明書があります。詳細は、カスタム SSL/TLS 証明書の設定 を参照してください。

7.1. SSL/TLS の有効化

オーバークラウドで SSL/TLS を有効にするには、SSL/TLS 証明書と秘密鍵のパラメーターを含む環境ファイルを作成する必要があります。

手順

  1. heat テンプレートコレクションから enable-tls.yaml の環境ファイルをコピーします。

    $ cp -r /usr/share/openstack-tripleo-heat-templates/environments/ssl/enable-tls.yaml ~/templates/.
  2. このファイルを編集して、下記のパラメーターに以下の変更を加えます。

    SSLCertificate

    証明書ファイル (server.crt.pem) のコンテンツを SSLCertificate パラメーターにコピーします。

    parameter_defaults:
      SSLCertificate: |
        -----BEGIN CERTIFICATE-----
        MIIDgzCCAmugAwIBAgIJAKk46qw6ncJaMA0GCSqGS
        ...
        sFW3S2roS4X0Af/kSSD8mlBBTFTCMBAj6rtLBKLaQ
        -----END CERTIFICATE-----
    重要

    この証明書の内容に新しく追加する行は、すべて同じレベルにインデントする必要があります。

    SSLIntermediateCertificate

    中間証明書がある場合、中間証明書のコンテンツを SSLIntermediateCertificate パラメーターにコピーします。

    parameter_defaults:
      SSLIntermediateCertificate: |
        -----BEGIN CERTIFICATE-----
        sFW3S2roS4X0Af/kSSD8mlBBTFTCMBAj6rtLBKLaQbIxEpIzrgvpBCwUAMFgxCzAJB
        ...
        MIIDgzCCAmugAwIBAgIJAKk46qw6ncJaMA0GCSqGSIb3DQE
        -----END CERTIFICATE-----
    重要

    この証明書の内容に新しく追加する行は、すべて同じレベルにインデントする必要があります。

    SSLKey

    秘密鍵 (server.key.pem) の内容を SSLKey パラメーターにコピーします。

    parameter_defaults:
      ...
      SSLKey: |
        -----BEGIN RSA PRIVATE KEY-----
        MIIEowIBAAKCAQEAqVw8lnQ9RbeI1EdLN5PJP0lVO
        ...
        ctlKn3rAAdyumi4JDjESAXHIKFjJNOLrBmpQyES4X
        -----END RSA PRIVATE KEY-----
    重要

    この秘密鍵の内容に新しく追加する行は、すべて同じレベルにインデントする必要があります。