科技行者

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

知识库

知识库 安全导航

至顶网网络频道基于Linux系统的包过滤防火墙(10)

基于Linux系统的包过滤防火墙(10)

  • 扫一扫
    分享文章到微信

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

包过滤防火墙是用一个软件查看所流经的数据包的包头(header),由此决定整个包的命运。它可能会决定丢弃(DROP)这个包,可能会接受(ACCEPT)这个包,也可能执行其它更复杂的动作。

作者:51CTO.COM 2007年11月9日

关键字: 包过滤 防火墙 iptables Linux

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

  #/sbin/iptables-save >;/etc/sysconfig/iptables

  要恢复原来的规则库,需使用命令:

  #/sbin/iptables-restore

  为了使得用iptables命令配置的规则在下次启动机器时还能被使用,有两种主法。

  (1)使用iptables的启动脚本实现。Iptables的启动脚本/etc/rc.d/init.d/iptables每次启动时都使用/etc/sysconfig/iptables所提供的规则进行规则恢复,并可以使用如下的命令保存规则:

  #service iptables save

  (2) 在自定义脚本中用iptables命令直接创建规则集。可以直接用iptables命令编写一个规则脚本,并在启动时执行这个脚本。

  例如:若规则脚本的文件名为/etc/fw/rules,则可以在启动脚本/etc/rd.d/init.d/rc.local中加入下面的代码:

  if[-x /etc/fw/rules];then /etc/fw/rules;fi;

  这样,机器每次启动时即可执行该规则脚本。

  如果使用此种方式,建议使用ntsysv命令关闭系统的iptables守护进程。

  2.3 iptables命令使用举例

  2.3.1 链的基本操作

  (1)清除所有的规则。通常在开始配置包过滤防火墙之初清除所有的规则,重新开始配置,以免原有的规则影响新的设定。使用如下命令进行:

  1) 清除预设表filter中所有规则链中的规则。

  #iptables -F

  2)清除预设表filter中使用者自定义链中的规则。

  #iptables -X

  3)将指定链所有规则的包字节记数器清零。

  #iptables -Z

  (2)设置链的默认策略。一般地,配置链的默认策略有两种方法。

  1) 首先允许所有的包,然后再禁止有危险的包通过防火墙。即“没有被拒绝的都允许”。这种方法对于用户而言比较灵活方便,但对系统而言,容易引起严重的安全问题。

  为此,应该使用如下的初始化命令:

  #iptables -P INPUT ACCEPT

  #iptables -P OUTPUT ACCEPT

  #iptables -P FORWARD ACCEPT

  2) 首先禁止所有的包,然后再根据需要的服务允许特定的包通过防火墙。即“没有明确允许的都被拒绝”。这种方法最安全,但不太方便。为了使得系统有足够的安全性,一般采用此种策略进行iptables防火墙的配置。

  为此,应该使用如下的初始化命令:

  #iptables -P INPUT DROP

  #iptables -P OUTPUT DROP

  #iptables -P FORWAED DROP

  3)列出表/链中的所有规则。包过滤防火墙只使用filter表,此表为默认的表,因此可以使用下面的命令列出filter表中所有规则:

  #iptables -L

  使用上面的命令时,iptables将逆向解析IP地址,这将发费很多时间,从而造成信息出来的非常慢。为了解决这个问题,可以使用下面的带有-n参数的命令(-n参数用于显示数字化的地址和端口):

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

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

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