Saminnet-Search Article Wiki Forum Piwigo SNS Cloud vtiger Sugar
vyos Firewall set

  • Oracle
    • WebLogic Reset (208) Tue04,11:01am

      WebLogic起動するたびにユーザ名とパスワードを聞いてきて煩わしかったので回避したメモ。     securityフォルダを作成     $ mkdir $DOMAIN_HOME/servers/AdminServer/security     boot.propertiesを作成    boot.properties     username=weblogic    password=password     ※平文でOK     nohup & でWeblogicを起動     $ nohup sh $DOMAIN_HOME/startWebLogic.sh &     ※nohup.outに吐かれるのがいやだったら適当にリダイレクトさせる     boot.propertiesが暗号化されてることを確認     $ ca…

      Read More...

vyos Firewall set

Vyattaで使用出来るファイアウォールの種類を記述したので、今度は実際に設定を行っていく。

今回は一番基本的な「パケットフィルタリング ファイアウォール」の設定を行っていく。

今回は基礎的な内容で作成。互いの通信でicmpプロトコルのみを通すファイアウォールを構築してみる。

ファイアウォールポリシー作成

まずは以下のコマンドを実行し、ファイアウォールポリシーを作成する。

set firewall name VyttaFW

 

ポリシーを作成したら、後はそれに設定するルールを設定していく。
まずは、デフォルト(個別に設定するルール以外)での動作を指定していく。ここでは、デフォルトルールは「drop」とする。

set firewall name VyttaFW default-action drop

 

次に、デフォルトの動作においてログを取得するよう設定する。

set firewall name VyttaFW enable-default-log

 

これでファイアウォールポリシーの器とデフォルトの動作が設定できた。

ファイアウォールポリシー ルール作成

ファイアウォールポリシーの中で設定するルールを作成していく。
今回作成するルールはひとつで、「ICMPプロトコルの通信は全て通す」のみ。

以下のコマンドを実行し、ルールを作成する。

set firewall name VyttaFW rule 10 action accept
set firewall name VyttaFW rule 10 protocol icmp
set firewall name VyttaFW rule 10 icmp type 0
set firewall name VyttaFW rule 10 icmp code 0

 

上記コマンドを実行することにより、icmpプロトコルを通すルールが作成された。

ファイアウォール適用

以下のコマンドを実行し、ネットワークアダプタにファイアウォールを適用させる。

set interfaces ethernet eth2 firewall in name VyttaFW

 

これでファイアウォールの適用ができた。
無事動いているかどうか、ログを確認する。

以下のコマンドを実行する。

show log firewall name VyattaFW

 

実行した結果が以下。

 

ログ自体は「/var/log/messages」に記録されているので、catコマンド(less、tailでもOK)とgrepで抽出対象を指定して確認するといい。

今回の設定例はかなり簡単な内容になっている。実際には各ルールにポート番号やネットワークセグメントを指定することができる。

ログにはファイアウォールポリシー名が記述されている。

パケットフィルタリング ファイアウォールの設定を実際に行ってみたので、今回はそのルールの設定例を記述する。

例として提示するのは、ファイアウォールの設定に使用できるネットワーク定義、ポート定義、後はその他ルールの設定例となる。

定義を使用していない場合、Vyattaでファイアウォールのルールを作成する際に各ルールに対象のネットワークを直書きする必要が出てしまう。

このため、使用するネットワークセグメント、ポート番号を指定する際、事前にネットワーク定義、ポート定義を設定しておくことで設定を簡素化することができる。

ネットワーク定義

Vyattaでは、ファイアウォールのルールに送信元、送信先のネットワークを設定することができる。
その際に設定を簡素化できるのがネットワーク定義だ。

以下のコマンドでネットワーク定義を作成できる。

set firewall group network-group NETWORK_1 network 192.168.0.0/24
set firewall group network-group NETWORK_1 description “Network Definition”

上の内容は対象のネットワークセグメント、下はその定義がどのようなものなのか、定義内容のメモとなっている。

ポート定義

ネットワーク定義と同様に、ファイアウォールのルール設定時に使用できる。

以下のコマンドでポート定義を作成できる。

set firewall group port-group TCPPORT_1 port 25
set firewall group port-group TCPPORT_1 port 53
set firewall group port-group TCPPORT_1 port 80
set firewall group port-group TCPPORT_1 port 443
set firewall group port-group TCPPORT_1 port 465
set firewall group port-group TCPPORT_1 port 587

ルール定義例

以下に、ルールの定義例を記述する。

●DNS

set firewall name VyattaFW rule 10 action accept
set firewall name VyattaFW rule 10 protocol udp
set firewall name VyattaFW rule 10 source port 53
set firewall name VyattaFW rule 10 source group network-group TCPPORT_1
set firewall name VyattaFW rule 10 destination group network-group  TCPPORT_2

各行についての簡単な内容が以下。
1行目はこのルールの動き。この例では通信を許可している。
2行目は使用するプロトコル。ここではudpプロトコルでの通信としている。
3行目は使用されるポート番号。DNSなので、53番ポートのみ許可している。ここでポート定義を指定することもできる。
4行目は送信元のネットワークグループ。5行目は送信先のネットワークグループとなっている。
以降の例では、送信元、送信先のネットワークについては記述しないものとする。

●NTP

set firewall name VyattaFW rule 10 action accept
set firewall name VyattaFW rule 10 protocol udp
set firewall name VyattaFW rule 10 source port 123

 

