在 shorewall 中,使用嵌套区域时如何阻止来自外部主机的请求?

在 shorewall 中,使用嵌套区域时如何阻止来自外部主机的请求?

我有一台 Debian 服务器,带有一个网络接口,我已经为 KVM 和 shorewall 配置了一个桥接器,同一接口中的两个区域 所以我有“net”区域和用于 kvm 客户的“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

我还配置了一个 dhcp 服务器来为客人提供 IP,并在 shorewall.conf 中允许 ip_forward

一切正常,但我看到很多邻居服务器向 dhcp 服务器发出请求并从中获取 IP。

如果我理解正确的话,每个使用我的 kvm IP 范围的邻居都是我的 kvm 区域的一部分,并通过我的防火墙获得 Internet 访问权限

我想过通过 mac 地址过滤 kvm 区域成员,但我不认为这是一个好的解决方案,因为 mac 地址可以轻松设置,我该如何解决这个问题?

答案1

如果我理解您的情况正确,您希望将您的访客与非访客分开,并使用 shorewall 以不同的方式控制他们的互联网和服务访问。我认为最简单的方法是将这两组分成不同的区域。访客将连接到私人网桥,非访客将连接到局域网。我在下面创建了一些示例配置文件来说明我的观点。我不知道您希望非访客在多大程度上访问互联网或 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

相关内容