1.5. SGD サーバーへのセキュア接続

通常は、SGD をセキュアモードでインストールすることによって、セキュア接続を SGD サーバーに構成します。「保護付きの接続の有効化 (自動設定)」で説明するように、セキュアモードは SGD のデフォルトのインストール方法であり、セキュア接続が自動的に構成されます。

セキュア接続を構成せずに、SGD をインストールすることもできます。これは、非セキュアモードでのインストールと呼ばれます。

セキュアモードでのインストールについて

SGD をセキュアモードでインストールすると、次の接続がセキュリティー保護されます。

セキュリティー保護された接続を有効にしたあとは、ユーザーのクライアントプロファイルにログイン URL 用の HTTPS URL が含まれていることを確認してください。「クライアントプロファイル」を参照してください。

セキュアモードでインストールされた SGD サーバーでは、手動構成を使用することによって、あとでセキュア接続を再構成できます。「保護付きの接続の有効化 (手動設定)」を参照してください。

非セキュアモードでのインストールについて

SGD を非セキュアモードでインストールすると、SGD Web サーバーへの HTTP 接続がセキュリティー保護されません。SGD サーバーへの初期 AIP 接続はセキュリティー保護されますが、ユーザーがログインしたあと、AIP 接続は標準接続にダウングレードされます。

非セキュアモードでインストールされた SGD サーバーでは、自動構成または手動構成を使用することによって、あとでセキュア接続を有効にできます。自動構成を使用する方法がもっとも簡単です (「保護付きの接続の有効化 (自動設定)」を参照)。

このセクションの内容は、次のとおりです。

1.5.1. SSL 証明書

SSL 証明書は、符号化されたファイルであり、Web サーバーなどのセキュリティー保護されたサービスがクライアントにそのサービス自体を識別させるために使用されます。セキュア接続を有効にした場合、SGD サーバーには SSL 証明書が必要です。

SGD Web サーバーは、SGD サーバーと同じ SSL 証明書を使用するよう事前に構成されています。これは、Apache 構成ファイル /opt/tarantella/webserver/apache/apache-version/conf/httpd.conf に構成されています。SGD Web サーバー用に別個の SSL 証明書を使うこともできます。

SGD は、PEM (Privacy Enhanced Mail) Base 64 で符号化された X.509 証明書をサポートしています。このような証明書は、次のような構造になっています。

-----BEGIN CERTIFICATE-----
...certificate...
-----END CERTIFICATE-----

SGD は、サーバー SSL 証明書のサブジェクト代替名 (subjectAltName) 拡張をサポートしています。これにより、複数の DNS 名を証明書に関連付けることができます。SSL 証明書に subjectAltName フィールドがある場合は、subject フィールドは無視され、subjectAltName だけが使用されます。サブジェクト代替名のいずれかが接続先の SGD サーバーの名前に一致した場合は、SGD Client によって SSL 証明書が受け入れられます。

1.5.1.1. サポートされている認証局

サーバー SSL 証明書は、認証局 (Certificate Authority、CA) によって発行されます。CA は信頼できるサードパーティーであり、CA 証明書またはルート証明書を使ってサーバー SSL 証明書をデジタル署名します。

SGD では、デフォルトでいくつかの CA 証明書をサポートしています。/opt/tarantella/etc/data/cacerts.txt ファイルには、SGD でサポートされるすべての CA 証明書の X.500 識別名 (DN) および MD5 シグニチャーが含まれています。

CA による署名を受けるために証明書発行要求 (CSR) を作成する必要がある場合は、「証明書発行要求を生成する方法」を参照してください。

サポートされていない CA によって署名されたサーバー SSL 証明書を使用することもできます。ただし、このような証明書は SGD により有効性が検証されていないので、デフォルトでは、すべてのユーザーが証明書を承認するか拒否するかの確認を要求されます。これは、セキュリティーに対する潜在的な危険です。詳細については、「セキュリティー保護された接続およびセキュリティーの警告」を参照してください。

SGD は、証明書チェーンの使用をサポートしています。証明書チェーンを使用すると、中間 CA は別の CA によって発行された CA 証明書を使って SSL 証明書に署名します。

使用しているサーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名された場合は、CA 証明書または証明書チェーンをインストールする必要があります。

1.5.1.2. 自己署名付き SSL 証明書

SGD では、テスト目的で、たとえば SSL 証明書を生成できるようになるまでの登録要件の完了を待っている間に、自己署名付きサーバー SSL 証明書を作成できます。自己署名付き証明書は 365 日間有効です。

自己署名付き SSL 証明書は、正確にはセキュリティー保護されていないため、テスト環境でのみ使用してください。自己署名付き SSL 証明書はユーザーにセキュリティー保護された接続を提供するために使用できますが、ユーザーが接続しているサーバーが本物であるという保証はありません。

自己署名付き SSL 証明書は、次のコマンドを使用して作成できます。

  • tarantella security selfsigntarantella security certrequest コマンドを使用して生成された CSR に自己署名できます

  • tarantella security enable – セキュアな SGD サーバーを自動的に構成し、サーバー SSL 証明書をインストールできます

1.5.1.3. 別の製品用として取得した SSL 証明書の使用

Web サーバーなど、もともと別の製品用として取得した SSL 証明書を使用することができます。このためには、その証明書の非公開鍵を持っている必要があります。非公開鍵の暗号化に、SSLeay または OpenSSL 証明書ライブラリを使用する製品が利用されている場合は、tarantella security decryptkey コマンドでこの暗号化を解除することで非公開鍵を入手できます。非公開鍵を持っていない場合は、新しいサーバー SSL 証明書を入手する必要があります。

1.5.1.4. 証明書発行要求を生成する方法

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

  2. CSR を生成します。

    tarantella security certrequest コマンドを使用して CSR を生成します。

    SGD は、サーバー SSL 証明書のサブジェクト代替名 (subjectAltName) 拡張をサポートしています。これにより、複数の DNS 名を SSL 証明書に関連付けることができます。詳細については、「DNS 名」を参照してください。

    SGD は、ドメイン名の最初の部分にワイルドカード * を使用することをサポートしています (例: *.example.com)。

    CSR を生成すると、公開鍵と非公開鍵のペアも作成されます。

    SGD サーバーでは、CSR は /opt/tarantella/var/tsp/csr.pem ファイルに格納され、非公開鍵は /opt/tarantella/var/tsp/key.pending.pem ファイルに格納されます。

    有効期限が近くなっているなどの理由でサーバー SSL 証明書を置き換えている場合は、現在の証明書に影響を与えることなく CSR を生成できます。

    次の例では、CSR が SGD サーバー boston.example.com に対して生成されます。このサーバーには www.example.com という外部 DNS 名も割り当てられているため、この名前がサブジェクト代替名として追加されます。

    # tarantella security certrequest \
    --country US --state Massachusetts --orgname "Example Com"
     
    The certificate's common name (CN) will be:  boston.example.com
     
    This hostname is included in the Certificate Signing Request (CSR) and
    corresponds to the name of the server that users will connect to.
     
     - If DNS names are used to connect to the server, the hostname above
       MUST be a fully qualified DNS name.
     
     - If clients are required to connect to the server using an IP address,
       the hostname above should be the IP address. A DNS record for this
       IP address SHOULD NOT exist.
     
    For clients to accept the certificate once it's installed, a DNS
    lookup of the hostname followed by a reverse lookup of the result must
    return the original hostname.
     
    The hostname to be used in the certificate request is
    boston.example.com.
     
     
    Do you want to use this hostname? [yes] y
     
     
    Do you want to add any additional hostnames? [no] y
     
    Type in the subject alternative names for the certificate, one per line. Enter a 
    blank line to finish.
     
    subjectAltName: www.example.com
    subjectAltName:
    2048 semi-random bytes loaded
    Generating RSA private key, 1024 bit long modulus
    ..++++++
    ...........................................................++++++
    e is 65537 (0x10001)
     
    --------------------------------------------------------------------------
    Certificate Signing Request (CSR): Summary
    --------------------------------------------------------------------------
     
    Subject:
     C=US
     ST=Massachusetts
     O=Example Com
     CN=boston.example.com
     
     
    Subject Alternative Names:
     DNS:boston.example.com, DNS:www.example.com
     
    The information above will be contained in the CSR.
     
    Create CSR now? [yes] y
     
    Send the following Certificate Signing Request (CSR) to a Certificate
    Authority, such as VeriSign (www.verisign.com). Check with your CA
    that you're providing all the information they need.
     
    ------CUT HERE------
    -----BEGIN CERTIFICATE REQUEST-----
    NhY2h1c2V0MIIB5TCCAU4CAQAwXDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3
    dpZS5VdHMxGTAXBgNVBAoTEEluZGlnbyBJbnN1cmFuY2UxGjAYBgNVBAMTEXJhZG
    sd+SmX7zz6Sy5TdW4uQ09NMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbWM
    sMqBs7gQw8Q1Gk3NAypySP6aRiEItLrfSlZ8XgKXmjmlLtb03V9JonjLfhH3fBzk
    gnOG6EpTmJM4y3OOpEXZZ2yhtWgsQsXyLWbfTLWZPfHLPI5ztEEJ7Z0G6dpeG0xg
    wODA2ApAp6sIrmBqbZG2Aaf5poB+FQ4lsmQIDAQABoEkwRwYJKoZIhvcNAQkOMTo
    N1cmFuBgNVHREELzAtghFyYWRnaWUuVUsuU3VuLkNPTYIYd3d3LmluZGlnby1pbn
    V617E7oFKY2UuY29tMA0GCSqGSIb3DQEBBQUAA4GBAMsOieZzrGHN7fkW6LmYNHW
    sW1tmHeFjekpiUiTLYE+KUZXKKCH9f1eo+nfwFdi9VOomIdga4uehl+4acqqiGEe
    W4iIb9BC9b/V1pA/lGJwWN0aDDB3/d47UGAlli+spW37chg53Fp7eP2xIYWfJR6O
    35eSPZm42dyp
    -----END CERTIFICATE REQUEST-----
    ------CUT HERE------
     
    When you receive your certificate, use 'tarantella security certuse'
    to install it.
    
  3. CSR を CA に送信します。

    SGD がデフォルトでサポートしている CA の詳細については、「サポートされている認証局」を参照してください。

    コマンド行の出力の CSR をコピーするか、SGD サーバーの /opt/tarantella/var/tsp/csr.pem ファイルに格納されている CSR のコピーを使用します。

