SSG - Policy



 ◆ SSG - ポリシーの設定 その1

 SSGはゾーンをまたぐトラフィックは
ポリシーにより制御します。デフォルトで「Trust」から「Untrust」
 ゾーンへのトラフィックは全て許可するポリシーが1つ設定されています。その設定が、以下の一行です。
 なお、TrustからUntrustへ送出したトラフィックの戻り(UntrustからTrustへのトラフィック)については
 自動的に許可されます。このファイアウォール機能は、
ステートフルインスペクションと呼ばれています。

 SSG5-> set policy id 1 from Trust to Untrust Any Any ANY permit



 ポリシーを設定する前に、IPアドレスまたはネットワークセグメントを示すアドレスブックを作成します。
 デフォルトでは、
Anyというアドレスブックが作成されており「Any」は全てのネットワークを意味します。
 アドレスブックはゾーンごとに作成する必要があります。つまりこのAnyもゾーンごとに作成されています。

 
◆ @ アドレスブックの作成
 set adress zone name ipaddress/mask comment

 ◆ 設定例 : TEST1ゾーンで使用するための「172.16.1.0/24 を示す SALESNW」「172.16.2.0/24 を示す ENGINW」を作成

 
SSG5-> set address TEST1 SALESNW 172.16.1.0 255.255.255.0
 SSG5-> set address TEST1 ENGINW 172.16.2.0 255.255.255.0

 ※ set address TEST1 SALESNW 172.16.1.0 255.255.255.0 SALES1 のように「SALES1」というコメントも入れられます。



 そして、アドレスグループという設定により、複数のアドレスブックを1つに束ねることができます。

 
◆ A アドレスグループの作成
 set group address zone addressbook add addressbook

 ◆ 設定例 : TEST1ゾーンで使用する「SALESNW と ENGINW」のアドレスブックを「TOKYONW」に束ねるアドレスグループ

 
SSG5-> set group address TEST1 TOKYONW add SALESNW
 SSG5-> set group address TEST1 TOKYONW add ENGINW



 ポリシーでは、上記で定義した「アドレスブック」や「アドレスグループ」を指定して作成します。

 
◆ B ポリシーの作成
 set policy id number from zone to zone source-address dest-address service [ deny | nat | permit | reject | tunnel ]

CLI チェックがある場合の動作
id  ポリシーの番号。番号順にポリシーをチェックしていく。条件が合致した時点でそのポリシーが適用。
from zone  送信元ゾーンを定義
to zone  宛先ゾーンを定義
source-address  送信元のアドレスブック、またはアドレスグループ。
dest-address  宛先のアドレスブック、またはアドレスグループ。
service  Pre-defined Service、カスタムサービス、またはカスタムサービスグループ
deny  パケットの破棄
nat  パケットのアドレス変換
permit  パケットの許可
reject  パケットの破棄、及び送信元への通知
tunnel  パケットの暗号化


 ◆ 例1 : 「TEST1」から「Untrust」ゾーンへ、送信元アドレスの「SALESNW (172.16.1.0/24)」の通信を許可
 SSG5-> set policy id 2 from TEST1 to Untrust SALESNW Any ANY permit


 ◆ 例2 : 「TEST1」から「Untrust」ゾーンへ、送信元「SALESNW」から宛先「SECNW」の通信を許可
 SSG5-> set policy id 3 from TEST1 to Untrust SALESNW SECNW ANY permit


 ◆ 例3 : 「TEST1」から「Untrust」ゾーンへ、送信元 TOKYONW ( 172.16.1.0/24 と 172.16.2.0/24 ) からの通信を許可
 SSG5-> set policy id 4 from TEST1 to Untrust TOKYONW ANY ANY permit

 作成したポリシーの順序を変えたい場合はset policy moveコマンドを使用します。例えば、ポリシー
 ID「1」のポリシーの順序を、ポリシーID「2」の後にしたい場合は、以下のコマンドを入力します。
 
