インストール後のプロセスの一環として、SSL (Secure Sockets Layer) 証明書を設定できます。SaltStack Config のインストール時に SSL 証明書を設定するのはオプションですが、推奨されます。
開始する前に
SSL 証明書の設定はインストール後の一連の手順の 1 つであり、特定の順序で実行する必要があります。まず、インストール シナリオのいずれかを完了してから、次のインストール後の手順に関するページを確認します。
SSL 証明書の設定と構成
SSL 証明書を作成するには、次の手順に従います。
- インストール後に SSL を構成するには、
python36-pyOpenSSL
パッケージをインストールする必要があります。通常、この手順はインストールの前に完了しています。インストール前にこれをインストールできなかった場合、ここでインストールできます。この依存関係を確認してインストールする手順については、Salt のインストールまたはアップグレードを参照してください。 - RaaS サービスの証明書フォルダの権限を作成して設定します。
sudo mkdir -p /etc/raas/pki sudo chown raas:raas /etc/raas/pki sudo chmod 750 /etc/raas/pki
- Salt を使用して RaaS サービスのキーを生成するか、独自のキーを指定します。
sudo salt-call --local tls.create_self_signed_cert tls_dir=raas sudo chown raas:raas /etc/pki/raas/certs/localhost.crt sudo chown raas:raas /etc/pki/raas/certs/localhost.key sudo chmod 400 /etc/pki/raas/certs/localhost.crt sudo chmod 400 /etc/pki/raas/certs/localhost.key
- SaltStack Config ユーザー インターフェイスへの SSL 接続を有効にするには、PEM でエンコードされた SSL 証明書を生成するか、PEM でエンコードされた既存の証明書へのアクセス権を持っている必要があります。
- 前の手順で生成した
.crt
および.key
ファイルを RaaS ノードの/etc/pki/raas/certs
に保存します。 - テキスト エディタで
/etc/raas/raas
を開いて、RaaS サービスの構成を更新します。<filename>
を SSL 証明書ファイルの名前に置き換えて、次の値を設定します。tls_crt:/etc/pki/raas/certs/<filename>.crt tls_key:/etc/pki/raas/certs/<filename>.key port:443
- RaaS サービスを再起動します。
sudo systemctl restart raas
- RaaS サービスが実行されていることを確認します。
sudo systemctl status raas
- Web ブラウザで組織のカスタム SaltStack Config URL に移動し、認証情報を入力することにより、ユーザー インターフェイスに接続できることを確認します。ログインの詳細については、初回ログインとデフォルトの認証情報の変更を参照してください。
これで、SaltStack Config の SSL 証明書が設定されました。
SSL 証明書の更新
SaltStack Config の SSL 証明書を更新する手順については、VMware ナレッジベースを参照してください。詳細については、How to update SSL certificates for SaltStack Configを参照してください。
vRealize Automation を含む SaltStack Config 環境で自己署名証明書を使用している場合のトラブルシューティング
この回避策は、標準以外の認証局によって署名された証明書を使用する vRealize Automation 展開で作業しているユーザーを対象にしています。
SaltStack Config で、次の症状が発生することがあります。
- vRealize Automation を初めて開いたとき、証明書を検証できないことを示すセキュリティ警告が Web ブラウザの URL の横または表示画面に表示されます。
- Web ブラウザで SaltStack Config ユーザー インターフェイスを開くと、403 エラーまたは空白の画面が表示されることがあります。
これらの症状は、vRealize Automation 展開で標準以外の認証局によって署名された証明書が使用されている場合に発生する可能性があります。それが原因で SaltStack Config に空白画面が表示されているのかどうかを確認するには、SaltStack Config をホストしているノードに SSH 接続し、RaaS ログ ファイル (/var/log/raas/raas
) を確認します。自己署名証明書が許可されていないことを示すトレースバック エラー メッセージが記録されている場合は、次の回避策でこの問題を解決できる可能性があります。
セキュリティ上のベスト プラクティスとして、自己署名証明書または適切に署名されていない証明書を使用した vRealize Automation または SaltStack Config の認証を本番環境に設定しないようにします。代わりに、信頼されている認証局からの証明書を使用することが推奨されます。
自己署名証明書、または不適切に署名された証明書を使用する場合は、システムにセキュリティ侵害の深刻なリスクが発生する可能性があります。この手順を使用する場合は注意して続行してください。
この問題が発生した環境で、標準以外の認証局によって署名された証明書を引き続き使用する必要がある場合は、次の回避策で説明するように、vRealize Automation 証明書認証局を SaltStack Config 環境に追加します。
この回避策では以下が必須です。
- root アクセス権限
- RaaS サーバに SSH 接続する機能
セキュリティ上のベスト プラクティスの追加として、組織内で最も信頼されている重役の個人にのみ、このレベルのアクセス権を付与する必要があります。環境への root アクセスの制限は慎重に実行する必要があります。
自己署名証明書を使用するよりも、プライベート認証局を作成して自分の vRealize Automation 証明書にその認証局で署名する方が容易な場合があります。この方法のメリットは、必要なすべての vRealize Automation 証明書に対し、このプロセスを 1 回実行するだけで済むことです。これ以外の方法では、作成するすべての vRealize Automation 証明書についてこのプロセスを実行する必要があります。プライベート認証局の作成の詳細については、How do you sign a certificate request with your own certification authority (Stack Overflow)を参照してください。
標準以外の認証局によって署名された証明書を SaltStack Config で認証局のリストに追加するには、次の手順を実行します。
- ブラウザで vRealize Automation Web インターフェイスを開きます。証明書によってブラウザ ウィンドウと URL 表示に警告メッセージが表示されます。
- 必要な証明書をダウンロードします。
- [Chrome ブラウザの場合:]URL 表示の [安全ではありません] という警告をクリックしてメニューを開きます。[証明書(無効)] を選択します。不足している証明書をローカル コンピュータのファイル エクスプローラまたは Finder にドラッグして保存します。使用可能な場合は、証明書署名者 (CA) を選択します。証明書のアイコンをクリックし、ローカル コンピュータのファイル エクスプローラにドラッグします。ファイル拡張子が .pem でない(.crt、.cer、.der)場合は、次のコマンドを使用して .pem 形式に変換します。
openssl x509 -inform der -in certificate.cer -out certificate.pem
- [Firefox ブラウザの場合:]URL 表示の警告アイコンをクリックしてメニューを開きます。[この接続は安全ではありません] > [詳細情報] の順に選択します。ダイアログ ボックスで [証明書の表示] をクリックします。不足している証明書をクリックして、ローカル コンピュータのファイル システムにダウンロードします。
- [Chrome ブラウザの場合:]URL 表示の [安全ではありません] という警告をクリックしてメニューを開きます。[証明書(無効)] を選択します。不足している証明書をローカル コンピュータのファイル エクスプローラまたは Finder にドラッグして保存します。使用可能な場合は、証明書署名者 (CA) を選択します。証明書のアイコンをクリックし、ローカル コンピュータのファイル エクスプローラにドラッグします。ファイル拡張子が .pem でない(.crt、.cer、.der)場合は、次のコマンドを使用して .pem 形式に変換します。
- まだ接続していない場合は、RaaS サーバに SSH で接続します。
- このディレクトリ内のファイル (
/etc/pki/tls/certs/ca-bundle.crt
) の末尾に証明書ファイルを追加します。次のコマンドのサンプル ファイル名を実際のファイル名に置き換えて使用することで、証明書をファイルの末尾に追加できます。cat <certificate-file>.crt >> /etc/pki/tls/certs/ca-bundle.crt
注:このコマンドを使用して、
.pem
拡張子を持つファイルをコピーすることもできます。 /usr/lib/systemd/system
ディレクトリに移動し、エディタでraas.service
ファイルを開きます。このファイルの ExecStart 行よりも上の任意の場所に、次の行を追加します。Environment=REQUESTS_CA_BUNDLE=/etc/pki/tls/certs/ca-bundle.crt
- デーモンを再ロードし、次のコマンドを使用して RaaS を再起動します。
systemctl daemon-reload systemctl stop raas rm /var/log/raas/raas systemctl start raas tail -f /var/log/raas/raas
注:tail -f /var/log/raas/raas
を使用すると RaaS ログ ファイルが継続的に表示されるため、トラブルシューティングに役立つ場合があります。 - SaltStack Config Web インターフェイスにログインして、この回避策によって問題が解決されたことを確認します。問題が解決されている場合は、SaltStack Config の [ダッシュボード] 画面が表示されます。
次の手順
SSL 証明書を設定した後、インストール後の手順がさらに必要な場合があります。
SaltStack SecOps を使用している場合は、次の手順でこれらのサービスを設定します。詳細については、SaltStack SecOps の構成を参照してください。
インストール後に必要なすべての手順を完了したら、次の手順では SaltStack Config を vRealize Automation SaltStack SecOps と統合します。詳細については、vRealize Automation との SaltStack Config 統合の作成を参照してください。