4.12. カスタムの SSL 証明書を使用した Satellite Server の設定
デフォルトでは、Red Hat Satellite 6 は自己署名の SSL 証明書を使用して、Satellite Server、外部の Capsule Server および全ホストの間で暗号化した通信ができるようにします。Satellite 自己署名の証明書を使用できない場合には、外部の証明局で署名した SSL 証明書を使用するように Satellite Server を設定できます。
カスタムの証明書で Satellite Server を設定するには、以下の手順を実行します。
- 「Satellite Server 向けのカスタム SSL 証明書の作成」
- 「カスタムの SSL 証明書の Satellite Server へのデプロイ」
- 「ホストへの カスタム SSL 証明書のデプロイ」
- Satellite Server に外部の Capsule Server を登録した場合には、カスタムの SSL 証明書を使用して設定する必要があります。同じ証明局を使用して Satellite Server と Capsule Server の証明書を署名する必要がある。詳細は、Installing Capsule Server の Configuring Capsule Server with a Custom SSL Certificate を参照してください。
4.12.1. Satellite Server 向けのカスタム SSL 証明書の作成 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server 用にカスタムの SSL 証明書を作成します。Satellite Server 用のカスタムの SSL 証明書がある場合にはこの手順は省略してください。
カスタム証明書を使用して Satellite Server を設定する場合には、次の点を考慮してください。
- SSL 証明書には、Privacy-Enhanced Mail (PEM) エンコードを使用する必要がある。
- Satellite Server と Capsule Server の両方に、同じ証明書を使用できない。
- 同じ証明局を使用して Satellite Server と Capsule Server の証明書を署名する必要がある。
手順
ソースの証明書ファイルすべてを保存するには、
rootユーザーだけがアクセスできるディレクトリーを作成します。# mkdir /root/satellite_certCertificate Signing Request (CSR) を署名する秘密鍵を作成します。
秘密鍵は暗号化する必要がないことに注意してください。パスワードで保護された秘密鍵を使用する場合は、秘密鍵のパスワードを削除します。
この Satellite Server の秘密鍵がすでにある場合は、この手順を省略します。
# openssl genrsa -out /root/satellite_cert/satellite_cert_key.pem 4096証明書署名要求 (CSR) 用の
/root/satellite_cert/openssl.cnf設定ファイルを作成して、以下のコンテンツを追加します。[ req ] req_extensions = v3_req distinguished_name = req_distinguished_name x509_extensions = usr_cert prompt = no [ req_distinguished_name ]1 C = Country Name (2 letter code) ST = State or Province Name (full name) L = Locality Name (eg, city) O = Organization Name (eg, company) OU = The division of your organization handling the certificate CN = satellite.example.com2 [ v3_req ] basicConstraints = CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth, clientAuth, codeSigning, emailProtection subjectAltName = @alt_names [ usr_cert ] basicConstraints=CA:FALSE nsCertType = client, server, email keyUsage = nonRepudiation, digitalSignature, keyEncipherment extendedKeyUsage = serverAuth, clientAuth, codeSigning, emailProtection nsComment = "OpenSSL Generated Certificate" subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer [ alt_names ] DNS.1 = satellite.example.com3 - 1
[ req_distinguished_name ]セクションに、貴社の組織の情報を入力します。- 2
- 証明書のコモンネーム
CNを、Satellite Server の完全修飾ドメイン名 (FQDN) と一致するように設定します。FQDN を確認するには、対象の Satellite Server でhostname -fコマンドを入力します。これは、katello-certs-checkコマンドが証明書を正しく検証することを確認するために必要です。 - 3
- サブジェクトの別名 (SAN: Subject Alternative Name)
DNS.1を、お使いのサーバーの完全修飾ドメイン名 (FQDN) に一致する用に設定します。
証明書署名要求 (CSR) を作成します。
# openssl req -new \ -key /root/satellite_cert/satellite_cert_key.pem \1 -config /root/satellite_cert/openssl.cnf \2 -out /root/satellite_cert/satellite_cert_csr.pem3 証明局に証明書署名要求を送信します。同じ証明局を使用して Satellite Server と Capsule Server の証明書を署名する必要がある。
要求を送信する場合は、証明書の有効期限を指定してください。証明書要求を送信する方法は異なるため、推奨される方法について認証局にお問い合わせください。要求への応答で、認証局バンドルと署名済み証明書を別々のファイルで受け取ることになります。
4.12.2. カスタムの SSL 証明書の Satellite Server へのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server が、認証局で署名されたカスタムの SSL 署名書を使用するように設定します。katello-certs-check コマンドは、入力した証明書ファイルを検証して、Satellite Server にカスタムの SSL 証明書をデプロイするのに必要なコマンドを返します。
手順
カスタムの SSL 証明書入力ファイルを検証します。
katello-certs-checkコマンドが正しく実行されるには、証明書のコモンネーム (CN) が Satellite Server の FQDN と一致する必要があることに注意してください。# katello-certs-check \ -c /root/satellite_cert/satellite_cert.pem \1 -k /root/satellite_cert/satellite_cert_key.pem \2 -b /root/satellite_cert/ca_cert_bundle.pem3 このコマンドに成功すると、2 つの
satellite-installerコマンドが返されます。1 つは、Satellite Server に証明書をデプロイするのに使用する必要があります。カスタム証明書を使用して Red Hat Satellite Server をインストールするには、以下を実行します。
satellite-installer --scenario satellite \ --certs-server-cert "/root/satellite_cert/satellite.example.com_cert.pem" \ --certs-server-key "/root/satellite_cert/satellite.example.com_cert_key.pem" \ --certs-server-ca-cert "/root/satellite_cert/CA-Chain.pem"現在実行中の Satellite インストールで証明書を更新するには、以下を実行します。
satellite-installer --scenario satellite \ --certs-server-cert "/root/satellite_cert/satellite.example.com_cert.pem" \ --certs-server-key "/root/satellite_cert/satellite.example.com_cert_key.pem" \ --certs-server-ca-cert "/root/satellite_cert/CA-Chain.pem" \ --certs-update-server \ --certs-update-server-ca要件に合わせて、
satellite-installerコマンドを入力し、カスタムの SSL 証明書で新しい Satellite Server をインストールするか、現在実行中の Satellite Server の証明書を更新します。katello-certs-checkコマンドの出力は正確でない場合があります。したがって、コマンド出力ではなく、上記の手順に従う必要があります。実行するコマンドが不明な場合には、
/etc/foreman-installer/scenarios.d/.installedが存在するかをチェックし、Satellite がインストールされていることが確認できます。ファイルが存在する場合には、2 番目のsatellite-installerコマンドを実行すると証明書が更新されます。重要証明書のデプロイ後に、証明書のアーカイブファイルを削除しないでください。Satellite Server のアップグレード時などに必要です。
-
Satellite Server にネットワークでアクセスできるコンピューターで、この URL (
https://satellite.example.com) に移動します。 - ブラウザーで、証明書の詳細を表示して、デプロイした証明書を確認します。
4.12.3. ホストへの カスタム SSL 証明書のデプロイ リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server がカスタムの SSL 証明書を使用する用に設定した後に、Satellite Server に登録されている全ホストに katello-ca-consumer パッケージもインストールする必要があります。
手順
各ホストに
katello-ca-consumerパッケージをインストールします。# yum localinstall \ http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm