Oracle® Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド 11gリリース1(11.1.1.5) B61378-02 |
|
![]() 前へ |
![]() 次へ |
この章では、Oracleのベスト・プラクティスの推奨事項に従ってノード・マネージャを構成する方法を説明します。次の項目が含まれます。
ノード・マネージャを使用すると、管理サーバーおよび各管理対象サーバーの起動と停止が可能です。
手順
第1章「エンタープライズ・デプロイメント概要」で説明されているエンタープライズ・デプロイメント・トポロジの各種コンポーネントについて、この章に記載されている手順を実行する必要があります。表17-1に、そのトポロジとホストを示します。
表17-1 各トポロジのホスト
トポロジ | ホスト |
---|---|
OAM11g |
|
OAM11g/OIM11g |
|
OAAM11g |
|
OIF11g |
|
コンポーネント固有の章に記載されている情報を使用して、VPとIPのペアごとにこの章の手順を繰返し実行する必要があります。
推奨事項
エンタープライズ・デプロイメント・トポロジでのノード・マネージャの構成についての主要な推奨事項は、次の2つです。
ノード・マネージャのログ・ファイルをデフォルトの場所(ノード・マネージャが配置されているミドルウェア・ホーム)とは異なる場所に置くことをお薦めします。詳細は、第17.2項「ノード・マネージャのログの場所の変更」を参照してください。
また、ノード・マネージャとドメイン内のサーバー間の通信についてホスト名検証を使用することもお薦めします。これには、ドメインで使用される各種アドレスの証明書を使用する必要があります。この章では、ホスト名検証用にホストで証明書を構成する手順について説明します。詳細は、第17.3項「ノード・マネージャのホスト名検証証明書の有効化」を参照してください。
注意: このマニュアルで使用するパスワードは、あくまでも例にすぎません。本番環境ではセキュアなパスワードを使用してください。たとえば、大文字と小文字および数字が不規則に連なるパスワードを使用します。 |
MW_HOME
/wlserver_10.3/common/nodemanager/nodemanager.propertiesにあるノード・マネージャのプロパティ・ファイルを編集します。次の行を使用して、ログ・ファイルの新しい場所を追加します。
LogFile=ORACLE_BASE/admin/nodemanager.log
Oracleのベスト・プラクティスは、管理ディレクトリの内部で、MW_HOME
ディレクトリの外部である場所を使用することです。
変更を有効にするために、第21.1項「Oracle Identity Managementコンポーネントの起動と停止」の説明に従って、ノード・マネージャを再起動します。
この項では、ノード・マネージャと管理サーバーとの通信で使用するホスト名検証証明書を設定する方法について説明します。これには次の手順が含まれます。
この章で(例として)追加する証明書は、ノード・マネージャが物理ホスト名(HOST.mycompany.com)でリスニングし、WebLogic管理対象サーバーが仮想ホスト名(VIP.mycompany.com)でリスニングする構成に対応します。サーバーが仮想ホスト名を使用している場合は、サーバーを1つのノードから別のノードに移行できることを意味します。したがって、キーストアとトラスト・キーストアを理想的に保持するディレクトリは、フェイルオーバーからアクセス可能な共有記憶域に配置する必要があります。同じノードまたは別のノードで別のホスト名を使用する場合は、この例の手順を次のように拡張する必要があります。
証明書ストアに必要なホスト名を追加します(必要なホスト名がHOST.mycompany.comおよびVIP.mycompany.comと異なる場合)。
アイデンティティ・ストアおよびトラスト・ストアの場所に関する情報を、ノード・マネージャ(ノード・マネージャで別のホスト名を使用する場合)またはサーバー(管理対象サーバーで別のホスト名を使用する場合)で変更します。
次の手順に従って、HOSTに自己署名証明書を作成します。これらの証明書はネットワーク名または別名を使用して作成する必要があります。かわりに信頼できるCA証明書を使用するには、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』でアイデンティティとトラストの構成に関する項を参照してください。次の例では、HOST.mycompany.comとVIP.mycompany.comの証明書を構成します。すなわち、HOSTで物理ホスト名(HOST)と仮想ホスト名(VIP)の両方を使用することを想定しています。また、HOST.mycompany.comはノード・マネージャが使用するアドレスであり、VIP.mycompany.comは管理対象サーバーまたは管理サーバーが使用するアドレスであることも想定しています。これは、管理サーバーとFusion Middlewareコンポーネントをホストするノードや、共存する2つの管理対象サーバーの一方が物理ホスト名をリスニングし、もう一方が仮想ホスト名を使用(移行サーバーを使用するサーバーの場合)するノードで、よく見られる状況です。
WL_HOME
/server/bin/setWLSEnv.shスクリプトを実行して、環境を設定します。Bourneシェルで、次のコマンドを実行します。
HOST> cd WL_HOME/server/bin HOST> ./setWLSEnv.sh
CLASSPATH
環境変数が設定されていることを確認します。
HOST> echo $CLASSPATH
証明書用のユーザー定義ディレクトリを作成します。たとえば、ORACLE_BASE
/admin/
domain_name
/aserver/
domain_name
ディレクトリの下にcertsというディレクトリを作成します。証明書はWebLogicドメイン間で共有できることに注意してください。
HOST> cd ORACLE_BASE/admin/domain_name/aserver/domain_name HOST> mkdir certs
注意: サーバーが(手動またはサーバーの移行により)フェイルオーバーした際にフェイルオーバー・ノードから適切な証明書にアクセスできるように、キーストアおよびトラスト・キーストアを保持するディレクトリは、すべてのノードからアクセス可能な共有記憶域に存在している必要があります。各種目的(HTTPの起動用のSSL設定など)で使用する証明書には、中央ストアまたは共有ストアを使用することをお薦めします。 |
ディレクトリを今しがた作成したディレクトリに変更します。
HOST> cd certs
ユーザー定義ディレクトリからutils.CertGenツールを実行して、HOST. mycompany.comおよびVIP. mycompany.comの両方に対する証明書を作成します。
構文(すべて1行に記述):
java utils.CertGen Key_Passphrase Cert_File_Name Key_File_Name
[export | domestic] [Host_Name]
次に例を示します。
IDMHOST1> java utils.CertGen Key_Passphrase IDMHOST1.mycompany.com_cert IDMHOST1.mycompany.com_key domestic IDMHOST1.mycompany.com IDMHOST2> java utils.CertGen Key_Passphrase IDMHOST2.mycompany.com_cert IDMHOST2.mycompany.com_key domestic IDMHOST2.mycompany.com IDMHOST2> java utils.CertGen Key_Passphrase ADMVHN.mycompany.com_cert ADMVHN.mycompany.com_key domestic ADMVHN.mycompany.com
次の手順に従って、IDMHOST1
にアイデンティティ・キーストアを作成します。
utils.ImportPrivateKey
ユーティリティを使用して、appIdentityKeyStore
というIDキーストアを新しく作成します。このキーストアは、証明書と同じディレクトリ(つまり、ORACLE_BASE
/admin/
domain_name
/aserver/
domain_name
/certs
)に作成します。
注意: アイデンティティ・ストアは、 |
IDMHOST1.mycompany.com
、IDMHOST2.mycompany.com
およびADMVHN.mycompany.com
の証明書と秘密鍵をアイデンティティ・ストアにインポートします。インポートする証明書とキーの各組合せに対して異なる別名を使用してください。
構文(すべて1行に記述):
java utils.ImportPrivateKey Keystore_File Keystore_Password
Certificate_Alias_to_Use Private_Key_Passphrase
Certificate_File
Private_Key_File
[Keystore_Type]
次に例を示します。
IDMHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks Key_Passphrase appIdentityIDMHOST1 Key_Passphrase ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/IDMHOST1.mycompany.com_cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/IDMHOST1.mycompany.com_key.pem IDMHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks Key_Passphrase appIdentityIDMHOST2 Key_Passphrase ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/IDMHOST2.mycompany.com_cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/IDMHOST2.mycompany.com_key.pem IDMHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks Key_Passphrase appIdentityADMVHN Key_Passphrase ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/ADMVHN.mycompany.com_cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/ADMVHN.mycompany.com_key.pem
次の手順に従って、IDMHOST1
やIDMHOST2
などの各ホストにトラスト・キーストアを作成します。
新しいトラスト・キーストアを作成するには、標準のJavaキーストアをコピーします。これは、必要なほとんどのルートCA証明書がこのJavaキーストアに存在しているからです。標準のJavaトラスト・キーストアを直接変更することはお薦めしません。WL_HOME
/server/libディレクトリにある標準のJavaキーストアCA証明書を、証明書が存在するディレクトリにコピーします。次に例を示します。
IDMHOST1> cp WL_HOME/server/lib/cacerts ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/appTrustKeyStoreIDMHOST1.jks
標準のJavaキーストアのデフォルトのパスワードはchangeit
です。常にデフォルトのパスワードを変更することをお薦めします。それには、keytool
ユーティリティを使用します。次に構文を示します。
HOST> keytool -storepasswd -new New_Password -keystore Trust_Keystore -storepass Original_Password
次に例を示します。
IDMHOST1> keytool -storepasswd -new Key_Passphrase -keystore appTrustKeyStoreIDMHOST1.jks -storepass changeit
このCA証明書(CertGenCA.der)は、utils.CertGenツールで生成するすべての証明書の署名に使用します。これは、WL_HOME
/server/lib
ディレクトリにあります。keytool
ユーティリティを使用して、このCA証明書をappTrustKeyStore
にインポートする必要があります。次に構文を示します。
HOST> keytool -import -v -noprompt -trustcacerts -alias Alias_Name
-file CA_File_Location -keystore Keystore_Location -storepass Keystore_Password
次に例を示します。
IDMHOST1> keytool -import -v -noprompt -trustcacerts -alias clientCACert -file WL_HOME/server/lib/CertGenCA.der -keystore appTrustKeyStoreIDMHOST1.jks -storepass Key_Passphrase
カスタム・キーストアを使用するようにノード・マネージャを構成するには、WL_HOME
/common/nodemanager
ディレクトリにあるnodemanager.properties
ファイルの最後に次の行を追加します。
KeyStores=CustomIdentityAndCustomTrust CustomIdentityKeyStoreFileName=Identity_Keystore CustomIdentityKeyStorePassPhrase=Identity_Keystore_Password CustomIdentityAlias=Identity_Keystore_Alias CustomIdentityPrivateKeyPassPhrase=Private_Key_Used_When_Creating_Certificate
次に例を示します。
KeyStores=CustomIdentityAndCustomTrust CustomIdentityKeyStoreFileName=ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/appIdentityKeyStore.jks CustomIdentityKeyStorePassPhrase=Key_Passphrase CustomIdentityAlias=appIdentityIDMHOST1 CustomIdentityPrivateKeyPassPhrase=Key_Passphrase
第21.1項「Oracle Identity Managementコンポーネントの起動と停止」の説明に従ってノード・マネージャを起動すると、nodemanager.properties
ファイルにあるパスフレーズのエントリが暗号化されます。セキュリティ上の理由から、nodemanager.properties
ファイルのエントリが暗号化されていない状態になる時間は最小限に抑えてください。このファイルを編集した後、できるだけ速やかにノード・マネージャを起動し、エントリを暗号化します。
共通記憶域または共有記憶域のインストールをMW_HOME
に指定している場合、ノード・マネージャは、nodemanager.properties
にある同じ基本構成を使用してそれぞれのノードから起動します。この場合、バイナリを共有するすべてのノード用の証明書をappIdentityKeyStore.jks
アイデンティティ・ストアに追加する必要があります。これを行うには、新しいノードの証明書を作成し、第17.3.2項「utils.ImportPrivateKeyユーティリティを使用したIDキーストアの作成」の説明に従って、その証明書をappIdentityKeyStore.jks
にインポートします。このストアで証明書が使用できるようになった時点で、各ノード・マネージャはそれぞれのアイデンティティ別名を指定して、正しい証明書を管理サーバーに送信する必要があります。これを行うには、次のように該当の環境変数を設定して各ノードでノード・マネージャを起動します。
HOST> cd WL_HOME/server/bin HOST> export JAVA_OPTIONS=-DCustomIdentityAlias=appIdentityX
注意: 各ホスト固有に割り当てられているカスタムのアイデンティティ別名を必ず指定します。たとえば、 |
次のコマンドを実行してノード・マネージャを起動します。
注意: ノード・マネージャが未構成で、まだ起動もしていない場合は、第6.4項「IDMHOST1でのノード・マネージャの起動」の説明に従って |
IDMHOST1> cd WL_HOME/server/bin IDMHOST1> ./startNodeManager.sh
注意: ノード・マネージャの出力にある適切なストアと別名を、そのノード・マネージャで使用していることを確認します。ノード・マネージャ出力は次のようになっています。 CustomIdentityKeyStoreFileName=ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/appIdentityKeyStore.jks CustomIdentityAlias=appIdentityX テスト構成の変更を該当のサーバーに適用して、ノード・マネージャからSSLエラーが報告されることなく、それが正常に完了していれば、ホスト名検証は機能しています。 |
次の手順に従って、WLS_SERVERのIDキーストアとトラスト・キーストアを構成します。
Oracle WebLogic Server管理コンソールにログインします。
「ロックして編集」をクリックします。
「ドメイン構造」ウィンドウで「環境」ノードを開きます。
「サーバー」をクリックします。「サーバーのサマリー」ページが表示されます。
IDキーストアとトラスト・キーストアを構成するサーバー名(WLS_SERVER)をクリックします。選択したサーバーの設定ページが表示されます。
「構成」をクリックし、「キーストア」をクリックします。
「キーストア」フィールドで、秘密鍵とデジタル証明書の組合せおよび信頼できるCA証明書の格納と管理のために「カスタムIDとカスタム信頼」メソッドを選択します。
「ID」セクションで、IDキーストアの次の属性を定義します。
カスタムIDキーストア: IDキーストアへの完全修飾パス。
ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/appIdentityKeyStore.jks
カスタムIDキーストアのタイプ: 空白のままにしてください。デフォルトでJKSに設定されます。
カスタムIDキーストアのパスフレーズ: 第17.3.3項「Keytoolユーティリティを使用したトラスト・キーストアの作成」で指定したパスワード(Keystore_Password
)。この属性は、キーストアのタイプに応じてオプションまたは必須になります。すべてのキーストアでは、キーストアへの書込みにパスフレーズが必要です。ただし、キーストアによっては読取りにパスフレーズが不要な場合もあります。WebLogic Serverはキーストアからの読取りのみを行うため、このプロパティを定義するかどうかは、キーストアの要件によって決まります。
「信頼」セクションで、トラスト・キーストアの次のプロパティを定義します。
カスタム信頼キーストア: トラスト・キーストアへの完全修飾パス。
ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/appTrustKeyStoreIDMHOST1.jks
カスタム信頼キーストアのタイプ: 空白のままにしてください。デフォルトでJKSに設定されます。
カスタム信頼キーストアのパスフレーズ: 第17.3.3項「keytoolユーティリティを使用したトラスト・キーストアの作成」でNew_Passwordとして指定したパスワード。この属性は、キーストアのタイプに応じてオプションまたは必須になります。すべてのキーストアでは、キーストアへの書込みにパスフレーズが必要です。ただし、キーストアによっては読取りにパスフレーズが不要な場合もあります。WebLogic Serverはキーストアからの読取りのみを行うため、このプロパティを定義するかどうかは、キーストアの要件によって決まります。
「保存」をクリックします。
「管理コンソール」の「チェンジ・センター」で、「変更のアクティブ化」をクリックして、これらの変更を有効にします。
「構成」をクリックし、「SSL」をクリックします。
「ロックして編集」をクリックします。
「秘密鍵の別名」フィールドに、管理対象サーバーでリスニングするホスト名に使用した別名を入力します。たとえば、次のようにします。
wls_ods1
ではappIdentityIDMHOST1
を使用します。
wls_ods2
ではappIdentityIDMHOST2
を使用します。
ADMINSERVER
ではappIdentityADMVHN
を使用します。
「秘密鍵のパスフレーズ」フィールドと「秘密鍵のパスフレーズを確認」フィールドで、第17.3.2項「utils.ImportPrivateKeyユーティリティを使用したIDキーストアの作成」で作成したキーストアのパスワードを入力します。
「保存」をクリックします。
「管理コンソール」の「チェンジ・センター」で、「変更のアクティブ化」をクリックして、これらの変更を有効にします。
第21.1項「Oracle Identity Managementコンポーネントの起動と停止」の説明に従って、変更を適用したサーバーを再起動します。
前述の手順を実行した後、影響を受ける管理対象サーバーのホスト名検証をBea Hostname Verifier
に設定します。このためには、次の手順を実行します。
Oracle WebLogic Server管理コンソールにログインします。
「チェンジ・センター」で「ロックして編集」を選択します。
「ドメイン構造」ウィンドウで「環境」ノードを開きます。
「サーバー」をクリックします。「サーバーのサマリー」ページが表示されます。
表の「名前」列で管理対象サーバーを選択します。選択したサーバーの設定ページが表示されます。
「SSL」タブを開きます。
このページの「詳細」セクションを展開します。
ホスト名検証をBea Host Name Verifier
に設定します。
「保存」をクリックします。
「変更のアクティブ化」をクリックします。