rule

モード: ファイアウォールモード
カテゴリー: UTM / ファイアウォール


(config-firewall)# rule [<1-65535>] ACTION {APPNAME|any} from SRC_ENTITY to DST_ENTITY [no-state-enforcement] [log]

(config-firewall)# no rule {<1-65535>|all}


ファイアウォールにルールを追加する。
no形式で実行した場合は指定したルールを削除する。

ファイアウォール機能を有効化しただけで、まだ1つもルールを登録していない場合は、すべてのトラフィックが遮断される。
このデフォルト動作をベースとして、必要なトラフィックを通過させるためのルールを本コマンドで登録していくのがファイアウォールの基本的な設定方法となる。

ルールの指定にはエンティティーとアプリケーションの両定義を使用するが、これらの定義が不完全な場合(指定したアプリケーションやエンティティーが未定義である、アプリケーション定義でIPプロトコルが未指定、など)、該当ルールは有効にならないので注意。ルールが有効化どうかは、show firewall rule config-checkコマンドでチェックできる。

なお、ルールの順番はmove ruleコマンドで変更可能。


パラメーター

<1-65535> ルール番号。省略時はリストの最後尾に新規ルールが追加される。このときのルール番号決定方法については「注意・補足事項」を参照
ACTION := {permit|deny|reject|log}
アクション
permit 許可
deny 破棄(送信元にエラーを返さない)
reject 拒否(送信元にエラーを返す)
log ログを記録(パケットごとにログを取る)。なお、特別な理由がないかぎり、本アクションよりもlogオプションのほうを推奨する
APPNAME 制御対象のアプリケーション名。指定可能なアプリケーションはshow application detailで確認可能。詳細は解説編を参照
any すべてのトラフィックを制御対象にする
from SRC_ENTITY 送信元エンティティー名(show entityで一覧表示可能)
to DST_ENTITY 宛先エンティティー名(show entityで一覧表示可能)
no-state-enforcement 端末間で送受信されるトラフィックの経路が一定でない環境において、該当トラフィックがブロックされないようにするためのオプション。ただし、本オプションは外部ネットワーク(インターネット等)とのトラフィックを制御するルールには使用しないこと
log アクションを実行するだけでなくログにも記録したいときに指定する(セッションの最初のパケットだけログを取る)
all no形式ですべてのルールを削除するときに指定する


使用例

■ ゾーン「private」から「public」への通信をすべて許可する。

awplus(config-firewall)# rule permit any from private to public

■ ゾーン「private」内の通信をすべて許可する。
ゾーン「private」内に複数のサブネットが存在する場合だけでなく、ゾーン「private」内のホストから「private」に属する本製品のインターフェースへのアクセス(Telnet/SSHなど)を許可する場合にもこのルールが必要。
awplus(config-firewall)# rule permit any from private to private

■ ゾーン「public」から「private」に対するOpenVPNの通信を許可する。
awplus(config-firewall)# rule permit openvpn from public to private

■ ゾーン「private」から「public」へのWindowsネットワーク通信を破棄し、ログを記録する。
awplus(config-firewall)# rule deny samba-tcp from private to public log
awplus(config-firewall)# rule deny samba-udp from private to public log

■ ファイアウォールルール「10」を削除する。ルール番号はshow firewall ruleコマンドで確認できる。
awplus(config-firewall)# no rule 10

■ すべてのファイアウォールルールを削除する。
awplus(config-firewall)# no rule all


注意・補足事項

■ ルールの処理順序については解説編を参照。

■ 本コマンドでルール番号を指定しなかったときはリストの最後尾に新規ルールが追加される。このときのルール番号は次のようにして決まる。


■ ファイアウォールルールのログを取得したい場合は、logアクションではなくlogオプションのほうを推奨。

■ logアクションはパケットの転送可否とは関係なく、純粋にログを取るだけのアクション。
ファイアウォールのデフォルト動作は「すべて拒否」であるため、[例1] のようにlogアクションのルールしか存在しない場合、ゾーン「branch」から「private」へのSSHパケットは、このルールによりログに記録された後、デフォルト動作によって破棄される。

[例1]
rule log ssh from branch to private

ただし、前述のとおり logアクションはパケットを破棄するわけではないため、[例2] のようにlogアクションの次に同じ条件のpermitアクションのルールがあれば、該当パケットはログに記録された後、通過を許可される。

[例2]
rule log ssh from branch to private
rule permit ssh from branch to private

なお、[例2] のように logアクションと permitアクションのルールを分けた場合と、次の [例3] のようにpermitアクションのルールに logオプションを付けた場合ではログ記録の動作が異なる。

[例3]
rule permit ssh from branch to private log

[例2] では logアクションにより該当する SSH パケット1個1個のログが記録されるのに対し、
[例3] では permitアクションによって許可されたSSH セッションの最初のパケットだけがログに記録される。

■ 同一ルール内でlogアクションとlogオプションを併用した場合は、logアクション(パケットごとにログを取る)の動作となる。

■ アプリケーションコントロール(DPI)機能では、各アプリケーション固有の通信パターンを検出するために一定量のパケットを受信してそのデータ部分を検査する必要があるが、ファイアウォールはその仕様として初期設定ですべてのパケットを破棄するため、ファイアウォールとアプリケーションコントロール(DPI)を併用する場合は注意が必要。詳しくは「UTM」/「アプリケーションコントロール(DPI)」を参照。

■ 既存のルールを変更したときに、変更前のルールに該当するセッション情報がすでに登録されている場合は、clear firewall connectionsコマンドで古いセッション情報を削除すること。


コマンドツリー

firewall (グローバルコンフィグモード)
    |
    +- rule(ファイアウォールモード)

関連コマンド

application(グローバルコンフィグモード)
move rule(ファイアウォールモード)
protect(ファイアウォールモード)
show application(特権EXECモード)
show application detail(特権EXECモード)
show entity(特権EXECモード)
show firewall rule(特権EXECモード)
show firewall rule config-check(特権EXECモード)
zone(グローバルコンフィグモード)



(C) 2015 - 2019 アライドテレシスホールディングス株式会社

PN: 613-002107 Rev.AA