关于IPFW明示允许规则集的一些疑问

发布于 2022-10-15 08:48:32 字数 1129 浏览 27 评论 0

本帖最后由 migoumigou 于 2011-04-22 17:22 编辑

初学ipfw,是小菜,所以有些疑问请教
内核编译的时候,已经放入了options    IPFIREWALL_DEFAULT_TO_ACCEPT
现在想要做一个明示允许的规则集,除了规则集中列出的MAC列表allow,其他都deny,这样写的:
ipfw -q -f flush
ipfw -q add 00050 divert 8668 ip4 from any to any via bge0
ipfw -q add 00100 allow ip from any to any via lo0
ipfw -q add 00200 deny ip from any to 127.0.0.0/8
ipfw -q add 00300 deny ip from 127.0.0.0/8 to any
ipfw -q add 00400 allow ip from any to any MAC x0:0x:0x:0x:0x:0x any
ipfw -q add 00500 allow ip from any to any MAC x0:0x:0x:0x:0x:0x any
ipfw -q add 00600 allow ip from any to any MAC x0:0x:0x:0x:0x:0x any
ipfw -q add 65535 deny ip from any to any
重启加载规则后ipfw list,前面的几项规则都显示正常,唯独65535还是
65535 allow ip from any to any
然后规则中MAC列表以外的机器仍可以正常通过防火墙连接外网

请问是规则集写的有问题吗?烦请指出哪里有问题?
如果规则集没有问题,那是不是明示允许的规则,前提是必须把内核中的options    IPFIREWALL_DEFAULT_TO_ACCEPT拿掉,重新编译内核,才能让上面的规则集正常运作?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

蓝色星空 2022-10-22 08:48:32

kernel里面的那个是最后的默认设置吧。

赏烟花じ飞满天 2022-10-22 08:48:32

那你就用下面一句,65535那句你不可能把它重新定义,而是会有两个65535,加上65534后,65535永远不起作用:
ipfw -q add 65534 deny ip from any to any

鼻尖触碰 2022-10-22 08:48:32

Check this!

  1. ################################################################################
  2. # delete all rules
  3. ipfw -q -f flush
  4. # variable declaration
  5. nic="re0"
  6. dns1="+++"
  7. dns2="+++"
  8. dhcp="192.168.1.1"
  9. cmd="ipfw -q add "
  10. ks="keep-state"
  11. ################################################################################
  12. # loopback
  13. $cmd 00100 allow all from any to any via lo0
  14. $cmd 00200 check-state
  15. ################################################################################
  16. # dns
  17. $cmd 00300 allow tcp from me to $dns1 53 out via $nic setup $ks
  18. $cmd 00400 allow udp from me to $dns2 53 out via $nic $ks
  19. $cmd 00500 allow tcp from me to $dns1 53 out via $nic setup $ks
  20. $cmd 00600 allow udp from me to $dns2 53 out via $nic $ks
  21. # dhcp
  22. $cmd 00700 allow udp from me to $dhcp 67 out via $nic $ks
  23. ################################################################################
  24. # www
  25. $cmd 00800 allow tcp from me to any 80 out via $nic setup $ks
  26. # secure www
  27. $cmd 00920 allow tcp from me to any 443 out via $nic setup $ks
  28. # email
  29. $cmd 01000 allow tcp from me to any 587 out via $nic setup $ks
  30. $cmd 01100 allow tcp from me to any 995 out via $nic setup $ks
  31. # irc
  32. $cmd 01200 allow tcp from me to any 7000 out via $nic setup $ks
  33. # ftp
  34. $cmd 01300 allow tcp from me to any 21 out via $nic setup $ks
  35. $cmd 01400 allow tcp from me to any 1024-65535 out via $nic setup $ks
  36. # ntp
  37. $cmd 01500 allow udp from me to any 123 out via $nic $ks
  38. # csup
  39. $cmd 01600 allow tcp from me to any out via $nic setup $ks uid root
  40. ################################################################################

复制代码

差↓一点笑了 2022-10-22 08:48:32

那你就用下面一句,65535那句你不可能把它重新定义,而是会有两个65535,加上65534后,65535永远不起作用: ...
lsstarboy 发表于 2011-04-22 19:08

先谢~
    这样可以哦?好的,我试试看...

桃扇骨 2022-10-22 08:48:32

Check this!
fender0107401 发表于 2011-04-22 19:18

    谢谢
规则定义的很详细,必然要拿来试试看,辛苦辛苦~

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文