1.5.1.5. サーバー SSL 証明書を置き換える方法

元の SSL 証明書の有効期限が近くなっているなどの理由で SGD サーバーのサーバー SSL 証明書を置き換えるには、次の手順を実行します。

  1. (オプション) CSR を生成して CA に送信します。

    「証明書発行要求を生成する方法」を参照してください。

  2. サーバー SSL 証明書をインストールします。

    「サーバー SSL 証明書をインストールする方法」を参照してください。

  3. (オプション) CA 証明書をインストールします。

    この手順を実行するのは、サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名された場合だけです。「サポートされている認証局」を参照してください。

    インストールする必要がある証明書は、次のとおりです。

  4. SGD サーバーと SGD Web サーバーを再起動します。

    新しいサーバー SSL 証明書がセキュア接続に確実に使用されるようにするには、SGD サーバーを再起動する必要があります。

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

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

    # tarantella restart

1.5.2. ファイアウォール越え

SGD サーバーに対する AIP 接続は、TCP ポート 3144 および 5307 上で確立されます。ファイアウォール内で必要なポートを開くことができない場合は、すべての SGD トラフィックを単一のポート (通常はポート 443) で転送できます。このためには、次のいずれかを実行します。

SGD Gateway はファイアウォールを超えた転送に最善の対処方法で、HTTP 接続の負荷分散などのその他の利点もあります。

1.5.2.1. SGD Gateway

SGD Gateway は SGD のオプションコンポーネントです。SGD Gateway は非武装ゾーン (DMZ) で SGD アレイの前に配備されるように設計されたプロキシサーバーで、これにより、組織内のネットワーク上に SGD アレイを配置できるようになります。また、アレイ内の SGD サーバーに接続する前に、すべての接続を DMZ で認証できます。

SGD Gateway をインストール、構成、および使用する方法の手順については、『オラクル Secure Global Desktop Gateway 管理者ガイド (リリース 4.7 用)』を参照してください。

1.5.2.2. ファイアウォール転送の使用

SGD Gateway を使用しない場合は、ファイアウォール転送を使用して、単一のポートを使用した SGD へのアクセスをユーザーに提供します。ファイアウォール転送を使用するときは、ポート 443 で待機するように SGD サーバーを構成します。その後、SGD サーバーは、AIP トラフィック以外のすべてのトラフィックを SGD Web サーバーに転送します。

SGD がファイアウォール転送に対応するように構成されている場合は、クライアントデバイスの IP アドレスのフィルタリングに依存するどの SGD 機能も使用できません。つまり、次の機能は使用できません。

ファイアウォール転送を使用する場合は、1 つの外部 DNS 名 (たとえば、*:www.example.com) を構成できます。次に、分割 DNS を使用することにより、クライアントはファイアウォールの内側にあるか外側にあるかに応じて、DNS 名を異なる IP アドレスに解決できます。

1.5.3. 保護付きの接続の有効化 (自動設定)

tarantella security enable コマンドを使用すると、セキュア接続をすばやく構成し、有効にできます。このコマンドを使用できるのは、次の条件を両方とも満たしている場合だけです。

  • SGD のインストールが標準接続を使用した新規インストールです。これまでに SGD のセキュア接続を構成しようとする試みが行われてはいけません。

  • SGD サーバーがアレイ内のほかの SGD サーバーと連結されていません。

これらの条件が満たされない場合、tarantella security enable コマンドは失敗するため、手動でセキュリティーを構成して有効にする必要があります。「保護付きの接続の有効化 (手動設定)」を参照してください。

tarantella security enable コマンドは、次の構成を行います。

  • 指定したサーバー SSL 証明書をインストールします。

  • SGD Web サーバーへの HTTPS 接続を有効にします。

  • (オプション) ファイアウォール転送に対応するように SGD サーバーを構成します。

  • SGD セキュリティーサービスを有効にします。

  • SGD サーバーと SGD Web サーバーを再起動します。

SSL 証明書をインストールするには、証明書と非公開鍵をあらかじめ持っている必要があります。CA による署名を受けるために CSR を送信する必要がある場合は、「証明書発行要求を生成する方法」を参照してください。

インストールするサーバー SSL 証明書を指定しない場合は、tarantella security enable コマンドによって自己署名付き SSL 証明書が作成され、インストールされます。あとでサーバー SSL 証明書をインストールする場合は、tarantella security disable コマンドを使用してセキュリティー設定を以前の状態に戻します。次に、tarantella security enable コマンドを再度実行して、サーバー SSL 証明書を指定します。

デフォルトでは、tarantella security enable コマンドによって、ファイアウォール転送に対応するように SGD サーバーが構成されます。ファイアウォール転送を使用しないセキュリティーを有効にする場合は、--firewalltraversal off オプションを指定します。あとでファイアウォール転送を有効にするには、次のどちらかの操作を実行します。

  • tarantella security disable コマンドを使用して、セキュリティー設定を以前の状態に戻します。次に、tarantella security enable コマンドを使用して、ファイアウォール転送に対応するように SGD サーバーを構成します。

  • ファイアウォール転送を有効にします。この方法の詳細については、「ファイアウォール転送を設定する方法」を参照してください。

注意

ファイアウォール転送に対応するように構成されている SGD サーバーを SGD Gateway で使用することはできません。

1.5.3.1. セキュリティー保護された接続を有効にする方法 (自動設定)

作業を開始する前に、サーバー SSL 証明書、および必要に応じて非公開鍵と CA 証明書にアクセスできることを確認してください。証明書は PEM 形式で作成されている必要があります。

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

SGD サーバーが実行中であることを確認します。tarantella status コマンドを使用すると、SGD サーバーの現在のステータスを表示できます。

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

  2. サーバー SSL 証明書をインストールし、SGD セキュリティーサービスを有効にします。

    tarantella security enable コマンドを使用して、サーバー SSL 証明書をインストールし、SGD セキュリティーサービスを有効にします。

    tarantella security certrequest コマンドを使用して CSR を生成した場合は、--keyfile オプションを省略できます。/opt/tarantella/var/tsp/key.pending.pem ファイルに格納されている鍵が使用されます。サーバー SSL 証明書をインストールすると、非公開鍵が /opt/tarantella/var/tsp/key.pem ファイルに移動されます。

    注意

    --certfile オプションと --keyfile オプションを一緒に使用した場合は、SGD サーバーの /opt/tarantella/var/tsp ディレクトリにある SSL 証明書ファイルと鍵ファイルへのシンボリックリンクが作成されます。このコマンドを実行したあとに、SSL 証明書ファイルまたは鍵ファイルを削除したり移動したりしないでください。

    インストールするサーバー SSL 証明書を指定しない場合は、tarantella security enable コマンドによって CSR が生成され、次に自己署名付き SSL 証明書が作成されてインストールされます。自己署名付き SSL 証明書は、テスト目的でのみ使用してください。

    SGD はデフォルトでいくつかの CA をサポートしています。--rootfile オプションは、サポートされていない CA、または中間 CA によってサーバー SSL 証明書が署名された場合にだけ使用します。詳細については、「サポートされている認証局」を参照してください。

    サーバー SSL 証明書が中間 CA によって署名された場合は、CA 証明書チェーン内のすべての証明書を 1 つのファイルにまとめます。証明書は PEM 形式で作成されている必要があります。サーバー SSL 証明書の署名に使用される CA 証明書が最初に表示される必要があります。例:

    -----BEGIN CERTIFICATE-----
    ...Intermediate CA's certificate...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...CA root certificate...
    -----END CERTIFICATE-----
    

    証明書または鍵ファイルのパスを指定する場合は、ファイルのフルパスを指定する必要があります。このパスは、ttasys ユーザーから読み取り可能である必要があります。

    注意

    SGD Gateway を使用する場合は、--firewalltraversal off オプションを使用してファイアウォール転送なしでセキュリティーを有効にする必要があります。ファイアウォール転送に対応するように構成されている SGD サーバーを SGD Gateway で使用することはできません。

    CSR、SSL 証明書、非公開鍵、および CA 証明書が SGD サーバーの /opt/tarantella/var/tsp ディレクトリに格納されます。

    • サーバー SSL 証明書が、サポートされる CA によって署名されており、CSR を生成するために tarantella security certrequest コマンドを使用した場合は、次のコマンドを使用します。

      # tarantella security enable [ --firewalltraversal off ]\
      --certfile certificate-path
      
    • サーバー SSL 証明書が、サポートされる CA によって署名されており、CSR を生成するために tarantella security certrequest コマンドを使用しなかった場合は、次のコマンドを使用します。

      # tarantella security enable [ --firewalltraversal off ]\
      --certfile certificate-path --keyfile key-path
      
    • サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名されている場合は、次のコマンドを使用します。

      # tarantella security enable [ --firewalltraversal off ]\
      --certfile certificate-path [--keyfile key-path] \
      --rootfile CA-certificate-path
      
    • 自己署名付き SSL 証明書を使用して SGD セキュリティーサービスを有効にするには、次のコマンドを使用します。

      # tarantella security enable [ --firewalltraversal off ]