●HTTP & HTTPS

set firewall conntrack-tcp-loose disable

set firewall name VyattaFW rule 10 action accept
set firewall name VyattaFW rule 10 protocol tcp
set firewall name VyattaFW rule 10 source port 80,443

●DHCP

set firewall name VyattaFW rule 10 action accept
set firewall name VyattaFW rule 10 protocol udp
set firewall name VyattaFW rule 10 destination port 68
set firewall name VyattaFW rule 10 source port 67

●SSH

set firewall conntrack-tcp-loose disable

set firewall name VyattaFW rule 10 action drop
set firewall name VyattaFW rule 10 protocol tcp
set firewall name VyattaFW rule 10 destination port 22
set firewall name VyattaFW rule 10 state new enable
set firewall name VyattaFW rule 10 recent count 5
set firewall name VyattaFW rule 10 recent time 60

set firewall name VyattaFW rule 20 action accept
set firewall name VyattaFW rule 20 protocol tcp
set firewall name VyattaFW rule 20 destination port 22
set firewall name VyattaFW rule 20 state new enable
set firewall name VyattaFW rule 20 state established enable
set firewall name VyattaFW rule 20 state related enable

ただSSH接続を有効化するだけならば、rule 20だけ使用すると良い。

●DOS攻撃対策

set firewall name VyattaFW rule 10 action drop
set firewall name VyattaFW rule 10 protocol tcp
set firewall name VyattaFW rule 10 destination group port-group TCPPORT_1
set firewall name VyattaFW rule 10 recent time 20
set firewall name VyattaFW rule 10 recent count 99
set firewall name VyattaFW rule 10 state new enable


とりあえず以上が一例。

「パケットフィルタリング ファイアウォール」の進化版にあたる「ステートフルインスペクション ファイアーウォール」のVyattaでの設定方法を記述していく。
「ステートフルインスペクション ファイアーウォール」はデフォルトではオフになっているので、別途設定が必要になってくる。

 

といっても難しくはなく、「パケットフィルタリング ファイアウォール」のルールに以下の設定を追加すればいい。

set firewall name VyattaFW rule 10 state new enable
set firewall name VyattaFW rule 10 state established enable
set firewall name VyattaFW rule 10 state related enable

この設定を追加することで、「ステートフルインスペクション ファイアーウォール」が利用可能になる。

Comments   

 
0 #1 Super User 2016-06-29 13:14
ファイアーウォール構築
仮想ホスト条件
仮想ホスト側に3つのNICを装着
すべてブリッジ設定とする。
管理用のNICにのみアドレスを設定し、L2透過用の仮想ホストNICにはアドレスを設定しない。
vyattaの初期設定は終わっているとする。
設定
インターフェースの定義
set system gateway-address '192.168.x.x'
set system name-server '192.168.y.y'
set interfaces ethernet eth0 address '192.168.z.z/24'
set interfaces bridge br0
set interfaces ethernet eth1 bridge-group bridge br0
set interfaces ethernet eth2 bridge-group bridge br0
set interfaces bridge br0 address '192.168.m.m/24'

DMZネットワークの定義
set firewall group network-group DMZNET network 192.168.m.n/27
set firewall group network-group DMZNET description "DMZ NETWORK"

通過させるパケットの宛先・発信元ポートの定義
set firewall group port-group TCPPORT port 25
set firewall group port-group TCPPORT port 53
set firewall group port-group TCPPORT port 80
set firewall group port-group TCPPORT port 443
set firewall group port-group TCPPORT port 465
set firewall group port-group TCPPORT port 587

ファイアーウォールの定義
set firewall name BRFW default-action drop
set firewall name BRFW rule 100 action accept
set firewall name BRFW rule 100 protocol tcp
set firewall name BRFW rule 100 destination group port-group TCPPORT
set firewall name BRFW rule 100 destination group network-group DMZNET
set firewall name BRFW rule 110 action accept
set firewall name BRFW rule 110 protocol tcp
set firewall name BRFW rule 110 destination group port-group TCPPORT
set firewall name BRFW rule 110 source group network-group DMZNET
set firewall name BRFW rule 200 action 'accept'
set firewall name BRFW rule 200 protocol 'tcp'
set firewall name BRFW rule 200 source group port-group TCPPORT
set firewall name BRFW rule 200 source group network-group DMZNET
set firewall name BRFW rule 210 action 'accept'
set firewall name BRFW rule 210 protocol 'tcp'
set firewall name BRFW rule 210 source group port-group TCPPORT
set firewall name BRFW rule 210 destination group network-group DMZNET

DoS対策
set firewall name BRFW rule 99 destination group port-group TCPPORT
set firewall name BRFW rule 99 recent time 20
set firewall name BRFW rule 99 recent count 99
set firewall name BRFW rule 99 action drop
set firewall name BRFW rule 99 state new enable
set firewall name BRFW rule 99 protocol tcp

適応
set interfaces bridge br0 firewall in name BRFW

L2ファイアーウォールの場合、通常のNICベースでのZONE定義が出来ないため、代わって「ネットワーク」を定義し、設定を行う。

設定検証
ログ設定
set firewall name BRFW rule xxx log enable
set firewall name BRFW enable-default- log
Quote
 

Articles by Date

TweetTweet Share on LinkedInShare on LinkedIn Share on Google+Google+ Submit to RedditReddit Publish on WordPress WordPress Send emailSend email