如何阻止 NAT 后面的特定计算机

sil*_*tar 5 networking router home-networking ufw nat

我经营一家小旅馆,网络配置如下:

Router1 (192.168.1.1) ??? (192.168.1.2) Ubuntu Samba+SSH Server
                       ?? (192.168.1.X) Router 2 (192.168.2.1) ??? (192.168.2.X) GuestPC1
                       ?? (192.168.1.X) AdminPC1                ?? (192.168.2.X) GuestPC2
                       ?? (192.168.1.X) AdminPC2                ?? (192.168.2.X) GuestPC3
                       :                                        :
                       :                                        :
                       ?? etc.                                  ?? etc.
Run Code Online (Sandbox Code Playgroud)

192.168.1.X 是 ADMIN 网络,我们希望对 GUEST 网络 (192.168.2.X) 保密,以保存 192.168.1.2 上的一些共享 Samba 文件夹。

两个网络上的所有计算机都通过 DHCP 获取其 IP 地址,但使用静态 IP 的 Samba+SSH 服务器除外。

我注意到 GuestPC 能够访问 Ubuntu Samba+SSH 服务器,尽管将 ufw 配置为仅允许 192.168.1.0/24。

在 Internet 上进行了一些研究后,似乎由于路由器 2 上的 NAT,来自 GuestPC 的连接能够伪装到我的 ADMIN 网络上。因此,仅考虑上述 ufw 规则,GuestPC 能够完全访问 Samba 和 SSH 服务没有限制。

我的问题是,阻止 GUEST 网络 (192.168.2.X) 计算机访问 ADMIN 网络 (192.168.1.X) 的正确方法是什么?有没有比在 Ubuntu 服务器上使用 ufw 将路由器 2 设置为静态 IP 并阻止其 IP 更好的方法?

dav*_*dgo 4

您可以反转网络 1 和网络 2,即让您的办公室网络位于第二个路由器后面,然后将访客插入第一个路由器。这可能是最简单的解决方案(并且可行,假设您对 double-nat 没有问题,而您正在以任何方式执行此操作)。

就您的网络而言,您无法使用(连接互联网的)路由器上的规则来阻止对服务器的访问 - 因为流量永远不会流向那里。您可能可以从辅助路由器上阻止它。

您没有指定在何处使用此 ufw 规则(或它是什么),但如果您想阻止来宾访问您的 SAMBA 服务器,您至少有几个替代方案 [ 假设您不按照我的方式修改您的网络第一个建议]

  1. 摆脱第二个路由器上的 NAT。除了关闭 NAT 之外,您还需要将 192.168.2.0/24 的路由从第一个路由器推送到第二个路由器。这将允许您通过 IP 范围识别第二个网络并在路由器 2 上阻止它。

    或者

  2. 将 router2 上的 WAN 接口更改为静态 IP 地址,并在 Ubuntu 服务器(和/或路由器 2)上阻止该地址。