※ ポリシーはポリシーIDの順番ではなく設定された順番で追加されていくので注意。その際にset policy moveコマンドを使用。

 SSG5-> set policy move 1 after 2
 ※ 例えばポリシーID「3」をポリシーID「1」より前の順序にしたい場合は set policy move 3 before 1 のように入力します。


 ◆ SSG - ポリシーの設定 その2 ( サービスの設定 )

 上記解説では、IPアドレスの情報によってフィルタリングをするポリシー作成を紹介しましたが、以下では
 ポート番号情報も使用してフィルタリングをするポリシーの作成方法を紹介します。送信元、宛先アドレス
 の指定では、直接IPアドレスを指定せずに「アドレスブックやアドレスグループ」を指定したのと同じように
 送信元、宛先ポート指定に「Pre-defined Service、カスタムサービス、カスタムサービスグループ」を使用。

 「Pre-defined Service」とはデフォルトで定義されている「プロトコル番号、送信元ポート、宛先ポート」
 の情報です。主要なサービスはほとんど登録されています。例えば「HTTP」という Pre-defined Service は
 「TCP、送信元ポート:0 〜 65535、宛先ポート:80」で登録されています。以下は「TEST1」ゾーンから
 「Untrust」ゾーンへ、送信元アドレス「SALESNW (172.16.1.0/24)」からのHTTP通信を許可する設定。

 SSG5-> set policy id 1 from TEST1 to Untrust SALESNW Any HTTP permit


 一方で、登録されていないサービスについてはカスタムサービスとして新たに登録する必要があります。

 ◆ カスタムサービスの作成
 set service name protocol [ tcp | udp | icmp | number ] src-port port-range dst-port port-range

 ◆ 設定例 : 「POP3S」という名前で、TCP通信の送信元ポート番号 ( 0-65535 )、宛先ポート番号 ( 995 ) を作成
 SSG5-> set service POP3S protocol tcp src-port 0-65535 dst-port 995-995


 また、1つのサービスに対して、複数のポート番号を束ねたい場合は + キーワードを使用します。
 以下は、宛先TCPポート80、8080、8888を「MYWEB」という1つのサービス名に束ねている設定。


 
SSG5-> set service MYWEB protocol tcp src-port 0-65535 dst-port 80-80
 SSG5-> set service MYWEB + tcp src-port 0-65535 dst-port 8080-8080
 SSG5-> set service MYWEB + tcp src-port 0-65535 dst-port 8888-8888




 ◆ SSG - ポリシーの設定 その2 ( サービスグループの設定 )

 複数のPre-defined Serviceやカスタムサービスは1つのグループ(カスタムサービスグループ)にできます。

 
◆ カスタムサービスグループの作成
 set group service group-name add member-name

 ◆ 設定例 : 「HTTP-HTTPS」という名前で、Pre-defined Serciceである「HTTP」と「HTTPS」を1つにグループ化

 
SSG5-> set group service HTTP-HTTPS add HTTP
 SSG5-> set group service HTTP-HTTPS add HTTPS



 ◆ SSG - トラフィックログとカウンタ

 作成されているポリシーに対しトラフィックログとカウンターを確認できるようにポリシーを設定できます。
 先ず、作成したポリシーのIDを確認するため、get policy でID情報(例えば3)を得て以下の設定をします。


 
SSG5-> set policy id 3
 SSG5(policy:3)-> set log
 
SSG5(policy:3)-> set count
 
SSG5(policy:3)-> exit


確認コマンド 説明
get log traffic 該当ポリシーにヒットしたトラフィックログの確認
get counter policy 3 second 該当ポリシーにヒットしたカウンター表示の確認



 ◆ ALG ( Application Layer Gateway ) とは

 ALGとは、SIPやFTPなどの特定プロトコルの管理を目的としたソフトウェアコンポーネントです。ALGは
 指定されたトラフィックを代行受信して分析してリソースを割り当て、トラフィックがSSGを安全に通過する
 ことを許可する
動的ポリシーを定義します。つまり、ALGは動的にポートオープン・クローズを実現します。


 ◆ 参考 : SSG - ポリシーによるWebAUTHの設定

 一般的に使用されていませんが、SSGではWeb認証を設定することができます。PCが通信を開始する前に
 SSGへWebアクセスしてWebブラウザでユーザ名とパスワードを入力し、認証に成功すれば通信ができます。


 
SSG5-> set user TEST1 password TEST1
 SSG5-> set webauth banner success "WEBAUTH SUCCESS"

 SSG5-> set interface ethernet0/1 webauth
 SSG5-> set interface ethernet0/1 webauth-ip 192.168.0.250

 SSG5-> set policy from Trust to Untrust SOUMU Any ANY permit webauth

 https://192.168.0.250 にアクセスし、ユーザ名(TEST1)、パスワード(TEST1)の入力後、TrustからUntrustへ通信できます。
 その後、get user TEST1 や get auth table により、認証情報を確認することができます。



Juniper SSG - ScreenOS 設定コマンド解説

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved