扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
pass in quick on fxp1 proto tcp from any to any port = ftp-data keep statepass in quick on fxp1 proto tcp from any port = ftp-data to any port > 1023 keep state
ftp中将打开额外的端口以进行数据传输,这两个设置允许对ftp数据端口的数据包能够进行转发。
block return-rst in log on fxp1 proto tcp from any to any flags S/SAblock return-icmp(net-unr) in log on fxp1 proto udp from any to any
对于其他tcp连接请求,防火墙回应一个RST数据包关闭连接,S/SA标识TCP数据包的标志,S为Syn, A为Ack,而S/SA表示对Syn和Ack中的Syn标志进行检查,这类数据包是用于设定连接的数据包。对UDP请求,防火墙回应网络不可达到的ICMP包。
上面的例子将屏蔽外部计算机发向网络内部的数据包,但允许内部向外的发起网络访问。如果要允许外部网络对内的访问,就必须增加其他pass in规则,以使得过滤规则能适应更复杂的情况。为了使上面的设置生效,必须将过滤规则加入到内核中去,这需要使用ipf命令。
# ipf -Fa# ipf -f /etc/ipf.conf
首先使用-Fa标志清除所有的过滤规则,然后将ipf.conf中的设置加入系统中。此后,可以使用ipfstat来检查ipfilter进行过滤的各种统计信息。
# ipfstat input packets:blocked 227 passed 116210 nomatch 68219 counted 0output packets:blocked 0 passed 74586 nomatch 20316 counted 0 input packets logged:blocked 227 passed 24883output packets logged:blocked 0 passed 17153 packets logged:input 0 output 0 log failures:input 25028 output 17139fragment state(in):kept 0lost 0fragment state(out):kept 0lost 0packet state(in):kept 1lost 0packet state(out):kept 14lost 8ICMP replies:160TCP RSTs sent:9Result cache hits(in):47523(out):53694IN Pullups succeeded:0failed:0OUT Pullups succeeded:0failed:0Fastroute successes:0failures:0TCP cksum fails(in):0(out):0Packet log flags set: (0x10000000)packets passed through filter
虽然在规则中指定了log选项,但是缺省时候syslogd并不会记录ipfilter发送的信息。符合规则的数据记录并没有真正被发送到系统日志记录中,必须使用ipmon打开记录功能。
# ipmon -s -n -x
由于ipmon使用的是syslog的local0通道,缺省情况下local0通道并没有打开,因此只有很少的错误信息被发送到 /var/log/messages文件中。为了打开local0通道,还需要改动syslogd.conf,增加下面的设置,以记录ipfilter的全部记录。
local0.*/var/log/ipfilter.log
为了不让ipfilter的记录发送到/var/log/messages等其他日志文件中,可以在/var/log/messags设置行中添加一个记录local.none。
此后,使用touch创建ipfilter.log文件,并重新启动syslogd,就能在/var/log/ipfilter.log中正确记录过滤记录了。当一切都设置完毕之后,就能将ipf和ipnat这两个设置命令放入系统启动文件rc.local,以便每次系统自动启动都能执行防火墙设置。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者