科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道使用Linux系统Iptables防火墙(2)

使用Linux系统Iptables防火墙(2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Linux的内置firewall机制,是通过kernel中的netfilter模块实现的。Linux kernel使用netfilter对进出的数据包进行过滤,netfilter由三个规则表组成,每个表又有许多内建的链组成。

作者:51CTO.COM 2007年10月23日

关键字: 数据包 Linux iptables 防火墙

  • 评论
  • 分享微博
  • 分享邮件

  -j,——jump 用于指定一个target,告诉规则将该匹配的数据包发送到该 target。Target可以是ACCEPT,DROP,QUEUE,RETURN.如果没有-j,那么不会对数据包进行任何操作,只是将计数器加1。

  -i - - in-interface ,对于INPUT FORWARD PREROUTING链,该参数指定数据包到达服务器时所使用的端口。

  -o - - out-interface,对于OUTPUT FORWARD POSTROUTING链,该参数指定数据包离开服务器时使用的端口。

  3.) Iptables的命令target

  创建规则的最后一步是指定Iptables对数据包的操作。只要某一规则匹配该数据包,就不会再有别的规则的操作。内建的target有:ACCEPT DROP QUEUE RETURN。

  ACCEPT:允许数据包通过,到达目的地。

  DROP:拒绝数据包通过,丢弃该包。

  QUEUE:将数据包发送回到用户应用程序处理。

  RETURN:不再根据当前链的其他规则来检查数据包,而是直接返回,继续被发送到其目的地址,或下一个链。

  2.应用Iptables规则 示例

  允许WWW

  iptables –A INPUT –p tcp –dport 80 –j ACCEPT

  

  该规则被添加到filter表的INPUT链,允许目的端口是80的数据包。

  在内部接口上允许DHCP

  iptables –A INPUT –i eth0 –p tcp - - sport 68 - -dport 67 ACCEPT

  iptables –A INPUT –i eth0 –p ucp - -sport 68 - -dport 67 ACCEPT

  

  以上同时允许TCP和UDP协议。

  3.保存和恢复Iptables

  保存Iptables

  使用iptables-save可将现行的iptables规则保存,

  iptables-save >iptables保存路径,如# iptables-save >/etc/iptables.up.rule

  恢复Iptables

  使用iptables-restore 可从配置文档恢复iptables表到现行iptables表.

  阅读提示:Linux 的内置firewall机制,是通过kernel中的netfilter模块实现的(www.netfilter.ort)。Linux kernel使用netfilter对进出的数据包进行过滤,netfilter由三个规则表组成,每个表又有许多内建的链组成。通过使用iptables命令可以对这些表链进行操作,如添加、删除和列出规则等。

  二、Ubuntu Server中的Iptables

  Ubuntu Server6.06中已经默认安装iptables,版本是1.3.3.默认状态是关闭。

  通过修改/etc/network/interfaces可将iptables打开:

  auto lo

  Iface lo inet loopback

  auto eth0

  iface eth0 inet dhcp

  

  #添加以下内容

  pre-up iptables-restore

  #call the restored rule when active the eth0

  post-down iptables-save >/etc/iptables.up.rule

  #restore the iptables rule when shutdown the interface eth0

  

  然后重新激活eth0即可。

  另外,可随时修改/etc/iptables.up.rule配置文件,来更改iptables的规则。Iptables.up.rule格式如下:

  #Generated by iptables-save V1.3.3 on Tue Jul 31 14:18:44 2007

  *filter

  :INPUT ACCEPT [73:8213]

  :FORWARD ACCEPT [0:0]

  :OUTPUT ACCEPT [8:825]

  -A INPUT –i lo –p icmp –j DROP

  -A INPUT –i eth0 –p icmp –j DROP

  COMMIT

  #Completed on Tue Jul 31 14:10:44 2007

  

  行与行之间不能有空行。

  三.Summary

  iptables表链中每条规则的顺序很重要,如果首条是accept all,那末所有的数据包都会被允许通过firewall,因此应当适当的安排规则顺序。

  通常的法则是:拒绝所有 允许少数.

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章