1.5.4. 保護付きの接続の有効化 (手動設定)

手動設定を使って保護付きの接続を有効にするには、次の手順を実行する必要があります。

  1. (オプション) 証明書発行要求 (CSR) を生成して CA に送信します。

    「証明書発行要求を生成する方法」を参照してください。

    tarantella security certrequest コマンドで CSR を生成しないでサーバー SSL 証明書を取得する場合、この手順はオプションです。

    Web サーバーなど、別のの製品用の SSL 証明書がすでにある場合は、その証明書を使用できることがあります。「別の製品用として取得した SSL 証明書の使用」を参照してください。

  2. アレイ内の SGD サーバーごとに SSL 証明書をインストールします。

    セキュア接続を使用するには、SGD サーバーが SGD Client にそのサーバー自体を識別させるための SSL 証明書を提示する必要があります。「サーバー SSL 証明書をインストールする方法」を参照してください。

  3. (オプション) CA 証明書をインストールします。

    この手順を実行するのは、サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名された場合だけです。「サポートされている認証局」を参照してください。

    インストールする必要がある証明書は、次のとおりです。

  4. (オプション) ファイアウォール転送用に SGD を構成します。

    ファイアウォール転送を使用するタイミングについての詳細は、「ファイアウォール越え」を参照してください。

    「ファイアウォール転送を設定する方法」を参照してください。

  5. SGD セキュリティーサービスを有効にし、SGD を再起動します。

    セキュア保護された接続を有効にするには、SGD セキュリティーサービスを有効にし、SGD を再起動する必要があります。

    「SGD サーバーの SGD セキュリティーサービスを有効にする方法」を参照してください。

1.5.4.1. サーバー SSL 証明書をインストールする方法

tarantella security certrequest コマンドで CSR を生成して取得したサーバー SSL 証明書をインストールするには、次の手順を実行します。

作業を開始する前に、サーバー SSL 証明書にアクセスできることを確認してください。SSL 証明書は PEM 形式で作成されている必要があります。

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

  2. サーバー SSL 証明書をインストールします。

    tarantella security certuse コマンドを使用して SSL 証明書をインストールします。

    元の SSL 証明書の有効期限が近くなっているなどの理由でサーバー SSL 証明書を置き換えている場合は、tarantella security certuse コマンドから、SSL 証明書と非公開鍵をオーバーライドする前の確認が求められます。

    サーバー SSL 証明書をインストールすると、/opt/tarantella/var/tsp/key.pending.pem ファイルに格納されている非公開鍵が /opt/tarantella/var/tsp/key.pem ファイルに移動されます。

    ファイルのパスを指定する場合は、ファイルのフルパスを指定する必要があります。このパスは、ttasys ユーザーから読み取り可能である必要があります。

    CSR、SSL 証明書、および非公開鍵が SGD サーバーの /opt/tarantella/var/tsp ディレクトリに格納されます。

    • 標準入力から SSL 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security certuse

      サーバー SSL 証明書を標準入力にペーストし、Ctrl+D キーを押します。

    • 一時ファイルから SSL 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security certuse < /tmp/cert
    • 永続的なファイルから SSL 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security certuse --certfile /opt/certs/cert.pem
      注意

      このコマンドにより、SGD サーバーの /opt/tarantella/var/tsp ディレクトリにある SSL 証明書ファイルへのシンボリックリンクが作成されます。このコマンドを実行したあとに、SSL 証明書ファイルを削除したり移動したりしないでください。

