Secure Global Desktop 4.40 管理者ガイド
> セキュリティー
> SGD での SSH の使用
SSH (Secure SHell) はネットワークに接続しているホストで安全にコマンドを実行できるようにするパッケージです。この用途の標準の UNIX または Linux システムコマンドの代わりに、より高いセキュリティーを提供します。
SSH を使用することには、次の利点があります。
SGD は SSH を使って、SGD サーバーとアプリケーションサーバー間のセキュア接続を提供できます。
SGD では、version 2.x 以降の SSH を使用できます。
SGD で SSH を使用するには
SSH を使用するには、SGD ホスト上およびアプリケーションサーバー上に SSH がインストールされている必要があります。
SGD は、SSH が次のいずれかのディレクトリにインストールされている場合には、そのことを自動的に検出できます。
/usr/local/bin
/usr/bin
/usr/sbin
/usr/lbin
/bin
/sbin
注 SSH が別の場所にインストールされている場合は、SSH クライアントの場所を設定できます。
SSH がインストールされていない場合は、次の手順で SSH をダウンロードおよびインストールします。
使用しているオペレーティングシステムに対応するパッケージをダウンロードするか、OpenSSH をダウンロードします。SGD では、version 2.x 以降の SSH を使用できます。
アクセスを保護するすべての UNIX または Linux システムのアプリケーションサーバーに SSH をインストールします。
各 SGD ホスト上で、SSH を上記のディレクトリのいずれかにインストールします。
注 SSH にはバージョン間の互換性の問題があるので、すべての SGD ホストとアプリケーションサーバーで、メジャー番号が同じ SSH (version 2 か version 3) を使用してください。
SSH を使って X アプリケーションをサポートするには、X11 転送を有効にする必要があります。各 SGD ホストで次の手順を実行します。
sshd_config
) を編集して、次の行を追加します。
X11Forwarding yes
注 SSH デーモンがすでに稼働している場合は、sshd_config
ファイルを変更したあとで再起動する必要があります。
ssh_config
) を編集して、次の行を追加します。
ForwardAgent yes ForwardX11 yes
-X
コマンド行引数を使用するように SSH クライアントを設定します。SSH を使ってアプリケーションサーバーと SGD サーバー間の通信を保護するには、次の手順に従ってアプリケーションオブジェクトを設定する必要があります。
または、次のコマンドを使用します。
$ tarantella object edit --name obj --method ssh
SGD で SSH を使用する場合は、SSH クライアントで使用するコマンド行引数を設定できます。引数はグローバルに設定するか、個々のアプリケーションに対して設定するか、またはその両方を組み合わせて設定することができます。
SSH クライアントのグローバル設定は、次の場合に使用します。
SSH クライアントのグローバルオプションを設定するには、TTASSHCLIENT
環境変数を次の手順で設定します。
TTASSHCLIENT
に SSH プログラムのフルパスと必要なコマンド行引数を設定します。
次に例を示します。
# TTASSHCLIENT="/usr/local/bin/ssh -q -X"; export TTASSHCLIENT
注 SSH クライアントのコマンド行引数だけを設定する場合にも、SSH プログラムへのフルパスを含める必要があります。これは、SSH プログラムが自動的に検出される場所にある場合でも同様です。
次の方法でコマンド行引数を指定することで、SSH クライアントを個別のアプリケーションに対応させることができます。
または、次のコマンドを使用します。
$ tarantella object edit --name obj --ssharguments args
SSH クライアントのグローバル設定とアプリケーション設定を組み合わせて、SSH クライアントのパスとコマンド行引数を設定できます。
注 この場合、グローバルなコマンド行引数はすべて無視されます。
次の表は、使用される ssh
コマンドがグローバル設定とアプリケーション設定によってどのように影響されるかを示しています。
グローバル設定 | アプリケーション設定 | 使用される SSH コマンド |
---|---|---|
[なし] | [なし] | ssh -l user@host |
[なし] | -X |
ssh -X -l user@host |
/usr/ssh -X |
[なし] | /usr/ssh -X -l user@host |
/usr/ssh -X |
-p port |
/usr/ssh -p port -l user@host |
SGD は X セキュリティー拡張機能をサポートします。-Y
オプションをサポートする SSH のバージョンでのみ、X セキュリティー拡張機能は動作します。OpenSSH の場合、これは 3.8 以降のバージョンです。
次の方法で、X セキュリティー拡張機能をアプリケーションごとに有効にします。
または、次のコマンドを使用します。
$ tarantella object edit --name obj --securityextension 1
X 認証が有効になっているときに SSH 接続に失敗する場合は、IPv4 だけを使用するモードで SSH デーモンを実行してみてください。これは、サーバーで使用している Xsecurity 拡張が SGD でサポートされていないことがあるためです。IPv4 だけを使用するモードを有効にするには、システムの SSH 構成ファイルを編集します。次に例を示します。
/etc/sysconfig/ssh
ファイルを編集し、SSHD_OPTS="-4"
行を追加します。/etc/sysconfig/sshd
ファイルを編集し、OPTIONS="-4"
行を追加します。注 システムに SSH 構成ファイルがない場合は、作成することができます。
この変更を加えたら、SSH デーモンを再起動する必要があります。
クライアントキーなどの一部の SSH 機能では、SSH クライアントプロセスを特定の決まったユーザーとして実行する必要があります。以前のリリースの SGD では、サーバープロセスを UNIX または Linux システムの root ユーザーとして実行したので、サーバーへのアクセスに制限はありませんでした。しかし、version 4.0 以降では、SGD サーバープロセスおよび SSH クライアントプロセスを、非特権ユーザーとして実行します。これは、セキュリティー上の理由です。以前の動作を復元するには、次のようにして SGD ttasshhelper
アプリケーションを setuid root プロセスにする必要があります。次の手順を実行します。
# chmod 4510 /opt/tarantella/bin/bin/ttasshhelper # chown root /opt/tarantella/bin/bin/ttasshhelper
こうした変更を行う場合は、承認されていないアクセスから SGD サーバーを保護することに十分に配慮してください。
Copyright © 1997-2007 Sun Microsystems, Inc. All rights reserved.