有一台只有 1 个 NIC 的 FreeBSD 11.1-RELEASE 机器,在PF防火墙在相同的服务器。
我需要允许连接仅有的来自从内部网络 (/24) 连接的客户端。
目前看来这似乎是可行的:
# Default deny policy
block in log all
# allow Samba connections only from internal IPs
pass in quick on $ext_if inet proto tcp from $ext_if:network to $ext_if:network port {135, 137, 138, 139, 445}
pass in quick on $ext_if inet proto udp from $ext_if:network to $ext_if:network port {135, 137, 138, 139, 445}
但是这些就适当并且足够了吗?
有没有更好、更惯用的方法,使用 PF 防火墙仅允许从内部 LAN 进行 Samba 连接?
答案1
向您的 pf-sense 安装添加另一个接口。或者如果有支持 VLAN 的交换机可用,它将为您提供 pf-sense 中的额外虚拟接口。
您可以将 samba 共享放在第二个接口上,并给它一个新的子网(类似于 10.10.10.0 /24),任何事情都可以,您只需要将它与您想要控制的局域网用户设置为不同的子网。
现在设置哪些用户可以访问第二个 LAN 子网的规则。或者具体哪些用户可以通过 ip 访问您的 samba 共享。
编辑:在 PF(过滤)中执行以下操作:在默认阻止规则之后 >
现在必须明确地让流量通过防火墙,否则它将被默认的拒绝策略丢弃。这时,数据包标准(例如源/目标端口、源/目标地址和协议)就会发挥作用。每当允许流量通过防火墙时,规则都应尽可能严格。这是为了确保只允许预期的流量通过。
“# 将流量从本地网络 192.168.0.0/24 传递到 dc0 上的 OpenBSD”
“# 机器的 IP 地址 192.168.0.1。另外,将返回流量传递到 dc0。”
将 dc0 从 192.168.0.0/24 传递到 192.168.0.1
在 dc0 上从 192.168.0.1 传递到 192.168.0.0/24
“#将 TCP 流量传递到在 OpenBSD 机器上运行的 Web 服务器。”
通过出口协议 tcp 从任意端口进入出口端口 www
使用您的接口名称,添加您的子网,然后您就可以开始了,使用 ip 规则。它将使这一切变得更容易。
我只在您的帖子中看到两个通过规则,我相信您需要同时使用 tcp 和 udp 的输入/输出。