グローバル TLS スコープを実装する

始める前に

  • GSKit が既にインストールされている必要があります。
  • 鍵ストアとトラスト・ストアを .p12 または .jks ファイルとして持っている必要があります。
  • サードパーティ証明書と自己署名証明書の両方がサポートされます。
    注: Sametime プロキシ―・サーバーを使用していて、モバイル・クライアントをサポートする予定の場合は、サードパーティの証明書を使用する必要があります。

このタスクについて

概念:
  • アウトバウンド接続を作成するために必要なトラスト・ストアがあります。
    • トラスト・ストアは、TLS 接続のクライアント側でサーバーの証明書を検証する際に使用されます。
    • 相互認証では、サーバーがクライアントの証明書を検証する際にもトラストストアが使用されます。 
  • インバウンド接続を受け入れるのに必要な鍵ストアがあります。
    • 鍵ストアは、TLS 接続のサーバー側でサーバー証明書とチェーン証明書 (チェーン証明書が存在する場合) を格納する際に使用されます。
    • クライアント認証時には、クライアントがクライアント証明書とチェーン証明書 (存在する場合) を格納する際に鍵ストアが使用されます。
  • Sametime の暗号化はすべて TLS 1.2 で行われます。この暗号化は、より低いバージョンが必要な場合にオーバーライドできます。

これらの必須パラメーターを sametime.ini の [Config] セクションに構成します。

1. 必須パラメーター
設定 説明 値の例
ST_TLS_TRUST_STORE_TYPE トラスト・ストア・タイプ p12= .p12 または .pfx で終わるファイルに使用 (p12 が推奨) jks= .jks で終わるファイルに使用 p12
ST_TLS_KEY_STORE_TYPE これは鍵ストア・タイプ用です。p12= .p12 または .pfx で終わるファイルに使用 (p12 が推奨) jks= .jks で終わるファイルに使用 p12
ST_TLS_TRUST_STORE_FILE トラスト・ストアの絶対パスと名前を入力します。 C:\Program Files\HCL\Domino\truststore.p12
ST_TLS_TRUST_STORE_PASSWORD トラスト・ストアにアクセスするためのパスワードを入力します。代わりに stash ファイルを使用できる場合、これはクリア・テキストで保存されます。オプション・パラメーターのセクションを参照してください。 SecureSametimePassw0rd
ST_TLS_KEY_STORE_FILE 鍵ストアの絶対パスと名前を入力します。 C:\Program Files\HCL\Domino\keystore.p12
ST_TLS_KEY_STORE_PASSWORD 鍵ストアにアクセスするためのパスワードを入力します。 SecureSametimePassw0rd

オプション: 追加のパラメーター

2. 任意 指定パラメーター
説明
ST_TLS_FIPS_COMPLIANCE 1 に設定して FIPS 準拠を有効にします。
ST_TLS_SECURITY_LEVEL

必要なセキュリティー・レベル。最小セキュリティレベルは、NIST SP800-131a 標準と NSA Suite B 標準への準拠を制御します。

0 = 要件なし

1 = NIST SP800 -131a 「遷移モード」

2 = NIST SP800-131a 「厳格モード」

3 = NSA Suite B 128 ビット・レベル

4 = NSA Suite B 192 ビット・レベル

ST_TLS_MAX_SESSION_AGE セッションの再ネゴシエーションまでの時間セッションが保持される期間 (秒単位)。キャッシュから削除されるまでの時間。デフォルト値の -1 は、キャッシュなしを意味します。ほとんどの IBM Sametime デプロイメントでは、一般的にこの設定で十分です。値 0 の場合、キャッシュに入れられるセッションの存続期間に制限はありません。
ST_TLS_SESSION_CACHE_SIZE アウトバウンド接続の場合は無視され、インバウンド接続にのみ適用されます。セッションを再使用するために、サーバーがメモリー内に保持する TLS セッションの数。このオプションは、接続が終了した後も TLS セッション状態のキャッシュを保持するようサーバーに指示します。これは、一時的なネットワークの停止後、以前に確立されていたセッションを再使用して、クライアントがサーバーに再接続を試みる場合に便利です。サーバーがキャッシュ内で当該セッションを検出した場合は、ハンドシェークが省略されるため、消費するリソースが少なくなります。当該セッションがキャッシュ内にない場合は、新規セッションが確立されます。この場合は完全なハンドシェークが行われます。デフォルト値の -1 は、セッションのキャッシングが行われないことを意味します。ほとんどの IBM Sametime デプロイメントでは、一般的にこの設定で十分です。値 0 の場合、キャッシュに入れられるセッションの数に制限はありません。
ST_TLS_SESSION_CACHE_TIME アウトバウンド接続の場合は無視され、インバウンド接続にのみ適用されます。セッションを再ネゴシエーションするまでの時間 (Time before renegotiating a session) - TLS セッションの最大存続期間 (秒単位)。同じセッションの使用時間がこの設定を超えると、同じ接続で新規セッションが再ネゴシエーションされます。デフォルト値の 0 は、セッションの再ネゴシエーションがないことを意味します。
ST_TLS_MIN_PROTOCOL_VERSION=

