4.4. Beast の SSL の設定


Beast フロントエンド Web サーバーが OpenSSL ライブラリーを使用して Transport Layer Security (TLS) を提供するように設定できます。Beast で Secure Socket Layer (SSL) を使用するには、Ceph Object Gateway ノードのホスト名と一致する認証局 (CA) から証明書を取得する必要があります。また、Beast は、1 つ .pem ファイルに秘密鍵、サーバー証明書、およびその他の CA を含める必要があります。

重要

秘密鍵ハッシュが含まれているため、.pem ファイルへ不正アクセスされないようにします。

重要

Red Hat は、SAN (Subject Alternative Name) フィールドと S3 スタイルのサブドメインで使用するワイルドカードを使用して CA から証明書を取得することを推奨します。

Ceph Object Gateway がクライアントとして機能し、サーバー上でカスタム証明書が使用されている場合は、カスタム CA をノードにインポートし、Ceph Object Gateway 仕様ファイルの extra_container_args パラメーターを使用して etc/pki ディレクトリーをコンテナーにマッピングすることで、カスタム CA を挿入できます。

前提条件

  • 実行中、および正常な Red Hat Ceph Storage クラスター
  • Ceph Object Gateway ソフトウェアパッケージのインストール
  • OpenSSL ソフトウェアパッケージのインストール
  • Ceph Object Gateway ノードへのルートレベルのアクセスがある。

手順

  1. 現在のディレクトリーに rgw.yml という名前の新規ファイルを作成します。

    [ceph: root@host01 /]# touch rgw.yml

  2. 編集する rgw.yml ファイルを開き、環境に合わせてカスタマイズします。

    構文

    service_type: rgw
    service_id: SERVICE_ID
    service_name: SERVICE_NAME
    placement:
      hosts:
      - HOST_NAME
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: CERT_HASH

    service_type: rgw
    service_id: foo
    service_name: rgw.foo
    placement:
      hosts:
      - host01
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: |
        -----BEGIN RSA PRIVATE KEY-----
        MIIEpAIBAAKCAQEA+Cf4l9OagD6x67HhdCy4Asqw89Zz9ZuGbH50/7ltIMQpJJU0
        gu9ObNtIoC0zabJ7n1jujueYgIpOqGnhRSvsGJiEkgN81NLQ9rqAVaGpadjrNLcM
        bpgqJCZj0vzzmtFBCtenpb5l/EccMFcAydGtGeLP33SaWiZ4Rne56GBInk6SATI/
        JSKweGD1y5GiAWipBR4C74HiAW9q6hCOuSdp/2WQxWT3T1j2sjlqxkHdtInUtwOm
        j5Ism276IndeQ9hR3reFR8PJnKIPx73oTBQ7p9CMR1J4ucq9Ny0J12wQYT00fmJp
        -----END RSA PRIVATE KEY-----
        -----BEGIN CERTIFICATE-----
        MIIEBTCCAu2gAwIBAgIUGfYFsj8HyA9Zv2l600hxzT8+gG4wDQYJKoZIhvcNAQEL
        BQAwgYkxCzAJBgNVBAYTAklOMQwwCgYDVQQIDANLQVIxDDAKBgNVBAcMA0JMUjEM
        MAoGA1UECgwDUkhUMQswCQYDVQQLDAJCVTEkMCIGA1UEAwwbY2VwaC1zc2wtcmhj
        czUtOGRjeHY2LW5vZGU1MR0wGwYJKoZIhvcNAQkBFg5hYmNAcmVkaGF0LmNvbTAe
        -----END CERTIFICATE-----

  3. サービス仕様ファイルを使用して Ceph Object Gateway をデプロイします。

    [ceph: root@host01 /]# ceph orch apply -i rgw.yml

4.4.1. SAN 設定で自己署名 Cephadm 証明書をデプロイする

マルチサイトまたはマルチドメイン Ceph 環境の RGW ノード間の通信を保護するには、Ceph Object Gateway (RGW) のサブジェクト代替名 (SAN) エントリーを使用した自己署名 SSL/TLS 証明書の設定が不可欠です。このプロセスにより、管理者は複数のドメイン名またはホスト名をサポートする証明書の生成とデプロイメントを自動化できるため、分散デプロイメントの柔軟性が向上し、セキュリティーが強化されます。

SAN 設定で自己署名 Cephadm 証明書をデプロイすると、以下のことが可能になります。

  • RGW サービスの SSL/TLS 証明書を自動的に生成してデプロイします。
  • さまざまなドメインまたはホスト名をサポートするために、複数の SAN エントリーを含めます。
  • 地理的リージョンやドメイン境界を越えても、異なる Ceph クラスター間の RGW ノード間の通信を安全に行います。

