代码: 全选
vi /etc/pf.conf
block in
pass out
代码: 全选
vi /etc/pf.conf
block in
pass out
代码: 全选
pass out keep state
至于消除了哪些令人迷惑的状况我也不是很清楚,推测可能是原来的PF不识别一些“古怪”的应答数据包而对其block in,这样导致内部发起的查询得不到正确的回应,我记得原来的FAQ上说有的游戏的通信数据有类似的特征——PF的开发者也不是万能的,毕竟不可能熟悉所有软件采用通讯协议和方式,所以实际应用中需要根据自己的情况进行规则调整,这可能也是OpeNBSD 4.1以后的PF系统中keep state成为pass规则默认参数的原因,此外如果环境特殊,需要时也可以禁用状态(no state)。事实上, 默认的新参数相当于keep state flags S/SA, 确保了设置连接时只有最初的SYN数据包产生状态, 消除了一些令人迷惑的状况。
这样我就明了了,谢谢指点:D这样,由内部网络发起的初始链接(无论是TCP或UDP)的通讯都在PF的状态表里保留了记录,一旦一个进站数据包匹配状态表中的某个记录,PF就理解为是对内部发起连接的一个回应而给予放行(pass)
正浏览此版面之用户: Ahrefs [Bot] 和 0 访客