1.5.4.2. サポートされていない CA の CA 証明書をインストールする方法

作業を開始する前に、CA 証明書にアクセスできることを確認してください。CA 証明書は PEM 形式で作成されている必要があります。

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

  2. CA 証明書をインストールします。

    tarantella security customca コマンドを使用します。

    • 標準入力から CA 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security customca

      CA 証明書を標準入力にペーストし、Ctrl+D キーを押します。

    • ファイルから CA 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security customca --rootfile /tmp/cert

      ファイルへのフルパスを指定します。このパスは、ttasys ユーザーから読み取り可能である必要があります。

1.5.4.3. CA 証明書チェーンをインストールする方法

作業を開始する前に、CA 証明書チェーン内にすべての証明書が存在することを確認してください。証明書は PEM 形式で作成されている必要があります。

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

  2. チェーン内のすべての証明書を結合して 1 つのファイルにします。

    たとえば、chainedcerts.pem というファイルを作成します。

    サーバー SSL 証明書の署名に使用される CA 証明書が最初に表示される必要があります。例:

    -----BEGIN CERTIFICATE-----
    ...Intermediate CA's certificate...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...CA root certificate...
    -----END CERTIFICATE-----
    
  3. CA 証明書チェーンをインストールします。

    tarantella security customca コマンドを使用します。

    • 標準入力から CA 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security customca

      CA 証明書チェーンを標準入力にペーストし、Ctrl+D キーを押します。

    • ファイルから CA 証明書をインストールするには、次のコマンドを使用します。

      # tarantella security customca --rootfile /tmp/chainedcerts.pem

      ファイルへのフルパスを指定します。このパスは、ttasys ユーザーから読み取り可能である必要があります。

1.5.4.4. ファイアウォール転送を設定する方法

  1. localhost および TCP ポート 443 にバインドするようにアレイ内の各 SGD Web サーバーを構成します。

    アレイ内の各 SGD Web サーバーで、次の手順を繰り返します。

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

    2. Apache 構成ファイルを編集します。

      構成ファイルは /opt/tarantella/webserver/apache/apache-version/conf/httpd.conf です。

    3. SSL Support セクションの <IfDefine SSL> 指令を変更します。

      指令を次のように変更します。

      <IfDefine SSL>
      Listen 127.0.0.1:443
      </IfDefine>
    4. 変更を保存します。

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

  3. 暗号化された接続に TCP ポート 443 を使用するように、アレイ内の各 SGD サーバーを構成します。

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

    # tarantella config edit --array-port-encrypted 443
    ヒント

    Administration Console でポートを設定することもできます。「グローバル設定」 → 「通信」タブに移動します。「暗号化されている接続ポート」フィールドに 443 と入力します。

  4. HTTP トラフィックを SGD Web サーバーに転送するように、アレイ内の各 SGD サーバーを構成します。

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

    # tarantella config edit --array \
    --security-firewallurl https://127.0.0.1:443
    ヒント

    Administration Console でポートを設定することもできます。SGD サーバーを選択し、「セキュリティー」タブに移動します。「ファイアウォール転送 URL」フィールドに https://127.0.0.1:443 と入力します。

  5. アレイ内の SGD サーバーごとに、ファイアウォール転送 URL が有効になっていることを確認します。

    次のコマンドを使用して、各サーバーを確認します。

    # tarantella config list --server serv --security-firewallurl
    

1.5.4.5. SGD サーバーの SGD セキュリティーサービスを有効にする方法

SGD サーバーが実行中であることを確認します。tarantella status コマンドを使用すると、SGD サーバーの現在のステータスを表示できます。

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

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

  2. SGD セキュリティーサービスを有効にします。

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

    # tarantella security start
  3. SGD サーバーと SGD Web サーバーを再起動します。

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

    # tarantella restart --https 

    セキュリティーを一度有効にすると、SGD を再起動するたびに必ずセキュリティーサービスが使用可能になります。

1.5.5. セキュリティー保護された接続およびセキュリティーの警告

SGD へのセキュア接続を使用するときは、次のセキュリティー警告の一部またはすべてが表示されます。

  • ブラウザと Java Plug-in ソフトウェアのセキュリティー警告

  • SGD サーバー SSL 証明書のセキュリティー警告

  • 信頼されない初期接続の警告

注記

SGD セキュリティーサービスが有効でない場合でも、これらの警告が表示されることがあります。これは、SGD Client と SGD サーバー間の初期接続が常にセキュリティー保護されるからです。

このセクションでは、これらの警告が表示される理由とその対処方法について説明します。