このアプローチは、参加しているすべてのノード間の通信を暗号化することで、安全でスケーラブルなマルチサイト RGW のデプロイメントを簡素化します。

前提条件

始める前に、次の前提条件が満たされていることを確認してください。

  • 実行中、および正常な Red Hat Ceph Storage クラスター
  • Ceph Object Gateway ソフトウェアパッケージのインストール
  • OpenSSL ソフトウェアパッケージのインストール
  • Ceph Object Gateway ノードへのルートレベルのアクセスがある。

手順

  1. 現在のディレクトリーに rgw.yml という名前の新規ファイルを作成します。

    [ceph: root@host01 /]# touch rgw.yml

  2. 編集する rgw.yml ファイルを開き、環境に合わせてカスタマイズします。

    構文

    service_type: rgw
    service_id: SERVICE_ID
    service_name: SERVICE_NAME
    placement:
      hosts:
      - HOST_NAME
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: CERT_HASH

    service_type: rgw
    service_id: foo
    service_name: rgw.foo
    placement:
      hosts:
      - host01
    spec:
      ssl: true
      rgw_frontend_ssl_certificate: |
        -----BEGIN RSA PRIVATE KEY-----
        MIIEpAIBAAKCAQEA+Cf4l9OagD6x67HhdCy4Asqw89Zz9ZuGbH50/7ltIMQpJJU0
        gu9ObNtIoC0zabJ7n1jujueYgIpOqGnhRSvsGJiEkgN81NLQ9rqAVaGpadjrNLcM
        bpgqJCZj0vzzmtFBCtenpb5l/EccMFcAydGtGeLP33SaWiZ4Rne56GBInk6SATI/
        JSKweGD1y5GiAWipBR4C74HiAW9q6hCOuSdp/2WQxWT3T1j2sjlqxkHdtInUtwOm
        j5Ism276IndeQ9hR3reFR8PJnKIPx73oTBQ7p9CMR1J4ucq9Ny0J12wQYT00fmJp
        -----END RSA PRIVATE KEY-----
        -----BEGIN CERTIFICATE-----
        MIIEBTCCAu2gAwIBAgIUGfYFsj8HyA9Zv2l600hxzT8+gG4wDQYJKoZIhvcNAQEL
        BQAwgYkxCzAJBgNVBAYTAklOMQwwCgYDVQQIDANLQVIxDDAKBgNVBAcMA0JMUjEM
        MAoGA1UECgwDUkhUMQswCQYDVQQLDAJCVTEkMCIGA1UEAwwbY2VwaC1zc2wtcmhj
        czUtOGRjeHY2LW5vZGU1MR0wGwYJKoZIhvcNAQkBFg5hYmNAcmVkaGF0LmNvbTAe
        -----END CERTIFICATE-----

  3. SSL 設定と SAN 設定を含むサービス仕様ファイルを使用して、Ceph Object Gateway をデプロイします。

    注記

    SSL を使用して rgw サービスをデプロイする前に、必ず rgw_realmrgw_zone、および rgw_zonegroup を作成してください。

    # cat rgw_spec.yaml
    
    service_type: rgw
    service_id: bar
    service_name: rgw.bar
    placement:
      hosts:
        - ceph-pri-hsm-squid-j9zu1f-node5
    spec:
      rgw_frontend_port: 8085
      generate_cert: true
      rgw_realm: india
      rgw_zone: primary
      rgw_zonegroup: shared
      ssl: true
      zonegroup_hostnames:
      - s3.example.com
      - s3.zone1.example.com

検証

Ceph Object Gateway (rgw) デーモンがデプロイされたら、証明書を検証します。

  1. 証明書を取得します。

    構文

    ceph orch cert-store get cert rgw_frontend_ssl_cert --service-name RGW_SERVICE_NAME

  2. OpenSSL を使用して証明書の SAN フィールドを確認します。

    構文

    [root@vm-00 ~]# openssl x509 -in rgw_cert.txt -noout -text

    X509v3 extensions:
    X509v3 Subject Alternative Name:
    DNS:s3.zone1.example.com, DNS:s3.example.com

    X509v3 サブジェクト代替名セクションには、rgw サービス仕様で定義された zonegroup_hostnames に基づいて設定された SAN が表示されます。

Ceph Object Gateway は、マルチゾーンまたはマルチリージョンのデプロイメントに必要な複数のホスト名またはドメインをサポートするための SAN の変更など、SSL/TLS 証明書で設定されるようになりました。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る