検索

第2章 認証とセキュリティー

download PDF

2.1. TLS/SSL 証明書

Red Hat Virtualization API には、Hypertext Transfer Protocol Secure (HTTPS) 脚注が必要です:[SDK や CLI コンポーネントなどのクライアントソフトウェアと安全にやり取りするためには、RFC 2818: HTTP Over TLS を参照してください。これには、サーバーが使用する CA 証明書 を取得して、クライアントの証明書ストアにインポートする必要があります。

2.1.1. CA 証明書の取得

Red Hat Virtualization Manager から CA 証明書を取得し、以下のいずれかの方法でクライアントマシンに転送できます。

方法 1

CA 証明書の取得で推奨の方法は、openssl s_client コマンドラインツールを使用してサーバーとの実際の TLS ハンドシェイクを実行し、サーバーが提示する証明書を抽出する方法です。

  1. 以下の例のように、openssl s_client コマンドを実行します。

    $ openssl s_client \
    -connect myengine.example.com:443 \
    -showcerts \
    < /dev/null

    出力例

    CONNECTED(00000003)
    depth=1 C = US, O = Example Inc., CN = myengine.example.com.23416
    verify error:num=19:self signed certificate in certificate chain
    ---
    Certificate chain
     0 s:/C=US/O=Example Inc./CN=myengine.example.com
       i:/C=US/O=Example Inc./CN=myengine.example.com.23416
    -----BEGIN CERTIFICATE-----
    MIIEaTCCA1GgAwIBAgICEAQwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx
    FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs
    SVlJe7e5FTEtHJGTAeWWM6dGbsFhip5VXM0gfqg=
    -----END CERTIFICATE-----
     1 s:/C=US/O=Example Inc./CN=myengine.example.com.23416
       i:/C=US/O=Example Inc./CN=myengine.example.com.23416
    -----BEGIN CERTIFICATE-----
    MIIDxjCCAq6gAwIBAgICEAAwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx
    FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs
    Pkyg1rQHR6ebGQ==
    -----END CERTIFICATE-----

    -----BEGIN CERTIFICATE----- 行と -----END CERTIFICATE----- 行の間のテキストは、サーバーで提示された証明書が表示されています。

    最初の証明書は、サーバー自体の証明書です。2 番目の証明書は、CA の証明書です。

  2. 以下の例のように、-----BEGIN CERTIFICATE----- 行と -----END CERTIFICATE----- 行を含む CA 証明書を ca.crt ファイルにコピーします。

    -----BEGIN CERTIFICATE-----
    MIIDxjCCAq6gAwIBAgICEAAwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx
    FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs
    Pkyg1rQHR6ebGQ==
    -----END CERTIFICATE-----
    重要

    これは、サーバーが使用する CA 証明書を取得する最も信頼性の高い方法です。ここで説明されている残りの方法はほとんどの場合に機能しますが、証明書がサーバー管理者によって手動で置き換えられた場合は、正しい CA 証明書を取得することはできません。

方法 2

openssl s_client を使用して証明書を取得できない場合は、curlwget などのコマンドラインツールを使用して、Red Hat Virtualization Manager から CA 証明書をダウンロードすることができます。curlwget は複数のプラットフォームで利用できます。

  • curl を使用している場合:

    $ curl \
    --output ca.crt \
    'http://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA'
  • wget を使用している場合:

    $ wget \
    --output-document ca.crt \
    'http://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA'
方法 3

Web ブラウザーを使用して、`https://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA` にある証明書に移動します。

選択したブラウザーによって、証明書はダウンロードされるか、またはブラウザーのキーストアにインポートされます。

  • ブラウザーで証明書をダウンロードした場合は、ファイルを ca.crt として保存します。
  • ブラウザーが証明書をインポートする場合は、ブラウザーの証明書管理オプションを使用してエクスポートし、ca.crt として保存します。
方法 4

Red Hat Virtualization Manager にログインし、トラストストアから証明書をエクスポートして、クライアントマシンにコピーします。

  1. Red Hat Virtualization Manager マシンに root としてログインします。
  2. Java keytool 管理ユーティリティーを使用して、トラストストアから証明書をエクスポートします。

    # keytool \
    -keystore /etc/pki/ovirt-engine/.truststore \
    -storepass mypass \
    -exportcert \
    -alias cacert \
    -rfc \
    -file ca.crt

    これにより、ca.crt という名前の証明書ファイルが作成されます。

  3. scp コマンドを使用して、証明書をクライアントマシンにコピーします。

    $ scp ca.crt myuser@myclient.example.com:/home/myuser/.

    これらの各メソッドにより、クライアントマシンの ca.crt という名前の証明書ファイルが作成されます。次に、このファイルをクライアントの証明書ストアにインポートする必要があります。

2.1.2. クライアントへの証明書のインポート

クライアントへの証明書のインポートは、クライアントが証明書を保存し、解釈する方法に依存します。証明書のインポートに関する詳細は、クライアントのドキュメントを参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

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

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

会社概要

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

© 2024 Red Hat, Inc.