1.6. SGD サーバーへのセキュア接続の調整

このセクションでは、SGD サーバーへのセキュア接続の調整方法について、次のとおり説明します。

1.6.1. SSL デーモンの調整

SSL デーモンは、SGD サーバーへのセキュア接続を処理する SGD コンポーネントです。SGD ホストでは、SSL デーモンは 1 つ以上の ttassl プロセスとして表示されます。

デフォルトでは、SSL デーモンは SSL で暗号化された AIP トラフィックを TCP ポート 5307 で待機します。ただし、ファイアウォール転送を使用している場合は、AIP トラフィックおよび HTTPS トラフィックを受け入れるデーモンとしてポート 443 で待機します。この場合、AIP トラフィックは処理しますが、HTTPS トラフィックは SGD Web サーバーに転送します。

SSL デーモンにかかる負荷でパフォーマンスが低下することがあります。マルチプロセッササーバーを使用している場合も、SSL デーモンプロセスの数をプロセッサの数に合わせることでパフォーマンスが向上する可能性があります。SSL デーモンの調整は、各 SGD サーバーに固有の調整です。デフォルトでは、SGD は 4 つの SSL デーモンプロセスを起動します。SSL デーモンプロセスの数を変更する方法の詳細は、「SSL デーモンプロセスを調整する方法」を参照してください。

SSL デーモンプロセスの監視には、ログフィルタを使用できます。デフォルトでは、すべてのエラーが記録されます。調整やトラブルシューティングに役立つように、ログ出力の量を増やすことできます。「SSL デーモンのログフィルタを変更する方法」を参照してください。使用するログフィルタの形式は、SGD サーバーに使用するログフィルタの形式と同じです。「ログフィルタを使用した SGD サーバーのトラブルシューティング」を参照してください。同じ重要度オプションおよび出力先ファイルオプションを使用できます。デフォルトでは、すべてのエラーが /opt/tarantella/var/log ディレクトリに記録されます。

SSL デーモンが予期せず終了した場合は、完全に失敗にする前に 10 回だけ再起動を試みます。再起動の最大試行回数は変更できます。「SSL デーモンの再起動の最大試行回数を変更する方法」を参照してください。

1.6.1.1. SSL デーモンプロセスを調整する方法

SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。

  1. SGD ホストにスーパーユーザー (root) としてログインします。

  2. SSL デーモンプロセスの数を変更します。

    次のコマンドを使用します。

    # tarantella config edit \
    --tarantella-config-ssldaemon-minprocesses num \
    --tarantella-config-ssldaemon-maxprocesses num
    

    デフォルトの num は 4 です。

    プロセスの最大数および最小数に同じ値を使用します。

    SSL デーモンプロセスの数はプロセッサの数に合わせて調整するのであり、プロセッサコアの数に合わせるのではありません。各プロセッサに設定する SSL デーモンは 1 つまでです。

  3. SGD サーバーを再起動します。

    変更内容を反映するには、SGD サーバーを再起動する必要があります。

1.6.1.2. SSL デーモンのログフィルタを変更する方法

SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。

  1. SGD ホストにスーパーユーザー (root) としてログインします。

  2. SSL デーモンのログフィルタを変更します。

    次のコマンドを使用します。

    # tarantella config edit \
    --tarantella-config-ssldaemon-logfilter filter ...
    

    フィルタをコンマで区切ったリストを使用します。

    デフォルトのフィルタを次に示します。

    ssldaemon/*/*error,multi/daemon/*error:sslmulti%%PID%%.log

  3. SGD サーバーを再起動します。

    変更内容を反映するには、SGD サーバーを再起動する必要があります。

1.6.1.3. SSL デーモンの再起動の最大試行回数を変更する方法

SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。

  1. SGD ホストにスーパーユーザー (root) としてログインします。

  2. SSL デーモンの再起動の最大試行回数を変更します。

    次のコマンドを使用します。

    # tarantella config edit \
    --tarantella-config-ssldaemon-maxrestarts num
    

    デフォルトの最大数は 10 です。再起動の試行回数を -1 に設定すると、再起動の試行回数に制限がなくなります。

  3. SGD サーバーを再起動します。

    変更内容を反映するには、SGD サーバーを再起動する必要があります。

1.6.2. 外部 SSL アクセラレータの使用

SGD は、外部 SSL アクセラレータの使用をサポートしています。SSL 接続に必要な、プロセッサに負荷がかかるトランザクションを外部 SSL アクセラレータへオフロードすることでパフォーマンスが向上する可能性があります。外部 SSL アクセラレータは、サーバー SSL 証明書を集中管理するためにも使用できます。

このセクションの情報は、SGD サーバーへの接続に SSL アクセラレータを使用している場合に適用されます。『オラクル Secure Global Desktop Gateway 管理者ガイド (リリース 4.7 用)』には、SGD Gateway で SSL アクセラレータを使用する方法について記載されています。

SGD で外部 SSL アクセラレータを使用するには、次の手順を実行します。

  • アレイ内の各 SGD サーバーの SSL 証明書を外部 SSL アクセラレータにインストールします

  • SSL 接続を復号化し、それらを暗号化されていない接続として SGD に転送するように外部 SSL アクセラレータを構成します

  • SGD での外部 SSL アクセラレータのサポートを有効にします

外部 SSL アクセラレータのサポートを有効にすると、SGD の SSL デーモンはセキュア接続用に構成されたポートでプレーンテキストトラフィックを受け入れ、自身で復号化した SSL トラフィックとして SGD に転送できます。

サーバー側プロキシサーバーを使用している場合は、使用しているアレイルートを外部 SSL アクセラレータ用に設定することが必要になる場合があります。「サーバー側のプロキシサーバーの設定」を参照してください。

1.6.2.1. 外部 SSL アクセラレータのサポートを有効にする方法

SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。

  1. Administration Console で、「Secure Global Desktop サーバー」タブに移動し、SGD サーバーを選択します。

  2. 「セキュリティー」タブに移動します。

  3. 「SSL アクセラセータのサポート」チェックボックスを選択します。

  4. 「保存」をクリックします。

  5. SGD サーバーを再起動します。

    変更内容を反映するには、SGD サーバーを再起動する必要があります。

1.6.3. セキュア接続の暗号化方式群の選択

SGD サーバーへのセキュア接続に使用される暗号化方式群を選択できます (詳細は、「保護付きのクライアント接続用の暗号化方式群を変更する方法」を参照)。

暗号化方式群は、次の目的に使用される暗号化アルゴリズムの集まりです。

  • 鍵交換 – 共有鍵の作成に必要な情報を保護します

  • 一括暗号化 – クライアントとサーバーとの間で交換されるメッセージを暗号化します

  • メッセージ認証 – メッセージの整合性を確保するためにメッセージのハッシュおよび署名を生成します

暗号化方式群では、これらの作業のために 1 つずつアルゴリズムを指定します。たとえば、RSA_WITH_RC4_128_MD5 暗号化方式群では、キー交換のために RSA、一括暗号化のために 128 ビットキーの RC4、およびメッセージ認証のために MD5 が使用されます。

表1.1「保護付きのクライアント接続用にサポートされている暗号化方式群」 に、サポートされている暗号化方式群の一覧を示します。

表1.1 保護付きのクライアント接続用にサポートされている暗号化方式群

サポートされている暗号化方式群

クライアントの優先順位

OpenSSL 名

RSA_WITH_AES_256_CBC_SHA

1

AES256-SHA

RSA_WITH_AES_128_CBC_SHA

2

AES128-SHA

RSA_WITH_3DES_EDE_CBC_SHA

3

DES-CBC3-SHA

RSA_WITH_RC4_128_SHA

4

RC4-SHA

RSA_WITH_RC4_128_MD5

5

RC4-MD5

RSA_WITH_DES_CBC_SHA

6

DES-CBC-SHA


暗号化方式群を選択するときは、表1.1「保護付きのクライアント接続用にサポートされている暗号化方式群」 に示すように、暗号化方式群の OpenSSL 名を使用します。複数の暗号化方式群を選択した場合は、上記の表に示されているクライアントの優先順位に基づいて、SGD Client は使用する暗号化方式群を決めます。

デフォルトでは、SGD Client は RSA_WITH_AES_256_CBC_SHA 暗号化方式群を使用します。

1.6.3.1. 保護付きのクライアント接続用の暗号化方式群を変更する方法

アレイ内の SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。

  1. アレイ内のプライマリ SGD サーバー上でスーパーユーザー (root) としてログインします。

  2. アレイ内のすべての SGD サーバーを停止します。

  3. 暗号化方式群を指定します。

    次のコマンドを使用します。

    # tarantella config edit \
    --tarantella-config-security-ciphers cipher-suite ...
    

    ここでの cipher-suite は、「セキュア接続の暗号化方式群の選択」 に一覧表示されている、暗号化方式群の OpenSSL 名です。

    デフォルト設定は AES256-SHA です

    複数の cipher-suite を指定する場合は、コロン区切りのリストを使用します。

  4. アレイ内のすべての SGD サーバーを再起動します。

    変更内容を反映するには、SGD サーバーを再起動する必要があります。

1.6.4. 接続定義の使用

接続定義を使用すると、SGD サーバーへ接続する際に、セキュア接続と標準接続のどちらを使用するかを制御できます。接続タイプは、次の要因の影響を受けます。

  • ユーザーのクライアントデバイスの DNS 名または IP アドレス

  • ユーザーがログインする SGD サーバー

SGD サーバーで SGD セキュリティーサービスが有効でない場合は、ユーザーの接続定義に関係なく、そのサーバーへのセキュア接続は使用できません。

注意

SGD がファイアウォール転送用に構成されている場合は、接続定義を使用しないでください。ファイアウォール転送では常に保護付きの接続を使用します。「ファイアウォール越え」を参照してください。

SGD Gateway を使用する場合は、SGD Gateway を経由しない、クライアントの直接接続にのみ接続定義が使用されます。

接続定義を使用するには、次の手順を実行する必要があります。

接続定義処理が有効になったら、標準接続またはセキュリティー保護された接続を使用するユーザーを判別するように接続定義を設定します。接続定義は、組織レベルで設定します。これは組織単位レベルまたはユーザープロファイルレベルで変更できます。デフォルトでは、SGD セキュリティーサービスが有効な場合、すべてのユーザーがセキュア接続を使用できます。

接続定義では、クライアントデバイスと SGD サーバーの IP アドレスまたは DNS 名を使って、標準接続またはセキュア接続のどちらが使用されるかを判断します。最初に一致したエントリが使用されるため、接続定義の順番は重要です。接続定義にワイルドカード * または ? を含めることで、複数の DNS 名や IP アドレスに一致させることができます。

たとえば、Elizabeth Blue のユーザープロファイルオブジェクトには、次の接続定義が設定されています。

クライアントデバイスのアドレス

SGD サーバーのアドレス

接続タイプ

*.example.com

*

標準

*

*

セキュア

Elizabeth が、通常使用するクライアントデバイス sales1.example.com から SGD にログインすると、リスト内の最初の接続定義が一致して、標準接続が使用されます。

Elizabeth が、example.com に所属しないクライアントデバイスから SGD にログインすると、リスト内の 2 番目の接続定義が一致して、セキュア接続が使用されます。

Elizabeth が接続定義を保持していない場合は、組織階層内の親オブジェクトの接続定義により、接続タイプが決定されます。

1.6.4.1. 接続定義処理を有効にする方法

  1. Administration Console で、「グローバル設定」 → 「セキュリティー」タブに移動します。

  2. 「接続定義」チェックボックスを選択します。

  3. 「保存」をクリックします。

1.6.4.2. 接続定義を設定する方法

  1. Administration Console で、「ユーザープロファイル」タブに移動し、設定するオブジェクトを選択します。

    多数のユーザーの接続定義を一度に設定でき、管理が容易になるため、組織および組織単位オブジェクトに対して接続定義を設定することをお勧めします。

  2. 「セキュリティー」タブに移動します。

  3. 接続定義を追加します。

    接続定義内の DNS 名または IP アドレスには、ワイルドカード * または ? を含めることができます。

    1. 「接続定義」テーブルの「追加」ボタンをクリックします。

      「新規接続定義の追加」ウィンドウが表示されます。

    2. 「クライアントデバイスのアドレス」フィールドに、IP または DNS 名を入力します。

    3. 「Secure Global Desktop サーバーのアドレス」フィールドに、IP アドレスまたは DNS 名を入力します。

    4. リストから「接続タイプ」を選択します。

    5. 「追加」をクリックします。

      「新規接続定義の追加」ウィンドウが閉じて、接続定義が「接続定義」テーブルに追加されます。

  4. 必要に応じて、接続定義を追加します。

    「接続定義」テーブルには、組織階層内の親オブジェクトから継承した定義も表示されます。

  5. 「上に移動」および「下に移動」ボタンを使って、接続定義の順番を変更します。

    接続定義の順番は重要です。最初に一致したエントリが使用されます。固有の定義は、一般性の高い設定よりも前に配置するようにしてください。