SSH を介して Remote Agent を起動した場合、Remote Agent は jexec ラッパーを使って Java 仮想マシンを起動します。 jexec ラッパーはスーパーユーザー (root) が所有するネイティブの実行可能ファイルであり、ビットセット setuid を保持しています。 さらに、Remote Agent をインストールしたユーザーと同じ groupid を保持しているため、グループに実行権が許可されます。 このファイルは、Remote Agent をインストールしたユーザーが所有する protect ディレクトリに格納されます。 Remote Agent を所有するユーザーだけに、このファイルの実行権が許可されます。 その他のユーザーは、jexec ラッパーを実行できません。
jexec と protect のファイルアクセス権が誤って変更されることがないように、常に注意を払ってください。
次の変更を加えることにより、jexec のセキュリティを強化することができます。
JVM 実行ファイル (通常、シェルスクリプト) の所有者としてスーパーユーザー (root) またはアプリケーションを所有するユーザーを指定し、それ以外のユーザーやグループに書き込み権を許可しない。 N1 Service Provisioning System 4.1 で JRE をインストールする場合は、N1SPS4.1-home/common/jre 内の全ファイルは必ずアプリケーションの所有者によって所有されるようにし、それ以外のユーザーやグループに書き込みアクセスを許可しない
アプリケーションを所有するユーザーのユーザー ID は、SSH を使ってログインするとき以外は許可しない。 SSH を使ってログインする場合は、公開鍵認証だけを許可する。 アプリケーションを所有するユーザー以外のユーザーやグループには、/N1SPS4.1-home/.ssh ディレクトリへのあらゆるアクセスを禁止する
公開鍵認証だけを許可するように、SSH サーバーを構成できる。この場合は、パスワード認証を無効にするため、etc/sshd_config ファイルに次の行が含まれていなければならない
PasswordAuthentication no |
etc/sshd_config ファイルに、RhostsRSAAuthentication という語を含む行が含まれていてはならない。この認証は、デフォルトでは許可されていない。 RSAAuthentication という語を含む行がある場合、その値を yes (デフォルト) に設定する必要がある
Remote Agent のセキュリティをさらに強化したい場合は、/N1SPS4.1-home/.ssh/authorized_keys2 ファイルを編集して、Master Server の公開鍵が含まれる行の前に次のテキストを追加する
no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty |
その他の詳細情報については、sshd(1M) のマニュアルページを参照してください。