扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
############# Define the firewall type in /etc/rc.conf. Valid values are:# open - will allow anyone in# client - will try to protect just this machine# simple - will try to protect a whole network# closed - totally disables IP services except via lo0 interface# UNKNOWN - disables the loading of firewall rules.# filename - will load the rules in the given filename (full path required)## For ``client'' and ``simple'' the entries below should be customized# appropriately.
这里解释了rc.conf中对firewall参数的可能设置值,可以设置为不同的设置值,或者可以使用一个文件名作为firewall_type的值,指定一个包括了ipfw规则的文件,而设置使用者自己定制的过滤规则。
############# Only in rare cases do you want to change these rules$fwcmd add 100 pass all from any to any via lo0$fwcmd add 200 deny all from any to 127.0.0.0/8
这两个规则用于设置本地网络lo0的数据包能进行传输,但屏蔽所有从其他网络界面通向本地网络lo0的通信。这是最基本的设置,防止在路由或IP地址设置不正确的情况下,外部计算机访问127.0本地网络。
# Prototype setups.if [ "${firewall_type}" = "open" -o "${firewall_type}" = "OPEN" ]; then $fwcmd add 65000 pass all from any to any
设置open为防火墙的类型时,即使没有设置IPFIREWALL_DEFAULT_TO_ACCEPT内核选项,也允许对数据包进行转发,因为这里设置的规则序号为65000,小于缺省的65535规则。
elif [ "${firewall_type}" = "client" ]; then ############ # This is a prototype setup that will protect your system somewhat against # people from outside your own network. ############ # set these to your network and netmask and ip net="192.168.4.0" mask="255.255.255.0" ip="192.168.4.17"
当设置了client为防火墙的类型,那么就需要更改这里的IP地址和子网掩码的设置,使其符合自己计算机的实际情况。client类型主要用于单机系统,保护本机不受外部计算机侵袭的设置。它的保护与tcpwrapper类似,但比tcpwrapper更为基本和高效,但是它不能提供详细的连接记录日志。
# Allow any traffic to or from my own net.$fwcmd add pass all from ${ip} to ${net}:${mask}$fwcmd add pass all from ${net}:${mask} to ${ip}
这两个规则用于许可计算机与本地网络的通信。
# Allow TCP through if setup succeeded$fwcmd add pass tcp from any to any established
上面这两个规则允许连接已经设定成功的TCP连接的数据包能够保持连接,数据传输能够继续进行。 established参数就用于说明数据包为已经设置成功的TCP连接数据包。
# Allow setup of incoming email$fwcmd add pass tcp from any to ${ip} 25 setup
允许外部计算机能向内地smtp端口发起连接请求,setup用于说明定义的数据包为请求连接的数据包。
# Allow setup of outgoing TCP connections only$fwcmd add pass tcp from ${ip} to any setup
允许本地计算机能向外部网络发起连接请求。
# Disallow setup of all other TCP connections$fwcmd add deny tcp from any to any setup
此后屏蔽所有其他种类的TCP连接请求数据包,因此如果要打开其他TCP连接请求,就需要在这个规则之前进行定义。
# Allow DNS queries out in the world $fwcmd add pass udp from any 53 to ${ip} $fwcmd add pass udp from ${ip} to any 53 # Allow NTP queries out in the world $fwcmd add pass udp from any 123 to ${ip} $fwcmd add pass udp from ${ip} to any 123 # Everything else is denied as default.
此后定义对UDP数据包的过滤规则,只许可DNS和NTP协议通过,而屏蔽其他UDP数据包。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者