この章では、N1 Service Provisioning System 4.1 アプリケーションが特定の IP アドレスおよびポート範囲との接続しか確立しないようにするセキュリティポリシーの構成方法を示します。
Java 仮想マシン (JVM セキュリティポリシーファイルは、各アプリケーションの lib/security/rox.policy にあります。 このファイルによって、アプリケーションに割り当てられるアクセス権が指定されます。 ポリシーファイルをインストールした時点では、アプリケーションは、どのホストとの接続も確立できます。 SSH で CLI クライアントを使用する場合は、ポリシーファイルに変更を加えて、接続をローカルホストのみに制限します。
これらのアクセス権は、lib/security/rox.policy ファイル内の次の行で指定します。
permission java.net.SocketPermission "*", "connect,accept,listen"; |
アプリケーションのネットワークアクセスを制限したい場合は、この行を削除し、より制限の厳しいアクセス権を追加します。
以下は、SocketPermission のホストパラメータです。
host = hostname|IPaddress :portrange |
hostname にはマシンのホスト名、IPaddress には IP アドレスを指定します。 portrange は次のとおりです。
portrange = portnumber | -portnumber | portnumber-[portnumber] |
セキュリティポリシーファイルの構文の詳細については、 の「Policy File Syntax」のリンクをクリックしてください。
アプリケーションにすべてのホストとの接続を許可する行を削除します。
次の行を追加し、アプリケーションに選択的なアクセス権を付与します。
permission java.net.SocketPermission "localhost:localport", "accept"; permission java.net.SocketPermission "localhost:dbport", "connect"; permission java.net.SocketPermission "<domain>:httpport", "connect"; permission java.net.SocketPermission "ipAddress1:port1", "connect"; permission java.net.SocketPermission "ipAddress2:port2", "connect"; ... |
localport は、CLI クライアントが Master Server に接続するとき使用するポート。 1 行目で、Master Server は CLI クライアントにローカル接続または ssh-proxy 経由の接続のみを許可する
dbport は、Postgres データベースサーバーのポート番号
domain は、Web インタフェースへの接続を許可されたホストのドメイン。httpport は、Web インタフェースのポート番号
ipAddress1:port1 と ipAddress2:port2 は、Master Server に直接接続する Remote Agent または Local Distributor の IP アドレスおよびポート番号
アプリケーションにすべてのホストとの接続を許可する行を削除します。
次の行を追加し、アプリケーションにアクセス権を付与します。
permission java.net.SocketPermission "ipAddress", "accept"; |
ipAddress は、この Remote Agent が接続する Local Distributor または Master Server の IP アドレス
urltest など、ネットワークアクセスを必要とする手順を含むプランを実行したい場合は、この Remote Agent から特定のホストへの接続を許可するアクセス権を設定することができます。
アプリケーションにすべてのホストとの接続を許可する行を削除します。
次の行を追加し、アプリケーションに選択的なアクセス権を付与します。
permission java.net.SocketPermission "ipAddress", "accept"; permission java.net.SocketPermission "ipAddress1:port1", "connect"; permission java.net.SocketPermission "ipAddress2:port2", "connect"; ... |
ipAddress は、この Local Distributor の親になっている Local Distributor または Master Server の IP アドレス
ipAddress1:port1 と ipAddress2:port2 は、この Local Distributor の子になっている Remote Agent または Local Distributor の IP アドレスおよびポート番号
Postgres データベースがその他のホストからの接続を受け付けない構成になっていることを確認します。 デフォルトの構成では、UNIX ソケットとローカルホストからの接続を受け付けることになっていますが、server/postgres/data/pg_hba.conf 構成ファイルを編集して、この設定を変更します。 また、インストール後に、alter user username とパスワード `password' クエリーを使って、データベースパスワードを変更します。 Postgres 構成ファイル N1SPS4.1-MasterServer-home/config/config.properties を使ってこれらの変更を加える場合、値を db.password に変更します。