この章では、Socket Layer (SSL) を使用して通信を行うように Sun N1 Service Provisioning System 5.2 を構成する方法について説明しています。この章の内容は、次のとおりです。
SSL は、IP ネットワーク上の通信を保護するためのプロトコルです。SSL は、TCP/IP ソケット技術を使用してクライアントとサーバー間のメッセージ交換を行い、RSA が開発した公開 / 非公開鍵ペア暗号化システムを使用してそのメッセージを保護します。SSL は、ほとんどの Web サーバー製品でサポートされるほか、Netscape Navigator ブラウザと Microsoft Web ブラウザでもサポートされます。
メッセージの傍受や改ざんを防止するため、ネットワーク通信に SSL を使用するように Sun N1 Service Provisioning System 5.2 アプリケーションを構成できます。また、通信前に SSL を使用して認証を行うようにアプリケーションを構成すれば、ネットワークセキュリティーがさらに高まります。
サーバーとクライアント間の相互認証、証明書の送信、セッション鍵の確立などのために、SSL プロトコルでは各種の暗号アルゴリズム (暗号方式) がサポートされます。認証が行われるかどうかは、SSL が接続に使用する暗号群によって決まります。
暗号群は慎重に選択する必要があります。各アプリケーションの設定では、ノードが要求する最小限のセキュリティーを提供する暗号群だけを有効にしてください。SSL は、クライアントとサーバーの双方がサポートする暗号群の中からもっともセキュリティーレベルの高い暗号群を使用します。低セキュリティーの暗号群を有効にすると、Sun 以外のクライアントは暗号群のネゴシエーションの際にセキュリティーレベルがもっとも低い暗号群しかサポートしなくなり、サーバーはセキュリティーレベルが比較的低い暗号群の使用を余儀なくされる可能性があります。
SSL は、次のモードで動作します。
暗号化のみ (認証なし) – 接続は暗号化されるが、接続するアプリケーションの認証は行われません。
サーバーの認証 – クライアントは接続先であるサーバーの認証を行います。
サーバーとクライアントの認証 – クライアントとサーバーの双方が互いに認証し合います。
インストール時にアプリケーション間の通信を保護する手段として SSL を選択すると、使用する暗号群の選択を求めるメッセージが表示されます。暗号群の値は、net.ssl.cipher.suites の値として config.properties ファイルに格納されます。暗号群の値は、選択に応じて次のように設定できます。
「暗号化のみ (認証なし)」を選択した場合、暗号群は SSL_DH_anon_WITH_3DES_EDE_CBC_SHA に設定されます。
「暗号化 (認証あり)」を選択した場合、暗号群は SSL_RSA_WITH_3DES_EDE_CBC_SHA に設定されます。
AIX サーバー上のローカルディストリビュータで SSL を使用する場合、SSL 暗号群は認証による暗号化に設定されます。認証を伴わない暗号化は、AIX サーバーで稼働しているローカルディストリビュータでは利用できません。
サーバー認証を必要とする SSL 暗号群とサーバー認証を必要としない SSL 暗号群の一覧は、「SSL 暗号群」を参照してください。クライアント認証は、サーバー認証を必要とする暗号群だけを対象に構成することもできます。
Sun N1 Service Provisioning System 5.2 アプリケーションの SSL 構成は、認証を伴わない暗号化と認証を伴う暗号化のどちらも行えます。認証を伴う暗号化では、クライアントとサーバーの認証が行われます。前述のような構成が可能ですが、認証を伴う暗号化がもっとも安全です。
Sun N1 Service Provisioning System 5.2 は、自己署名付き証明書と認証局によって署名される証明書をサポートします。次の 2 種類のキーストアがあります。
プライベートキーストア – アプリケーションがほかのアプリケーションに接続する際にそれ自体の認証に使用する公開 / 非公開鍵ペアが格納されます。
トラストキーストア – キーストアによって信頼されアプリケーションへの接続が許可されるその他のアプリケーションの公開鍵が、自己署名付き証明書の形で格納されます。
「クライアントとサーバーの相互認証」で SSL を有効にした場合は、有効にした各アプリケーションに、SSL が使用する 2 つのキーストアを構成する必要があります。その 1 つは、SSL がほかのアプリケーションに対しそれ自体を認証するためのキーストアで、もう 1 つはほかのアプリケーションを認証するためのキーストアです。
「サーバーのみの認証」で SSL を有効にした場合は、SSL サーバーとして機能するアプリケーションにはプライベートキーストア、SSL クライアントとして機能するアプリケーションには公開 (トラステッド) キーストアが必要になります。公開キーストアは、Java Secure Sockets Extension (JSSE) v1.0.3 によって提供されている独自の JKS フォーマットになります。
これらのキーストアは、どちらもパスワードを指定する必要があります。このパスワードは、両キーストアで同一のものでなければなりません。
例として、アプリケーション A (SSL クライアント) とアプリケーション B (SSL サーバー) を SSL を使用して相互接続する場合を考えてみましょう。両方とも、サーバー認証を要求する暗号群を使用するように構成されています。アプリケーション B は、そのプライベートキーストアに公開 / 非公開鍵ペアが格納されていなければなりません。一方アプリケーション A は、そのトラストキーストアにアプリケーション B の公開鍵が格納されていなければなりません。アプリケーション A がアプリケーション B への接続を試みると、アプリケーション B はアプリケーション A に公開鍵を送信します。アプリケーション A は、トラストキーストア内にこの公開鍵が入っているかを確認することによってこの鍵を検証できます。
クライアント認証を要求するようにアプリケーション B が構成されている場合、アプリケーション A のプライベートキーストアには公開 / 非公開鍵ペアが格納されていなければなりません。同時に、アプリケーション B のトラストキーストアにはアプリケーション A の公開鍵が格納されている必要があります。アプリケーション A がアプリケーション B の認証を行なったあと、アプリケーション B はそのトラストキーストアに鍵が入っているかを確認することによってアプリケーション A の公開鍵を検証できます。
crkeys コマンドを使用してキーストアを生成する場合は、-mode upstream|downstream オプションを使用して、認証を実行しているマシンとの関係上での認証されているマシンの場所を指定します。SSL 接続の試行時には、接続の妥当性検査を行うサーバーが、証明書を送信したサーバーの相対的な位置に一致するモードが受信した証明書に含まれていることを確認します。たとえば、ローカルディストリビュータがマスターサーバーから SSL 接続要求を受信するとします。ローカルディストリビュータは、マスターサーバー証明書に downstream 注釈が含まれていないことを確認します。
サーバーは、証明書に upstream 注釈が含まれているかどうかは確認しません。サーバーが確認するのは、証明書に downstream 注釈が含まれていないことだけです。この結果、もともと upstream 注釈なしの SSL を使用するように構成されていたサーバーはいずれも、接続に、引き続き SSL を使用します。
CLI クライアントからアップストリームになれるサーバーはないため、CLI クライアントは、upstream 注釈のある証明書を転送するサーバーとの接続の妥当性を証明できません。リモートエージェントからダウンストリームになれるサーバーはないため、リモートエージェントは、downstream 注釈のある証明書を転送するサーバーとの接続の妥当性を証明できません。
トラストキーストアの処理にパスワードを指定した場合、このパスワードはキーストアの整合性の検査にだけ使用されます。このパスワードはトラストキーストアのコンテンツに対するアクセスは防止しませんが、トラストキーストアの更新は防止します。ユーザーは、パスワードを指定しなければキーストアの内容を変更することはできません。
プライベートキーストアの処理にパスワードを指定した場合、このパスワードは、キーストアの整合性の検査、キーストアの内容の更新の禁止、非公開鍵のアクセスの暗号化と保護に使用されます。
crkeys コマンドは、両方のキーストアに同一のパスワードが指定されているかどうかの確認に使用されます。証明書をインポートして初めてトラストストアを作成するときに、プライベートストア内にパスワードが存在すると、これと同じパスワードが crkeys スクリプトによってトラストストアに設定されます。 同様に、初めてプライベートストアを作成するときに、トラストストア内にパスワードが存在すると、これと同じパスワードが crkeys スクリプトによってプライベートストアに設定されます。
crkeys コマンドを使用すると、符号化されたキーストアパスワードを作成できます。符号化されたパスワードは、キーストアパスワードを保存するどのプロパティファイルでも使用できます。安全性は、プロパティファイルに符号化されたパスワードを保存するほうが、プロパティファイルにプレーンテキストのパスワードを保存するより優れています。
Sun N1 Service Provisioning System 5.2 の SSL 実装には、次のような制限があります。
トラストキーストアとプライベートキーストアには同じパスワードを設定する必要があります。また、プライベートキーストア内において、ストア内の各キーのパスワードはストアパスワードと同じでなければなりません。この制限は、キーの作成に使用された crkeys スクリプトによって適用されます。
CLI Client アプリケーションのクライアント認証を有効に設定することはできますが、セキュリティーの制限上この設定はサポートされません。CLI Client アプリケーションは、キーストアパスワードの入力を求めるプロンプトを表示しません。キーストアが作成されている場合は、符号化パスワードを CLI Client プロパティファイルに指定する必要があります。
Sun N1 Service Provisioning System 5.2 は、接続する側と接続される側で同一のトラストキーストアを使用します。このため、たとえばマスターサーバーがリモートエージェントに接続し、その公開鍵を信頼するとします。リモートエージェントが危険にさらされた場合、CLI Client がクライアント認証を使用するように設定されていれば、リモートエージェントの鍵を使用して、マスターサーバーに対して CLI Client の認証を行えます。同様に、ローカルディストリビュータがリモートエージェントに接続し、リモートエージェントが危険にさらされた場合、ローカルディストリビュータを使用してマスターサーバーにコマンドを発行できます。
このような問題からマスターサーバーとローカルディストリビュータを保護するには、それらに接続を認められているサーバーからの接続だけを受け入れるようにアプリケーションを設定します。ローカルディストリビュータは、その親ノードからの接続だけを受け入れるようにし、マスターサーバーは指定されている CLI ホストからの接続だけを受け入れるようにします。手順については、第 9 章「Java 仮想マシンのセキュリティーポリシーの構成」を参照してください。
SSH 接続の場合、リモートアプリケーション (ローカルディストリビュータまたはリモートエージェント) は自動的に起動します。これらのアプリケーションを起動するキーストアパスワードの入力プロンプトは表示されません。ただし、アプリケーションがキーストアを使用して初期化されている場合は、キーストアの符号化されたパスワードをプロパティファイルに指定する必要があります。
SSH を使ってマスターサーバーに接続するように CLI Client を構成した場合、CLI Client は、ソケット経由でマスターサーバーに接続する SshProxy アプリケーションを利用してマスターサーバーに接続します。SshProxy は SSL 経由でマスターサーバーに接続できますが、この構成はサポートされていません。
Windows アプリケーションの場合、符号化されたキーストアパスワードをプロパティファイルで指定する必要があります。
次に、SSL を使用するように Sun N1 Service Provisioning System 5.2 を構成するために必要な作業の概要を示します。
使用する SSL 接続を決定します。
詳細については、「Sun N1 Service Provisioning System 5.2 での SSL サポートの概要」を参照してください。
crkeys コマンドを使用してキーストアを作成します。
「キーストアを作成する」を参照してください。
config.properties ファイルを編集して SSL を構成します。
「config.properties ファイルを編集して SSL を構成する」を参照してください。
Sun N1 Service Provisioning System 5.2 は、JRE に付属のキーツールユーティリティーを使用します。 このキーツールユーティリティーは、ユーザーがキーストアを作成できるようにシェルスクリプト crkeys にラップされています。このスクリプトを使用してユーザーは、keytool ユーティリティーに正しいパラメータを指定することができます。
キーストアを作成すると、自己署名付き証明書の X.509 識別名が次のように設定されます。
CN=application_name OU=Engineering O=Sun Microsystems Inc L=Menlo Park ST=CA C=US |
キーを生成します。
% crkeys -options |
使用する SSL 接続の種類にもとづいてキーストアを作成する場合、次のオプションを使用します。
証明書または鍵ペアの別名を指定します。アプリケーションのホスト名を別名として使用します。別名は、キーストア内で一意でなければなりません。
認証を実行しているマシンとの関係で認証されているマシンの場所を指定します。たとえば、ローカルディストリビュータからダウンストリームのリモートエージェントの証明書を生成しているとします。リモートエージェントのモードをダウンストリームに指定します。ローカルディストリビュータのモードをアップストリームに指定します。
キーストアとキーストア内のすべてのキーのパスワードを変更します。
エンティティを指定し、鍵のペアまたは証明書をキーストアから削除します。
プレーンテキストのパスワードを符号化されたパスワードに変換し、出力します。ファイルにパスワードを格納する予定の場合は、符号化されたパスワードを作成します。たとえば、 config.properties ファイルにキーストアパスワードを格納することを選択した場合は、符号化されたパスワードを指定する必要があります。
エンティティを指定し、自己署名付き証明書を特定のファイルにエクスポートします。
証明書のインポート元またはエクスポート先となるファイルの名前を指定します。
別名を指定して新しい鍵ペアを生成します。
すべてのオプションを一覧で表示します。
このノードへの接続を許可されたエンティティの自己署名付き証明書をインポートします。証明書をインポートする際は、この証明書に記載されたノードのホスト名を別名として使用します。
鍵生成アルゴリズム。デフォルトは RSA です。RSA または DSA を指定できます。
キーサイズ。デフォルトは 1024 です。DSA 鍵の場合は 512 から 1024、RSA 鍵の場合は 512 から 2048 の範囲内の 64 の倍数を指定できます。
キーストアに格納されているすべてのエンティティを一覧で表示します。
キーストアとキーストア内のすべてのキーの新しいパスワードを指定します。パスワードの長さは、6 文字以上でなければなりません。
キーストアのパスワードを指定します。パスワードを指定しないと、ユーザーにパスワードの入力を求めるプロンプトが表示されます。パスワードの長さは、6 文字以上でなければなりません。
操作の対象として、プライベートキーストアを指定します。
自己署名付き証明書の有効期間を日数で指定します。
操作の対象としてトラストキーストアを指定します。
次に、crkeys コマンドの使用例を示します。
公開 / 非公開鍵ペアを生成するには、次を実行します。
crkeys -private –generate -mode {upstream|downstream} –alias application_hostname [-keyalg keyalg] [-keysize keysize] [-validity days_valid] [–password password] |
鍵ペアの自己署名付き公開鍵をファイルにエクスポートするには、次を実行します。
crkeys -private –export –file cert_file –alias application_hostname [–password password] |
前の例のようにしてエクスポートした自己署名付き公開鍵をトラストストアにインポートするには、次を実行します。
crkeys –trust –import –file cert_file –alias application_hostname [-password password] |
鍵または鍵ペアを削除するには、次を実行します。
crkeys {-private|–trust} -delete –alias application_hostname [-password password] |
すべての公開鍵を一覧表示するには、次を実行します。
crkeys {-private|–trust} –list [-password password] |
SSL キーストア (トラストキーストアとプライベートキーストア) のパスワードを変更するには、次を実行します。
crkeys –cpass -password oldpassword -new newpassword |
プレーンテキストのパスワードを符号化されたパスワードに変換し、出力するには、次を実行します。
crkeys -epass -password password |
crkeys コマンドの使用方法を出力するには、次を実行します。
crkeys -help |
インストール時に、各アプリケーションは次のように構成されます。
サーバー認証を要求する暗号群をサポートする
クライアント認証は要求しない
N1SPS5.2-home /app/data/private.store ファイルでプライベートキーストアを検索します。
N1SPS5.2-home /app/data/trust.store ファイルでトラストキーストアを検索します。
各キーストアに空のパスワードを渡す
アプリケーションごとに、次のセキュリティーチェックが行われるように SSL 構成を変更することができます。
各アプリケーションの暗号群を選択的に有効化します。
有効化する暗号群を明示的に指定できます。指定しない場合、リファレンス実装はデフォルトで有効になっている暗号群を使用します。リファレンス実装によって有効化されるデフォルトの暗号群は、サーバー認証を要求します。サポートされる暗号群については、「SSL 暗号群」を参照してください。
接続を求めてくる SSL クライアントをアプリケーションが認証するように指定します。
プライベートキーストアおよびトラストキーストアの場所とパスワードを指定します。
認証を有効にするには、アプリケーションをインストールしたあとでキーストアを初期化する必要があります。
(省略可能) config.properties ファイルを手動で編集し、SSL 構成を変更します。
次に、config.properties ファイル内の SSL 構成関連の設定を示します。使用する SSL 接続の種類に応じて、パラメータを変更してください。
パラメータ |
デフォルト値 |
説明 |
---|---|---|
net.ssl.cipher.suites |
SSL_RSA_WITH_3DES_EDE_CBC_SHA |
有効にする SSL 暗号群をコンマで区切って表示します。サポートされている一連の SSL 暗号群については、「SSL 暗号群」 を参照してください。 |
net.ssl.client.auth |
false |
SSL サーバーで、接続するクライアントを認証するかどうかを指定します。 |
net.ssl.key.store.pass |
|
キーストアのパスワード。場合に応じて要求されます。詳細については、以下を参照してください。 |
net.ssl.key.store.pass パラメータは、Sun N1 Service Provisioning System 5.2 アプリケーションの SSL キーストアパスワードを指定します。このパラメータは、SSL キーストアを使用してアプリケーションを構成するが、アプリケーションの起動時にそのキーストアのパスワードを尋ねるプロンプトを表示させないようにする場合に使用してください。次のような場合には、このパラメータを指定する必要があります。
システムのブート時に自動的に起動するように Sun N1 Service Provisioning System アプリケーションを設定する場合。
Windows サーバーでは、Sun N1 Service Provisioning System アプリケーションはキーストアパスワードを求めるプロンプトを表示しません。このため、Windows サーバー上で SSL を使用するように構成されるアプリケーションはすべて、このパラメータを指定する必要があります。
CLI アプリケーションは、キーストアパスワードを求めるプロンプトを表示しません。このため、SSL を使用するように構成する CLI Client はすべてこのパラメータを指定する必要があります。
ローカルディストリビュータが SSH 経由でその親に接続される場合、ローカルディストリビュータはパスワードを求めるプロンプトを表示できません。
マスターサーバー、ローカルディストリビュータ、リモートエージェントをインストールします。インストールプログラムが接続の種類を選択するように求めた場合に、SSL を選択します。暗号群を選択するように求められた場合、認証を伴わない暗号化を選択します。
各アプリケーションの config.properties ファイルに、次のプロパティを追加します。
net.ssl.cipher.suites=SSL_DH_anon_WITH_3DES_EDE_CBC_SHA |
複数の暗号群または異なる暗号群を有効にできます。複数の暗号群を有効にする場合は、パラメータとして、暗号群をコンマで区切ったリストを指定します。
ブラウザインタフェースで、新しいホストを作成します。
作成したホストで、接続タイプ SSL のローカルディストリビュータを追加します。
ローカルディストリビュータとの接続をテストします。
新しいホストを作成します。
作成したホストで、接続タイプ SSL のリモートエージェントを追加します。
リモートエージェントとの接続をテストします。
サーバー認証を要求する暗号群はデフォルトで有効になっています。したがって、暗号群を有効にするために config.properties ファイルに変更を加える必要はありません。
ローカルディストリビュータ用の鍵ペアを生成し、ローカルディストリビュータのプライベートキーストアに格納します。-mode downstream を指定します。
% ld/bin/crkeys –private –generate -mode downstream –alias ldhostname-downstream.cr.com –validity 365 |
ローカルディストリビュータ上のプライベートキーストア内の自己署名付き証明書をファイルにエクスポートします。
% ld/bin/crkeys –private –export –file ld-downstream.cert –alias ldhostname-downstream.cr.com |
ローカルディストリビュータの自己署名付き証明書をマスターサーバーにコピーします。
自己署名付き証明書をマスターサーバー のトラストキーストアにインポートします。
% server/bin/crkeys –trust –import –file ld-downstream.cert –alias ldhostname-downstream.cr.com |
新しいホストを作成します。
新しいホストで、接続タイプ SSL のローカルディストリビュータを追加します。
ローカルディストリビュータに対し、CLI net.gencfg コマンドを使用して、手動で transport.config ファイルを生成します。
transport.config ファイルをローカルディストリビュータにコピーします。
マスターサーバーとローカルディストリビュータが稼働している場合は、これらを停止して起動します。
マスターサーバーとローカルディストリビュータを起動します。
マスターサーバーとローカルディストリビュータのキーストアのパスワードを入力します。
ローカルディストリビュータとの接続をテストします。
リモートエージェント用の鍵ペアを生成し、リモートエージェントのプライベートストアに格納します。-mode downstream を指定します。
% agent/bin/crkeys –private –generate -mode downstream –alias rahostname-downstream.cr.com –validity 365 |
リモートエージェント上のプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% agent/bin/crkeys –private –export –file ra-downstream.cert –alias rahostname-downstream.cr.com |
リモートエージェントの自己署名付き証明書をローカルディストリビュータにコピーします。
自己署名付き証明書をローカルディストリビュータのトラストストアにインポートします。
% ld/bin/crkeys –trust –import –file ra-downstream.cert –alias rahostname-downstream.cr.com |
新しいホストを作成します。
新しいホストで、接続タイプ SSL のリモートエージェントを追加します。
リモートエージェントに対し、CLI net.gencfg コマンドを使って、手動で transport.config ファイルを生成します。
transport.config ファイルをリモートエージェントにコピーします。
ローカルディストリビュータとリモートエージェントが稼働している場合は、これらを停止します。
ローカルディストリビュータとリモートエージェントを起動します。
ローカルディストリビュータとリモートエージェントのキーストアのパスワードを入力します。
リモートエージェントとの接続をテストします。
マスターサーバー、ローカルディストリビュータ、リモートエージェントをインストールします。インストールプログラムが接続の種類を選択するように求めた場合に、SSL を選択します。暗号群を選択するように求められる際に、認証を伴う暗号化を選択します。
config.properties ファイルを編集して、使用する暗号群と符号化されたキーストアパスワードを含めます。
すべてのホストで同じキーストアパスワードを使用する必要があります。
ローカルディストリビュータ用の鍵ペアを生成し、ローカルディストリビュータのプライベートストアに格納します。-mode downstream を指定します。
% ld/bin/crkeys –private –generate -mode downstream –alias ldhostname-downstream.cr.com –validity 365 |
マスターサーバー用の鍵ペアを生成し、マスターサーバーのプライベートストアに格納します。-mode upstream を指定します。
% server/bin/crkeys –private –generate -mode upstream –alias mshostname-upstream.cr.com –validity 365 |
ローカルディストリビュータ上のプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% ld/bin/crkeys –private –export –file ld-downstream.cert –alias ldhostname-downstream.cr.com |
ローカルディストリビュータの自己署名付き証明書をマスターサーバーにコピーします。
自己署名付き証明書をマスターサーバーのトラストストアにインポートします。
% server/bin/crkeys –trust –import –file ld-downstream.cert –alias ldhostname-downstream.cr.com |
マスターサーバーのプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% server/bin/crkeys –private –export –file ms-upstream.cert –alias mshostname-upstream.cr.com |
マスターサーバーの自己署名付き証明書をローカルディストリビュータにコピーします。
自己署名付き証明書をローカルディストリビュータのトラストストアにインポートします。
% ld/bin/crkeys –trust –import –file ms.cert –alias mshostname.cr.com |
マスターサーバーとローカルディストリビュータが稼働している場合は、これらを停止します。
マスターサーバーとローカルディストリビュータを起動します。
マスターサーバーとローカルディストリビュータのキーストアのパスワードを入力します。
新しいホストを作成します。
新しいホストで、接続タイプ SSL のローカルディストリビュータを追加します。
ローカルディストリビュータとの接続をテストします。
リモートエージェント用の鍵ペアを生成し、リモートエージェントのプライベートストアに格納します。-mode downstream を指定します。
% agent/bin/crkeys –private –generate -mode downstream –alias rahostname-downstream.cr.com –validity 365 |
リモートエージェントのプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% agent/bin/crkeys –private –export –file ra-downstream.cert –alias rahostname-downstream.cr.com |
リモートエージェントの自己署名付き証明書をローカルディストリビュータにコピーします。
自己署名付き証明書をローカルディストリビュータのトラストストアにインポートします。
% ld/bin/crkeys –trust –import –file ra-downstream.cert –alias rahostname-downstream.cr.com |
ローカルディストリビュータ用の鍵ペアを生成し、ローカルディストリビュータのプライベートストアに格納します。-mode upstream を指定します。
% ls/bin/crkeys -private -generate -mode upstream - alias ldhostname-upstream.cr.com -validity 365 |
ローカルディストリビュータ上のプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% ld/bin/crkeys -private -export -file ld-upstream.cert -alias ldhostname-upstream.cr.com |
手順 21 でエクスポートしたローカルディストリビュータの自己署名付き証明書をリモートエージェントマシンにコピーします。
自己署名付き証明書をリモートエージェントのトラストストアにインポートします。
% agent/bin/crkeys –trust –import –file ld-upstream.cert –alias ldhostname-upstream.cr.com |
ローカルディストリビュータとリモートエージェントが稼働している場合は、これらを停止します。
ローカルディストリビュータとリモートエージェントを起動します。
ローカルディストリビュータとリモートエージェントのキーストアのパスワードを入力します。
新しいホストを作成します。
新しいホストで、接続タイプ SSL のリモートエージェントを追加します。
リモートエージェントとの接続をテストします。
マスターサーバーと CLI Client をインストールし、接続タイプを選択するプロンプトが表示されたら、SSL を選択します。暗号群を選択するように求められる際に、認証を伴う暗号化を選択します。
マスターサーバー用の鍵ペアを生成し、マスターサーバーのプライベートストアに格納します。
% server/bin/crkeys –private –generate –alias mshostname.cr.com –validity 365 |
CLI Client 用の鍵ペアを生成し、CLI Client のプライベートストアに格納します。
% cli/bin/crkeys -private -generate -alias clihostname.cr.com.cr.com -validity 365 |
マスターサーバーのプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% server/bin/crkeys –private –export –file ms.cert –alias mshostname.cr.com |
マスターサーバーの自己署名付き証明書を CLI Client にコピーします。
自己署名付き証明書を CLI Client のトラストストアにインポートします。
% cli/bin/crkeys –trust –import –file ms.cert –alias mshostname.cr.com |
CLI Client のプライベートストア内の自己署名付き証明書をファイルにエクスポートします。
% cli/bin/crkeys -private -export -file cli.cert -alias clihostname.cr.com |
CLI Client の自己署名付き証明書をマスターサーバーにコピーします。
自己署名付き証明書をマスターサーバーのトラストストアにインポートします。
% server/bin/crkeys -trust -import -file cli.cert -alias clihostname.cr.com |
マスターサーバーが実行中の場合は、停止します。
マスターサーバーを起動します。
マスターサーバーのキーストアのパスワードを入力します。
CLI Client で、config.properties ファイルを編集し、次の行をこのファイルに含めます。
net.ssl.key.store.pass=trust-store-password |
CLI Client コマンドを実行し、接続を検証します。
次に、IBM AIX 以外のすべてのサポートオペレーティングシステムでサポートされる SSL 暗号群を示します。
以下は、サーバー認証を要求する暗号群です。
SSL_DHE_DSS_WITH_DES_CBC_SHA SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA SSL_RSA_WITH_RC4_128_MD5 SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_DES_CBC_SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA SSL_RSA_EXPORT_WITH_RC4_40_MD5 TLS_RSA_WITH_AES_128_CBC_SHA TLS_DHE_RSA_WITH_AES_128_CBC_SHA TLS_DHE_DSS_WITH_AES_128_CBC_SHA |
以下は、サーバー認証を要求しない暗号群です。
SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA SSL_DH_anon_EXPORT_WITH_RC4_40_MD5 SSL_DH_anon_WITH_3DES_EDE_CBC_SHA SSL_DH_anon_WITH_DES_CBC_SHA SSL_DH_anon_WITH_RC4_128_MD5 TLS_DH_anon_WITH_AES_128_CBC_SHA |
以下は暗号化を伴わないサーバー認証を要求する暗号群です。
SSL_RSA_WITH_NULL_MD5 SSL_RSA_WITH_NULL_SHA |
次に、IBM AIX サーバーでサポートされる SSL 暗号群を示します。
以下の暗号群はすべて、リモートエージェントに使用できます。サーバー認証を要求しない暗号群は、ローカルディストリビュータまたは CLI には使用できません。
以下は、サーバー認証を要求する暗号群です。
SSL_RSA_WITH_RC4_128_MD5 SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_DES_CBC_SHA SSL_RSA_FIPS_WITH_DES_CBC_SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA SSL_DHE_RSA_WITH_DES_CBC_SHA SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA SSL_DHE_DSS_WITH_DES_CBC_SHA SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA SSL_RSA_EXPORT_WITH_RC4_40_MD5 SSL_RSA_EXPORT_WITH_DES40_CBC_SHA SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5 SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA |
以下は、サーバー認証を要求しない暗号群です。
サーバー認証を要求しない暗号群は、ローカルディストリビュータまたは CLI には使用できません。
SSL_DH_anon_WITH_RC4_128_MD5 SSL_DH_anon_WITH_DES_CBC_SHA SSL_DH_anon_WITH_3DES_EDE_CBC_SHA SSL_DH_anon_EXPORT_WITH_RC4_40_MD5 SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA |
以下は暗号化を伴わないサーバー認証を要求する暗号群です。
SSL_RSA_WITH_NULL_MD5 SSL_RSA_WITH_NULL_SHA |