科技行者

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

知识库

知识库 安全导航

至顶网网络频道深入分析Linux防火墙(2)

深入分析Linux防火墙(2)

  • 扫一扫
    分享文章到微信

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

关于网络安全的研究分析中,防火墙(Firewall)是被经常强调的重点,它基本功能是过滤并可能阻挡本地网络或者网络的某个部分与Internet之间的数据传送(数据包)。

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

关键字: 防火墙 Linux iptables Netfilter

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

而一个iptables命令基本上包含如下五部分:希望工作在哪个表上、希望使用该表的哪个链、进行的操作(插入,添加,删除,修改)、对特定规则的目标动作和匹配数据包条件。

基本的语法为:iptables -t table -Operation chain -j target match(es)(系统缺省的表为"filter")

基本操作如下:

-A 在链尾添加一条规则
-I 插入规则
-D 删除规则
-R 替代一条规则
-L 列出规则

基本目标动作,适用于所有的链:

ACCEPT 接收该数据包
DROP 丢弃该数据包
QUEUE 排队该数据包到用户空间
RETURN 返回到前面调用的链
foobar 用户自定义链

基本匹配条件,适用于所有的链:

-p 指定协议(tcp/icmp/udp/...)
-s 源地址(ip address/masklen)
-d 目的地址(ip address/masklen)
-i 数据包输入接口
-o 数据包输出接口

匹配条件扩展:

TCP-----匹配源端口,目的端口,及tcp标记的任意组合,tcp选项等。
UPD-----匹配源端口和目的端口
ICMP----匹配ICMP类型
MAC-----匹配接收到的数据的mac地址
MARK----匹配nfmark
OWNE----(仅仅应用于本地产生的数据包)来匹配用户ID,组ID,进程ID及会话ID
LIMIT---匹配特定时间段内的数据包限制。这个扩展匹配对于限制dos攻击数据流非常有用。
STATE---匹配特定状态下的数据包(由连接跟踪子系统来决定状态),可能的状态包括:
INVALID (不匹配于任何连接)
ESTABLISHED (属于某个已经建立的链接的数据包)
NEW (建立连接的数据包)
RELATED (和某个已经建立的连接有一定相关的数据包,例如一个ICMP错误消息或ftp数据连接)
TOS——匹配IP头的TOS字段的值。

目标动作扩展:

LOG 将匹配的数据包传递给syslog()进行记录
ULOG 将匹配的数据适用用户空间的log进程进行记录
REJECT 不仅仅丢弃数据包,同时返回给发送者一个可配置的错误信息
MIRROR 互换源和目的地址以后重新传输该数据包

Ipchains是一种Linux下使用比较广泛的工具软件,可以实现数据包过滤的防火墙功能(Linux的内核为2.1及以上的内核版本都能够支持这个软件包)。这个软件包管理着对Linux操作系统内核本身极为重要的那些IP帐户和防火墙功能。用户使用的内核必须已经在编译时激活 ipchains功能;如果想掌握ipchains运行在哪一个层次,就必须在数据包级别上精通TCP/IP网络的数据传输情况。ipchains是一个数据包过滤器,即是一个用来检查数据包的信封内容的程序;同时,根据用户设定的一系列规则,还可以决定是否允许某些数据包通过和把它们发送到什么地方。

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

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

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