AT-TLS の場合、TCP/IP スタックと、Advisor および Agent アプリケーションを開始する前に、以下のカスタマイズ・タスクが必要です。
TCP/IP プロファイル内の TCPCONFIG ステートメントに TTLS パラメーターを指定します。AT-TLS の追加情報について詳しくは、Application Transparent Transport Layer Security のデータ保護を参照してください。TCPCONFIG ステートメントについて詳しくは、「z/OS Communications Server: IP 構成解説書」を参照してください。
SERVAUTH プロファイル EZB.PAGENT.sysname.image.ptype を作成します。ここで、ptype 値は TTLS またはワイルドカード値に設定されます。詳しくは、ポリシー・エージェントを構成するためのステップおよび「z/OS Security Server RACF セキュリティー管理者のガイド」を参照してください。
CommonTTLSConfig ステートメントと TTLSConfig ステートメントを、各スタックのポリシー・エージェント構成ファイルに指定します。TTLSConfig ステートメントに、そのサーバー用にインストールされるスタック固有の AT-TLS ポリシー・ファイルのパスを指定します。CommonTTLSConfig および TTLSConfig ステートメントの追加情報については、「z/OS Communications Server: IP 構成解説書」を参照してください。
CommonTTLSConfig および TTLSConfig ステートメントによって識別される構成ファイルに、AT-TLS ポリシーを指定します。Load Balancing Advisor ポリシー定義は必ず、Advisor が実行できるシスプレックス内のすべてのシステムに定義してください。
Load Balancing Advisor はサーバー・アプリケーションです。サーバー用に AT-TLS をセットアップする場合の一般情報については、表 1 を参照してください。
以下の例は、Advisor へのロード・バランサー接続用のパス・ファイル内の TTLSConfig ポリシー・ファイル・ステートメントを示しています。 ポート 3860 はデフォルト・ポートです。
TTLSRule LBAdvisorLBRule
{
LocalPortRange 3860
Direction Inbound
TTLSGroupActionRef LBAdvisorLBGroup
TTLSEnvironmentActionRef LBAdvisorLBEnvironment
}
TTLSGroupAction LBAdvisorLBGroup
{
TTLSEnabled On
}
TTLSEnvironmentAction LBAdvisorLBEnvironment
{
TTLSKeyRingParms
{
Keyring server_key_ring
}
TTLSEnvironmentAdvancedParms
{
# TTLS will verify a user ID is associated with certificate
ClientAuthType SAFCheck
ApplicationControlled On
}
HandshakeRole ServerWithClientAuth
TTLSCipherParmsRef RequireEncryption
Trace 7
}
この例では、すべての外部ロード・バランサーは TLS/SSL を使用し、クライアント証明書を提供する必要があります。クライアント証明書は鍵リングで妥当性検査が行われ、ローカル z/OS® システム上の SAF 準拠のセキュリティー製品のユーザー ID と関連付けられている必要があります。このタイプのポリシーでは、オプションの SERVAUTH プロファイルを使用した、追加の細密な SAF 検査が許可されます。他の、より制限の少ないポリシーを使用できますが、制限の少ないポリシーを使用する場合は、Advisor、Agent、および ADNR でこれらの接続用の構成パラメーターの指定が要求されます (Advisor 構成ファイル内の lb_id_list または agent_id_list ステートメント、Agent 構成ファイル内の host_connection ステートメント、および ADNR 構成ファイル内の host_connection_addr ステートメント)。
以下の例は、Advisor への Agent 接続用のパス・ファイル内の TTLSConfig ポリシー・ファイル・ステートメントを示しています。 ポート 8100 は、サンプルの Advisor 構成ファイルで使用されるポートです。
TTLSRule LBAdvisorAgentRule
{
LocalPortRange 8100
Direction Inbound
TTLSGroupActionRef LBAdvisorAgentGroup
TTLSEnvironmentActionRef LBAdvisorAgentEnvironment
}
TTLSGroupAction LBAdvisorAgentGroup
{
TTLSEnabled On
}
TTLSEnvironmentAction LBAdvisorAgentEnvironment
{
TTLSKeyRingParms
{
Keyring server_key_ring
}
TTLSEnvironmentAdvancedParms
{
# TTLS will verify a user ID is associated with certificate
ClientAuthType SAFCheck
ApplicationControlled On
}
HandshakeRole ServerWithClientAuth
TTLSCipherParmsRef RequireEncryption
Trace 7
}
# Set of TLS Ciphers with Encryption
TTLSCipherParms RequireEncryption
{
V3CipherSuites TLS_RSA_WITH_RC4_128_MD5
V3CipherSuites TLS_RSA_WITH_RC4_128_SHA
V3CipherSuites TLS_RSA_WITH_DES_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
}
Load Balancing Agent はクライアント・アプリケーションです。クライアント用に AT-TLS をセットアップする場合の一般情報については、表 1を参照してください。
Agent が実行される TCP/IP スタック上にポリシーを構成する必要があります。その際、Advisor の構成に使用されているのと同じ SSL プロトコル、鍵リング、および暗号スイート (データを暗号化する場合) を使用します。
以下の例は、Load Balancing Agent 用の TTLSConfig ポリシー・ファイル・ステートメントを示しています。 TTLSConfig ステートメントに、クライアント用にインストールされる、スタック固有の AT-TLS ポリシー・ファイルのパスを指定します。TTLSConfig ステートメントについて詳しくは、「z/OS Communications Server: IP 構成解説書」を参照してください。ポート 8100 は、サンプル Agent 構成ファイルで使用されるポートです。
TTLSRule LBAgentRule
{
RemotePortRange 8100
Direction Outbound
TTLSGroupActionRef LBAGroup
TTLSEnvironmentActionRef LBAgentEnvironment
}
TTLSGroupAction LBAGroup
{
TTLSEnabled On
}
TTLSEnvironmentAction LBAgentEnvironment
{
TTLSKeyRingParms
{
Keyring client_key_ring
}
HandshakeRole CLIENT
TTLSCipherParmsRef RequireEncryption
Trace 7
}
# Set of TLS Ciphers with Encryption
TTLSCipherParms RequireEncryption
{
V3CipherSuites TLS_RSA_WITH_RC4_128_MD5
V3CipherSuites TLS_RSA_WITH_RC4_128_SHA
V3CipherSuites TLS_RSA_WITH_DES_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
}
追加情報については、以下を参照してください。
サーバーの鍵リングには、サーバー証明書、およびその証明書の署名に使用されるすべての証明書を含める必要があります。 サーバーは、サーバー証明書の秘密鍵にアクセスする必要があります。クライアントの鍵リングには、サーバー証明書への署名に使用されるルート証明書が必要です。
TLS/SSL の手引きおよびいくつかの段階的例については、TLS/SSL セキュリティーを参照してください。RACF® と RACDCERT コマンドによる鍵リングと証明書の管理について詳しくは、「z/OS Security Server RACF セキュリティー管理者のガイド」を参照してください。gskkyman による鍵リングと証明書の管理について詳しくは、「z/OS Cryptographic Services System System Secure Sockets Layer プログラミング」を参照してください。
RACDCERT ADDRING コマンドを使用して RACF に鍵リングを定義し、それをアプリケーションのユーザー ID と関連付けます。RACDCERT CONNECT コマンドを使用して証明書を鍵リングに接続します。証明書環境のセットアップについて詳しくは、「z/OS Security Server RACF セキュリティー管理者のガイド」を参照してください。
ユーザー ID などのセキュリティー信任状を提示するように、Advisor のクライアント (Agent、ADNR、および外部ロード・バランサー) を構成することができます。この構成を行う場合は、Advisor システム上にセキュリティー・マネージャーをセットアップして、これらの信任状を受け入れる必要があります。
RACF などのセキュリティー製品を使用して、Load Balancing Advisor、Agent、および ADNR へのアクセスを制御するために、以下のステップを実行します。
SETROPTS CLASSACT(SERVAUTH)
SETROPTS RACLIST (SERVAUTH)
RDEFINE SERVAUTH EZB.LBA.LBACCESS.sysname.tcpsysplexgroupname UACC(NONE)
RDEFINE SERVAUTH EZB.LBA.AGENTACCESS.sysname.tcpsysplexgroupname UACC(NONE)
ここで、sysname は MVS™ システム名またはワイルドカード (*) で、tcpsysplexgroupname は TCP/IP シスプレックス・グループ名です。サブプレックスを使用していない場合は、デフォルトのサブプレックス ID である EZBTCPCS、またはワイルドカード (*) を使用してください。例えば、デフォルト・サブプレックスを使用するシステム MVSSYS では、プロファイル名は EZB.LBA.LBACCESS.MVSSYS.EZBTCPCS となります。
PERMIT EZB.LBA.LBACCESS.sysname.tcpsysplexgroupname -
CLASS(SERVAUTH) ACCESS(READ) ID(userid)
PERMIT EZB.LBA.AGENTACCESS.sysname.tcpsysplexgroupname -
CLASS(SERVAUTH) ACCESS(READ) ID(userid)
SETROPTS RACLIST(SERVAUTH) REFRESH
特定の指示については、SEZAINST の中の EZARACF のサンプルを参照してください。
追加情報については、z/OS Security Server RACF セキュリティー管理者のガイド を参照してください。