1.5.5.1. ブラウザと Java Plug-in ソフトウェアのセキュリティー警告

SGD Web サーバーへのセキュア接続 (HTTPS) を有効にしている場合、Web サーバー SSL 証明書の署名に使用される CA 証明書またはルート証明書がブラウザの証明書ストアで使用可能になっていないと、警告が表示されます。セキュリティーの警告を表示しないで Web サーバー SSL 証明書の有効性を検証できるようにするには、CA 証明書またはルート証明書をユーザーのブラウザ証明書ストアにインポートします。このためには、ブラウザのツールを使用します。

ブラウザで Java テクノロジが有効になっている場合は、Java Plug-in ソフトウェアによって Web サーバーの SSL 証明書に関する警告が表示されることもあります。これは Java コントロールパネルの設定によります。デフォルトでは、Java Plug-in ソフトウェアはブラウザ証明書ストアにある証明書を使用する構成になっています。Plug-in ソフトウェアがこのような構成になっていない場合は、必要に応じ、Java コントロールパネルを使って CA 証明書またはルート証明書をインポートしてください。

1.5.5.2. SGD サーバー SSL 証明書のセキュリティー警告

サーバー SSL 証明書を保持している SGD サーバーにユーザーがログインすると、SGD Client は処理を続行する前に証明書の有効性を検証します。

サーバー SSL 証明書に問題がある場合は、セキュリティー警告メッセージが表示されます。セキュリティー警告メッセージを使用すると、ユーザーは、SSL 証明書を永続的に承認するか、一時的に承認するか、または拒否するかを選択する前に SSL 証明書の詳細を表示できます。図1.1「SGD サーバー SSL 証明書のセキュリティー警告メッセージの例」に、セキュリティー警告メッセージの例を示します。

図1.1 SGD サーバー SSL 証明書のセキュリティー警告メッセージの例

セキュリティー警告メッセージの例のスクリーンショット

ユーザーが SSL 証明書を拒否した場合は、SGD への接続が終了します。

ユーザーが SSL 証明書を一時的に承認し、初期接続に同意した場合、SSL 証明書の詳細はユーザーセッションが存続している間キャッシュに保存されます。ユーザーが次回ログインするときに、SSL 証明書の確認メッセージが再度表示されます。ユーザーが SSL 証明書を永続的に承認し、初期接続に同意した場合は、ふたたび SSL 証明書の確認が求められることはありません。初期接続への同意の詳細については、「信頼されない初期接続の警告」を参照してください。

SSL 証明書に関するセキュリティー警告は、次の状況で表示されます。

  • 無効な日付 – 現在の日付が SSL 証明書内の「Not Before」の日付より前になっているか、または現在の日付が SSL 証明書内の「Not After」の日付のあとになっている

  • 正しくないホスト名 – SGD Client が接続しているホストの名前が、SSL 証明書内の「Subject」または「Subject Alt Name」に一致しない

  • 発行者不明 – SSL 証明書が、サポートされていない CA によって署名されている

発行者不明のセキュリティー警告を回避する方法の詳細については、「発行者不明のセキュリティー警告を回避する」を参照してください。

1.5.5.3. 信頼されない初期接続の警告

SGD では、信頼できるサーバーだけに接続するように、SGD への接続をユーザーが承認する必要があります。SGD サーバーに最初に接続するときは、図1.2「信頼されない初期接続の警告」に示すように、ユーザーがサーバーにはじめて接続していることを通知する「信頼されない初期接続」メッセージが表示されます。

図1.2 信頼されない初期接続の警告

「信頼されない初期接続」警告のスクリーンキャプチャーです。

ユーザーは、「証明書の表示」ボタンをクリックし、有効期間とサブジェクトの詳細が正しいことを確認することによって SSL 証明書の詳細を確認できます。ユーザーは、この確認を行なってから、「はい」をクリックして接続に同意する必要があります。ユーザーが接続に同意すると、クライアントデバイス上の次のファイルが更新されます。

  • hostsvisited

  • certstore.pem

hostsvisited ファイルと certstore.pem ファイルは、ユーザーのクライアントプロファイルキャッシュと同じ場所に保存されます。詳細については、「プロファイルキャッシュについて」を参照してください。

ユーザーが SGD サーバーへの接続に同意すると、クライアントデバイス上の hostsvisited ファイルがそのSGD サーバーの名前で更新されます。サーバー SSL 証明書が、サポートされていない CA によって署名されている場合は、CA 証明書のフィンガプリントも追加されます。問題が発生しないかぎり、接続に関するプロンプトがユーザーにふたたび表示されることはありません。

