我目前正在尝试熟悉 FreeBSD 上 PF 的基础知识。
我正在尝试设置最基本的示例PF章在 FreeBSD 手册中,简单的暴力破解规则:
block quick from <bruteforce>
pass inet proto tcp from any to $localnet port $tcp_services \
flags S/SA keep state \
(max-src-conn 100, max-src-conn-rate 15/5, \
overload <bruteforce> flush global)
这有什么区别,只需要设置如下:
block quick from <bruteforce>
pass quick proto tcp to port $tcp_services \
flags S/SA keep state \
(max-src-conn 100, max-src-conn-rate 15/5, \
overload <bruteforce> flush global)
在执行此操作时,我将进行 setup $localnet
,在本例中是这样完成的:
ext_if = "xl0" # macro for external interface - use tun0 for PPPoE
int_if = "xl1" # macro for internal interface
localnet = $int_if:network
这表明我对如何区分外部和内部接口缺乏一些基本的了解。
就我而言,如果我跑步ifconfig
,我会得到vtnet0
和。lo0
pflog0
所以我没有像示例那样有 2 个接口,并且我的系统没有设置为互联网和本地网络之间的防火墙。
如果我只有一个接口,这是我的外部接口还是内部接口?在我的案例中,我将如何使用文档中的示例?
答案1
如果您只有一个 NIC,那么您将 PF 用作“主机防火墙”。你没有内部网络。您不需要 NAT、转发等内容。只需允许传入服务和有效的传出流量即可。