通常は、SGD をセキュアモードでインストールすることによって、セキュア接続を SGD サーバーに構成します。「保護付きの接続の有効化 (自動設定)」で説明するように、セキュアモードは SGD のデフォルトのインストール方法であり、セキュア接続が自動的に構成されます。
セキュア接続を構成せずに、SGD をインストールすることもできます。これは、非セキュアモードでのインストールと呼ばれます。
SGD をセキュアモードでインストールすると、次の接続がセキュリティー保護されます。
AIP 接続。AIP 接続は、SGD サーバーに SSL 証明書をインストールし、SGD セキュリティーサービスを有効にすることによってセキュリティー保護されます。SGD セキュリティーサービスを使用すると、SGD が TLS (Transport Layer Security) または SSL (Secure Sockets Layer) を使用して SGD サーバーへのセキュア接続を確立できるようになります。
インストール中に証明書の詳細を指定しない場合、自己署名付き SSL 証明書が自動的に作成されてインストールされます。自己署名付き SSL 証明書は、テスト目的でのみ使用してください。
HTTP 接続。HTTP 接続は、SGD Web サーバーで HTTPS 接続を有効にすることによってセキュリティー保護されます。SGD サーバーまたは SGD Web サーバーの起動時に --https
引数を使用すると、HTTPS 接続が有効になります。
SGD Web サーバーは、HTTPS Web サーバーになるように事前構成されており、SGD サーバーと同じ SSL 証明書を使用します。
SGD サーバーで HTTPS 接続が有効になっている場合は、アレイ内のすべての SGD Web サーバーで HTTPS 接続を有効にする必要があります。同一の SGD アレイの中に HTTP と HTTPS の Web サーバーを混在させてはいけません。また、アレイ内の SGD Web サーバーは同一の HTTPS ポートを使用する必要があります。
セキュリティー保護された接続を有効にしたあとは、ユーザーのクライアントプロファイルにログイン URL 用の HTTPS URL が含まれていることを確認してください。「クライアントプロファイル」を参照してください。
セキュアモードでインストールされた SGD サーバーでは、手動構成を使用することによって、あとでセキュア接続を再構成できます。「保護付きの接続の有効化 (手動設定)」を参照してください。
SGD を非セキュアモードでインストールすると、SGD Web サーバーへの HTTP 接続がセキュリティー保護されません。SGD サーバーへの初期 AIP 接続はセキュリティー保護されますが、ユーザーがログインしたあと、AIP 接続は標準接続にダウングレードされます。
非セキュアモードでインストールされた SGD サーバーでは、自動構成または手動構成を使用することによって、あとでセキュア接続を有効にできます。自動構成を使用する方法がもっとも簡単です (「保護付きの接続の有効化 (自動設定)」を参照)。
このセクションの内容は、次のとおりです。
SSL 証明書は、符号化されたファイルであり、Web サーバーなどのセキュリティー保護されたサービスがクライアントにそのサービス自体を識別させるために使用されます。セキュア接続を有効にした場合、SGD サーバーには SSL 証明書が必要です。
SGD Web サーバーは、SGD サーバーと同じ SSL 証明書を使用するよう事前に構成されています。これは、Apache 構成ファイル /opt/tarantella/webserver/apache/
に構成されています。SGD Web サーバー用に別個の SSL 証明書を使うこともできます。
apache-version
/conf/httpd.conf
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 証明書が受け入れられます。
サーバー 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 証明書または証明書チェーンをインストールする必要があります。
SGD では、テスト目的で、たとえば SSL 証明書を生成できるようになるまでの登録要件の完了を待っている間に、自己署名付きサーバー SSL 証明書を作成できます。自己署名付き証明書は 365 日間有効です。
自己署名付き SSL 証明書は、正確にはセキュリティー保護されていないため、テスト環境でのみ使用してください。自己署名付き SSL 証明書はユーザーにセキュリティー保護された接続を提供するために使用できますが、ユーザーが接続しているサーバーが本物であるという保証はありません。
自己署名付き SSL 証明書は、次のコマンドを使用して作成できます。
tarantella security selfsign – tarantella security certrequest コマンドを使用して生成された CSR に自己署名できます
tarantella security enable – セキュアな SGD サーバーを自動的に構成し、サーバー SSL 証明書をインストールできます
Web サーバーなど、もともと別の製品用として取得した SSL 証明書を使用することができます。このためには、その証明書の非公開鍵を持っている必要があります。非公開鍵の暗号化に、SSLeay または OpenSSL 証明書ライブラリを使用する製品が利用されている場合は、tarantella security decryptkey コマンドでこの暗号化を解除することで非公開鍵を入手できます。非公開鍵を持っていない場合は、新しいサーバー SSL 証明書を入手する必要があります。
SGD ホスト上でスーパーユーザー (root) としてログインします。
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.
CSR を CA に送信します。
SGD がデフォルトでサポートしている CA の詳細については、「サポートされている認証局」を参照してください。
コマンド行の出力の CSR をコピーするか、SGD サーバーの /opt/tarantella/var/tsp/csr.pem
ファイルに格納されている CSR のコピーを使用します。
元の SSL 証明書の有効期限が近くなっているなどの理由で SGD サーバーのサーバー SSL 証明書を置き換えるには、次の手順を実行します。
(オプション) CSR を生成して CA に送信します。
「証明書発行要求を生成する方法」を参照してください。
サーバー SSL 証明書をインストールします。
「サーバー SSL 証明書をインストールする方法」を参照してください。
(オプション) CA 証明書をインストールします。
この手順を実行するのは、サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名された場合だけです。「サポートされている認証局」を参照してください。
インストールする必要がある証明書は、次のとおりです。
サポートされていない CA。CA 証明書またはルート証明書をインポートします (「サポートされていない CA の CA 証明書をインストールする方法」を参照)。
中間 CA。CA 証明書チェーンをインポートします (「CA 証明書チェーンをインストールする方法」を参照)。
SGD サーバーと SGD Web サーバーを再起動します。
新しいサーバー SSL 証明書がセキュア接続に確実に使用されるようにするには、SGD サーバーを再起動する必要があります。
SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。
次のコマンドを使用します。
# tarantella restart
SGD サーバーに対する AIP 接続は、TCP ポート 3144 および 5307 上で確立されます。ファイアウォール内で必要なポートを開くことができない場合は、すべての SGD トラフィックを単一のポート (通常はポート 443) で転送できます。このためには、次のいずれかを実行します。
SGD Gateway – 詳細については、「SGD Gateway」を参照してください
ファイアウォール転送 – 詳細については、「ファイアウォール転送の使用」を参照してください
SGD Gateway はファイアウォールを超えた転送に最善の対処方法で、HTTP 接続の負荷分散などのその他の利点もあります。
SGD Gateway は SGD のオプションコンポーネントです。SGD Gateway は非武装ゾーン (DMZ) で SGD アレイの前に配備されるように設計されたプロキシサーバーで、これにより、組織内のネットワーク上に SGD アレイを配置できるようになります。また、アレイ内の SGD サーバーに接続する前に、すべての接続を DMZ で認証できます。
SGD Gateway をインストール、構成、および使用する方法の手順については、『オラクル Secure Global Desktop Gateway 管理者ガイド (リリース 4.7 用)』を参照してください。
SGD Gateway を使用しない場合は、ファイアウォール転送を使用して、単一のポートを使用した SGD へのアクセスをユーザーに提供します。ファイアウォール転送を使用するときは、ポート 443 で待機するように SGD サーバーを構成します。その後、SGD サーバーは、AIP トラフィック以外のすべてのトラフィックを SGD Web サーバーに転送します。
SGD がファイアウォール転送に対応するように構成されている場合は、クライアントデバイスの IP アドレスのフィルタリングに依存するどの SGD 機能も使用できません。つまり、次の機能は使用できません。
SGD Gateway – 詳細については、「SGD Gateway」を参照してください
複数の外部 DNS 名 – 詳細については、「外部 DNS 名の設定」を参照してください
複数のアレイルート – 詳細については、「サーバー側のプロキシサーバーの設定」を参照してください
接続定義 – 詳細については、「接続定義の使用」を参照してください
ファイアウォール転送を使用する場合は、1 つの外部 DNS 名 (たとえば、*:www.example.com
) を構成できます。次に、分割 DNS を使用することにより、クライアントはファイアウォールの内側にあるか外側にあるかに応じて、DNS 名を異なる IP アドレスに解決できます。
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 で使用することはできません。
作業を開始する前に、サーバー SSL 証明書、および必要に応じて非公開鍵と CA 証明書にアクセスできることを確認してください。証明書は PEM 形式で作成されている必要があります。
SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。
SGD サーバーが実行中であることを確認します。tarantella status コマンドを使用すると、SGD サーバーの現在のステータスを表示できます。
SGD ホスト上でスーパーユーザー (root) としてログインします。
サーバー 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 ]\ --certfilecertificate-path
--keyfilekey-path
サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名されている場合は、次のコマンドを使用します。
# tarantella security enable [ --firewalltraversal off ]\ --certfilecertificate-path
[--keyfilekey-path
] \ --rootfileCA-certificate-path
自己署名付き SSL 証明書を使用して SGD セキュリティーサービスを有効にするには、次のコマンドを使用します。
# tarantella security enable [ --firewalltraversal off ]
手動設定を使って保護付きの接続を有効にするには、次の手順を実行する必要があります。
(オプション) 証明書発行要求 (CSR) を生成して CA に送信します。
「証明書発行要求を生成する方法」を参照してください。
tarantella security certrequest コマンドで CSR を生成しないでサーバー SSL 証明書を取得する場合、この手順はオプションです。
Web サーバーなど、別のの製品用の SSL 証明書がすでにある場合は、その証明書を使用できることがあります。「別の製品用として取得した SSL 証明書の使用」を参照してください。
アレイ内の SGD サーバーごとに SSL 証明書をインストールします。
セキュア接続を使用するには、SGD サーバーが SGD Client にそのサーバー自体を識別させるための SSL 証明書を提示する必要があります。「サーバー SSL 証明書をインストールする方法」を参照してください。
(オプション) CA 証明書をインストールします。
この手順を実行するのは、サーバー SSL 証明書が、サポートされていない CA または中間 CA によって署名された場合だけです。「サポートされている認証局」を参照してください。
インストールする必要がある証明書は、次のとおりです。
サポートされていない CA。CA 証明書またはルート証明書をインポートします (「サポートされていない CA の CA 証明書をインストールする方法」を参照)。
中間 CA。CA 証明書チェーンをインポートします (「CA 証明書チェーンをインストールする方法」を参照)。
(オプション) ファイアウォール転送用に SGD を構成します。
ファイアウォール転送を使用するタイミングについての詳細は、「ファイアウォール越え」を参照してください。
「ファイアウォール転送を設定する方法」を参照してください。
SGD セキュリティーサービスを有効にし、SGD を再起動します。
セキュア保護された接続を有効にするには、SGD セキュリティーサービスを有効にし、SGD を再起動する必要があります。
「SGD サーバーの SGD セキュリティーサービスを有効にする方法」を参照してください。
tarantella security certrequest コマンドで CSR を生成して取得したサーバー SSL 証明書をインストールするには、次の手順を実行します。
作業を開始する前に、サーバー SSL 証明書にアクセスできることを確認してください。SSL 証明書は PEM 形式で作成されている必要があります。
SGD ホスト上でスーパーユーザー (root) としてログインします。
サーバー 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 証明書ファイルを削除したり移動したりしないでください。
作業を開始する前に、CA 証明書にアクセスできることを確認してください。CA 証明書は PEM 形式で作成されている必要があります。
SGD ホスト上でスーパーユーザー (root) としてログインします。
CA 証明書をインストールします。
tarantella security customca コマンドを使用します。
標準入力から CA 証明書をインストールするには、次のコマンドを使用します。
# tarantella security customca
CA 証明書を標準入力にペーストし、Ctrl+D キーを押します。
ファイルから CA 証明書をインストールするには、次のコマンドを使用します。
# tarantella security customca --rootfile /tmp/cert
ファイルへのフルパスを指定します。このパスは、ttasys
ユーザーから読み取り可能である必要があります。
作業を開始する前に、CA 証明書チェーン内にすべての証明書が存在することを確認してください。証明書は PEM 形式で作成されている必要があります。
SGD ホスト上でスーパーユーザー (root) としてログインします。
チェーン内のすべての証明書を結合して 1 つのファイルにします。
たとえば、chainedcerts.pem
というファイルを作成します。
サーバー SSL 証明書の署名に使用される CA 証明書が最初に表示される必要があります。例:
-----BEGIN CERTIFICATE----- ...Intermediate CA's certificate
... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ...CA root certificate
... -----END CERTIFICATE-----
CA 証明書チェーンをインストールします。
tarantella security customca コマンドを使用します。
標準入力から CA 証明書をインストールするには、次のコマンドを使用します。
# tarantella security customca
CA 証明書チェーンを標準入力にペーストし、Ctrl+D キーを押します。
ファイルから CA 証明書をインストールするには、次のコマンドを使用します。
# tarantella security customca --rootfile /tmp/chainedcerts.pem
ファイルへのフルパスを指定します。このパスは、ttasys
ユーザーから読み取り可能である必要があります。
localhost および TCP ポート 443 にバインドするようにアレイ内の各 SGD Web サーバーを構成します。
アレイ内の各 SGD Web サーバーで、次の手順を繰り返します。
SGD ホスト上でスーパーユーザー (root) としてログインします。
Apache 構成ファイルを編集します。
構成ファイルは /opt/tarantella/webserver/apache/
です。
apache-version
/conf/httpd.conf
SSL Support セクションの <IfDefine SSL>
指令を変更します。
指令を次のように変更します。
<IfDefine SSL> Listen 127.0.0.1:443 </IfDefine>
変更を保存します。
アレイ内のプライマリ SGD サーバー上でスーパーユーザー (root) としてログインします。
暗号化された接続に TCP ポート 443 を使用するように、アレイ内の各 SGD サーバーを構成します。
次のコマンドを使用します。
# tarantella config edit --array-port-encrypted 443
Administration Console でポートを設定することもできます。「グローバル設定」 → 「通信」タブに移動します。「暗号化されている接続ポート」フィールドに 443 と入力します。
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 と入力します。
アレイ内の SGD サーバーごとに、ファイアウォール転送 URL が有効になっていることを確認します。
次のコマンドを使用して、各サーバーを確認します。
# tarantella config list --server serv
--security-firewallurl
SGD サーバーが実行中であることを確認します。tarantella status コマンドを使用すると、SGD サーバーの現在のステータスを表示できます。
SGD サーバーにログインしているユーザーがいないこと、および実行中のアプリケーションセッション (中断されているアプリケーションセッションを含む) が存在しないことを確認してください。
SGD ホスト上でスーパーユーザー (root) としてログインします。
SGD セキュリティーサービスを有効にします。
次のコマンドを使用します。
# tarantella security start
SGD サーバーと SGD Web サーバーを再起動します。
次のコマンドを使用します。
# tarantella restart --https
セキュリティーを一度有効にすると、SGD を再起動するたびに必ずセキュリティーサービスが使用可能になります。
SGD へのセキュア接続を使用するときは、次のセキュリティー警告の一部またはすべてが表示されます。
ブラウザと Java Plug-in ソフトウェアのセキュリティー警告
SGD サーバー SSL 証明書のセキュリティー警告
信頼されない初期接続の警告
SGD セキュリティーサービスが有効でない場合でも、これらの警告が表示されることがあります。これは、SGD Client と SGD サーバー間の初期接続が常にセキュリティー保護されるからです。
このセクションでは、これらの警告が表示される理由とその対処方法について説明します。
SGD Web サーバーへのセキュア接続 (HTTPS) を有効にしている場合、Web サーバー SSL 証明書の署名に使用される CA 証明書またはルート証明書がブラウザの証明書ストアで使用可能になっていないと、警告が表示されます。セキュリティーの警告を表示しないで Web サーバー SSL 証明書の有効性を検証できるようにするには、CA 証明書またはルート証明書をユーザーのブラウザ証明書ストアにインポートします。このためには、ブラウザのツールを使用します。
ブラウザで Java テクノロジが有効になっている場合は、Java Plug-in ソフトウェアによって Web サーバーの SSL 証明書に関する警告が表示されることもあります。これは Java コントロールパネルの設定によります。デフォルトでは、Java Plug-in ソフトウェアはブラウザ証明書ストアにある証明書を使用する構成になっています。Plug-in ソフトウェアがこのような構成になっていない場合は、必要に応じ、Java コントロールパネルを使って CA 証明書またはルート証明書をインポートしてください。
サーバー SSL 証明書を保持している SGD サーバーにユーザーがログインすると、SGD Client は処理を続行する前に証明書の有効性を検証します。
サーバー SSL 証明書に問題がある場合は、セキュリティー警告メッセージが表示されます。セキュリティー警告メッセージを使用すると、ユーザーは、SSL 証明書を永続的に承認するか、一時的に承認するか、または拒否するかを選択する前に 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 によって署名されている
発行者不明のセキュリティー警告を回避する方法の詳細については、「発行者不明のセキュリティー警告を回避する」を参照してください。
SGD では、信頼できるサーバーだけに接続するように、SGD への接続をユーザーが承認する必要があります。SGD サーバーに最初に接続するときは、図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「「安全でない可能性のある接続」メッセージ」 に示すように、「安全でない可能性のある接続」メッセージが表示されます。
ユーザーが信頼されている SGD サーバーだけに接続されるようにするために、SGD 管理者は次のことを実行できます。
SGD サーバーへの接続に同意するとセキュリティー上どのように影響があるかをユーザーに説明します。
事前構成された hostsvisited
ファイルをユーザーに提供します。「事前構成された 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>
発行者不明のセキュリティー警告は、SGD サーバーのサーバー SSL 証明書が、サポートされていない CA によって発行された場合に表示されます。この警告が表示されるのは、証明書の発行者を検証できないためです。
発行者不明のセキュリティー警告を回避するためのもっとも簡単な方法は、サーバー SSL 証明書が必ず、サポートされる CA によって署名されるようにすることです。詳細については、「サポートされている認証局」を参照してください。
SSL 証明書の有効性を検証できるようにするには、CA 証明書または証明書チェーンをインストールする必要があります。ただし、CA 証明書をインストールした場合でも、ユーザーが SGD サーバーに最初に接続するときは、SSL 証明書に関するセキュリティー警告が表示されます。証明書に関する警告が表示されないようにするための唯一の方法は、サーバー SSL 証明書をクライアントデバイス上の certstore.pem
ファイルに追加することです。サーバー SSL 証明書は、各 SGD サーバーの /opt/tarantella/var/tsp/cert.pem
ファイルに格納されます。