
VMware ESXiにVyattaルーターをセットアップしています。
しかし、大きな問題に遭遇したようです。ファイアウォールと NAT を正しく動作させることができませんでした。
NAT の何が問題だったのかはわかりませんが、今は「どうやら」機能しているようです。しかし、ファイアウォールは WAN インターフェイス (eth0) から LAN (eth1) へのトラフィックを許可していません。ファイアウォール ルールをすべて無効にし、NAT だけですべてが機能したので、ファイアウォールの問題だと断言できます。ファイアウォール (WAN と LAN) を元の場所に戻すと、ポート 25 に何も通過できなくなります。
問題が何なのかよくわかりません。私はかなり基本的なファイアウォール ルールを使用していますが、ルールは vyatta のドキュメントを見ながら作成したので、ドキュメントに何かおかしな点がない限りは「動作するはず」です。
これまでの私の NAT ルールは次のとおりです。
vyatta@gateway# show service nat
rule 20 {
description "Zimbra SNAT #1"
outbound-interface eth0
outside-address {
address 74.XXX.XXX.XXX
}
source {
address 10.0.0.17
}
type source
}
rule 21 {
description "Zimbra SMTP #1"
destination {
address 74.XXX.XXX.XXX
port 25
}
inbound-interface eth0
inside-address {
address 10.0.0.17
}
protocol tcp
type destination
}
rule 100 {
description "Default LAN -> WAN"
outbound-interface eth0
outside-address {
address 74.XXX.XXX.XXX
}
source {
address 10.0.0.0/24
}
type source
}
次に、私のファイアウォール ルールを示します。ここに問題があると考えられます。
vyatta@gateway# show firewall
all-ping enable
broadcast-ping disable
conntrack-expect-table-size 4096
conntrack-hash-size 4096
conntrack-table-size 32768
conntrack-tcp-loose enable
ipv6-receive-redirects disable
ipv6-src-route disable
ip-src-route disable
log-martians enable
name LAN_in {
rule 100 {
action accept
description "Default LAN -> any"
protocol all
source {
address 10.0.0.0/24
}
}
}
name LAN_out {
}
name LOCAL {
rule 100 {
action accept
state {
established enable
}
}
}
name WAN_in {
rule 20 {
action accept
description "Allow SMTP connections to MX01"
destination {
address 74.XXX.XXX.XXX
port 25
}
protocol tcp
}
rule 100 {
action accept
description "Allow established connections back through"
state {
established enable
}
}
}
name WAN_out {
}
receive-redirects disable
send-redirects enable
source-validation disable
syn-cookies enable
サイドノート
このウェブサイトを使用して開いているポートをテストするには、http://www.yougetsignal.com/tools/open-ports/ファイアウォール ルールがない場合、ポート 25 は開いていると表示され、ファイアウォール ルールがある場合、ポート 25 は閉じていると表示されました。
アップデート
ファイアウォールが正しく動作しているかどうかを確認するために、WAN インターフェイスからの SSH をブロックするルールを作成しました。プライマリ WAN アドレスのポート 22 をチェックしたところ、ポートを完全にブロックしたにもかかわらず、ポートはまだ開いていると表示されました。
私が使用したルールは次のとおりです。
rule 21 {
action reject
destination {
address 74.219.80.163
port 22
}
protocol tcp
}
したがって、私は何か間違ったことをしているか、ファイアウォールが正常に動作していないかのどちらかであると確信しています。
答え1
正常に動作しています。ファイアウォール ルールをゾーンまたはインターフェイスに適用していますか? ゾーンに対してルールを設定する場合は、ゾーン ポリシーも作成する必要があります。たとえば、WAN-LOCAL などです。