ハンドシェーク時にネゴシエーションする SSL/TLS プロトコルの最も古いバージョン。1.2 以外の TLS プロトコルを設定するには、 ニーズに応じて値を設定します。

SSL v3 の場合: 0x300

TLS v1.0 = 0x301 の場合

TLS v1.1 = 0x302 の場合

TLS v1.2 = 0x303 (デフォルトの TLS 1.2 の場合はブランクにします)

ST_TLS_MAX_PROTOCOL_VERSION

1.2 以外の最大 TLS プロトコルを設定するには、 ニーズに応じて値を設定します。

SSL v3 の場合: 0x300

TLS v1.0 = 0x301 の場合

TLS v1.1 = 0x302 の場合

TLS v1.2 = 0x303 (デフォルトの TLS 1.2 の場合はブランクにします)

ST_TLS_CIPHER_SUITES 暗号スイートのコンマ区切りリスト。デフォルトの暗号スイートを有効にする場合は、このフィールドをブランクにします。 
ST_TLS_CLIENT_AUTH

クライアントから証明書を要求します。アウトバウンド接続には適用されません。

0= なし - サーバーはクライアントから証明書を要求しません。これはデフォルト値です。

1= 希望 - サーバーはクライアントから証明書を要求しますが、クライアントが証明書を提示しなくてもハンドシェークを続行します。

2= 必須 - サーバーはクライアントから証明書を要求し、クライアントが証明書を提示しない場合は接続が失敗します。

ST_TLS_TRUSTED_HOSTS 信頼できる証明書ホスト名のリスト。ピア証明書に照らし合わせて比較するための 1 つ以上の信頼されたホストのコンマ区切りリスト。この比較は、TLS ハンドシェーク中にピアから証明書を受け取るとき (クライアントがサーバー証明書を受け取るか、サーバーがクライアント証明書を受け取るとき) に行われます。ピア証明書内の名前は一般的に、サブジェクト CN (共通名) または subjectAltName フィールドで指定されます。ピア証明書内の名前と信頼されたホストのリスト内の名前の間に少なくとも 1 つの一致があれば、検証に合格します。信頼されたホスト名にはワイルドカード文字 (*) が含まれていても構いません。この場合は、文字列全体としてではなく、ドメインの構成要素が比較されます。この場合は、RFC 2818 セクション 3.1 の突き合わせルールに従います。証明書のサブジェクト検証は、ピアから証明書を受け取るときにのみ適用されます。サーバーがこの比較を確実に実行するには、ST_TLS_CLIENT_AUTH=2 を設定してサーバーがクライアント証明書を要求する必要があります。
ST_TLS_MIRROR_TRUSTED_HOSTS 鍵ストアに複数の鍵証明書が含まれている場合にのみ必要です。この場合、鍵ストアには証明書ごとに異なる別名が含まれます。サーバー側では、サーバーを識別する証明書の別名を指定します。TLS 接続のクライアント側で鍵ストアを使用する場合は、クライアントを識別する証明書の別名を指定します。
ST_TLS_KEY_LABEL

鍵ストアがST_TLS_KEY_STORE_FILE場合、または鍵ストアにキーが 1 つのみ存在する場合は無視されます。

鍵ストアに複数の鍵証明書が含まれている場合にのみ必要です。この場合、鍵ストアには証明書ごとに異なる別名が含まれます。サーバー側では、サーバーを識別する証明書の別名を指定します。TLS 接続のクライアント側で鍵ストアを使用する場合は、クライアントを識別する証明書の別名を指定します。

stash ファイルを使用するパラメーター

sametime.ini ファイルにパスワードを含めないようにする場合は、証明書ストアのパスワードをスタッシュファイルに格納すると便利です。パスワードスタッシュファイルは安全に暗号化されていないため、無許可アクセスから保護する必要があります。

パスワードスタッシュファイルを初めて作成する場合は、以下の手順を実行します。

  1. sametime.ini の [Config] セクションで、両方のパスワードパラメーターを設定します。

    ST_TLS_TRUST_STORE_PASSWORD=<your password>

    ST_TLS_KEY_STORE_PASSWORD=<your password>

  2. Domino ディレクトリーを基準にした stash ファイルへのパスを設定します。

    ST_TLS_KEY_STORE_PASSWORD_STASH_FILE=<C:\Program Files\HCL\Domino\key.sth>

    ST_TLS_TRUST_STORE_PASSWORD_STASH_FILE=<C:\Program Files\HCL\Domino\trust.sth>

  3. ファイルシステムにパスワードスタッシュファイルが存在しないことを確認してください。
  4. Sametime サーバーを開始します。
  5. 初期化が行われると、IBM Sametime はパスワードスタッシュファイルを作成し、平文パスワードを構成から削除します。
  6. 次にサーバーを開始する際には、このパスワードスタッシュファイルからパスワードが取得されます。
注: パスワード・スタッシュ・ファイルは安全に暗号化されていないため、無許可アクセスから保護する必要があります。