shorewall では、ネストされたゾーンを使用しているときに外部ホストからのリクエストをブロックするにはどうすればよいですか?

shorewall では、ネストされたゾーンを使用しているときに外部ホストからのリクエストをブロックするにはどうすればよいですか?

私は1つのネットワークインターフェースを持つDebianサーバーを1つ持っていて、KVMとshorewallのブリッジを設定しました。同じインターフェース内の2つのゾーン つまり、kvm ゲスト用の「net」ゾーンと「kvm」があり、/etc/shorewall 内の関連ファイルは次のとおりです。

インターフェース

#ZONE   INTERFACE       OPTIONS
net     br0             tcpflags,logmartians,nosmurfs,sourceroute=0,dhcp

ゾーン

#ZONE   TYPE    OPTIONS                 IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv4
kvm:net ipv4

ホスト

#ZONE           HOSTS                           OPTIONS
kvm             br0:192.168.1.0/24              -

kvm ゾーンはネット ゾーンのサブゾーンです。ここで、kvm ゲストにネットワーク アクセスを提供します。

奪う

#ACTION            SOURCE            DEST 
MASQUERADE        192.168.1.0/24     br0

そして最後に、これがポリシー ファイルです。

#SOURCE         DEST            POLICY          LOG LEVEL       LIMIT:BURST
$FW             all             ACCEPT
kvm             net             ACCEPT
kvm             $FW             DROP            info
net             all             DROP            #info
# The FOLLOWING POLICY MUST BE LAST
all             all             REJECT          #info

また、ゲストにIPを提供するためのDHCPサーバーを設定し、shorewall.confでip_forwardを許可しました。

すべては動作していますが、多数の近隣サーバーが DHCP サーバーに要求を送信し、そこから IP を取得していることがわかります。

私がこれを正しく理解していれば、私のKVM IP範囲を使用するすべての近隣は私のKVMゾーンの一部であり、私のファイアウォールを介してインターネットにアクセスしています。

KVM ゾーン メンバーを MAC アドレスでフィルタリングすることを考えましたが、MAC アドレスは簡単に設定できるため、これは良い解決策ではないと思います。どうすれば解決できますか?

答え1

私が状況を正しく理解しているのであれば、ゲストと非ゲストを分離し、shorewall を使用してインターネットとサービスへのアクセスを別々に制御したいということですね。これを行う最も簡単な方法は、これら 2 つのグループを別のゾーンに分けることだと思います。ゲストはプライベート ブリッジに接続され、非ゲストは LAN に接続されます。私のポイントを説明するために、以下にいくつかのサンプル構成ファイルを作成しました。非ゲストがインターネットや KVM ネットワークのサービスにどの程度アクセスできるようにするかはわかりませんので、簡単にするために、インターネット アクセスをブロックし、すべてのサービスへのアクセスを許可しました。

インターフェース

#ZONE   INTERFACE       OPTIONS
kvm     br0
net     eth0             tcpflags,logmartians,nosmurfs,sourceroute=0,dhcp

ゾーン

#ZONE   TYPE    OPTIONS                 IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv4
kvm     ipv4
lan:net ipv4

ホスト

#ZONE           HOSTS                           OPTIONS
lan             eth0:192.168.1.0/24  

ポリシー

#SOURCE         DEST            POLICY          LOG LEVEL       LIMIT:BURST
$FW             all             ACCEPT
kvm             net             ACCEPT
kvm             lan             ACCEPT
kvm             $FW             DROP            info
lan             net             DROP
lan             kvm             ACCEPT
lan             $FW             DROP
net             all             DROP            #info
# The FOLLOWING POLICY MUST BE LAST
all             all             REJECT          #info

関連情報