ユーザーが SGD サーバーへの接続に同意したときに、サーバー SSL 証明書が有効な場合は、そのサーバー SSL 証明書がクライアントデバイス上の certstore.pem ファイルに追加されます。

サポートされていない CA によって署名されているなどの理由でサーバー SSL 証明書に問題が発生した場合は、「SGD サーバー SSL 証明書のセキュリティー警告」で説明されているように、証明書のセキュリティー警告が表示されます。ユーザーが SSL 証明書、または SSL 証明書とその CA チェーンを永続的に承認し、SGD サーバーへの接続に同意した場合は、その SSL 証明書がクライアントデバイス上の certstore.pem ファイルに追加されます。ユーザーが次回ログインするときに、SSL 証明書の確認メッセージは表示されません。ユーザーが SSL 証明書を一時的に承認し、SGD サーバーへの接続に同意した場合、SSL 証明書はクライアントデバイス上の certstore.pem ファイルに追加されません。ユーザーが次回ログインするときに、SSL 証明書の確認メッセージが表示されます

サーバー SSL 証明書が変更されたなどの理由で接続に問題が発生した場合は、図1.3「「安全でない可能性のある接続」メッセージ」 に示すように、「安全でない可能性のある接続」メッセージが表示されます。

図1.3 「安全でない可能性のある接続」メッセージ

「安全でない可能性のある接続」警告のスクリーンキャプチャーです。

ユーザーが信頼されている SGD サーバーだけに接続されるようにするために、SGD 管理者は次のことを実行できます。

  • SGD サーバーへの接続に同意するとセキュリティー上どのように影響があるかをユーザーに説明します。

  • 事前構成された hostsvisited ファイルをユーザーに提供します。「事前構成された hostsvisited ファイルの使用」を参照してください。

発行者不明のセキュリティー警告が表示されないようにする方法の詳細について、「発行者不明のセキュリティー警告を回避する」も参照してください。

1.5.5.3.1. 事前構成された hostsvisited ファイルの使用

事前構成された hostsvisited ファイルは、SGD Client が SGD サーバーに最初に接続したとき警告が表示されないようにするために使用できます。また、このファイルは SGD Client が接続できる SGD サーバーを制限するためにも使用できます。

事前構成された hostsvisited ファイルを使用するには、最初にすべての SGD サーバーのホスト名が含まれているファイルを作成します。SGD サーバーのサーバー SSL 証明書が、サポートされていない CA によって署名されている場合は、CA 証明書のフィンガプリントも追加する必要があります。もっとも簡単な作成方法は、既存の hostsvisited ファイルをコピーおよび編集してから、クライアントデバイスにインストールすることです。また、tarantella security fingerprint コマンドを使用して CA 証明書のフィンガプリントを取得することもできます。

<allowhostoverride> 行を hostsvisited ファイルに手動で追加できます。<allowhostoverride> 行の値が 0 の場合、SGD Client は、hostsvisited ファイル内にエントリがある SGD サーバーにのみ接続できます。<allowhostoverride> 行の値が 1 の場合、または <allowhostoverride> 行がない場合、SGD Client は任意の SGD サーバーに接続できます。SGD Client が hostsvisited ファイルに一覧表示されていない SGD サーバーに接続した場合は、警告だけが表示されます。次に、hostsvisited ファイルの例を示します。

<?xml version="1.0" encoding="UTF-8" ?>
<array>
 <allowhostoverride>0</allowhostoverride>
 <server peername="boston.example.com">
  <certfingerprint>51:B7:6D:FA:6E:3B:BE:ED:37:73:D4:9D:5B:C5:71:F6
  </certfingerprint>
 </server>
</array>
1.5.5.3.2. 発行者不明のセキュリティー警告を回避する

発行者不明のセキュリティー警告は、SGD サーバーのサーバー SSL 証明書が、サポートされていない CA によって発行された場合に表示されます。この警告が表示されるのは、証明書の発行者を検証できないためです。

発行者不明のセキュリティー警告を回避するためのもっとも簡単な方法は、サーバー SSL 証明書が必ず、サポートされる CA によって署名されるようにすることです。詳細については、「サポートされている認証局」を参照してください。

SSL 証明書の有効性を検証できるようにするには、CA 証明書または証明書チェーンをインストールする必要があります。ただし、CA 証明書をインストールした場合でも、ユーザーが SGD サーバーに最初に接続するときは、SSL 証明書に関するセキュリティー警告が表示されます。証明書に関する警告が表示されないようにするための唯一の方法は、サーバー SSL 証明書をクライアントデバイス上の certstore.pem ファイルに追加することです。サーバー SSL 証明書は、各 SGD サーバーの /opt/tarantella/var/tsp/cert.pem ファイルに格納されます。