科技行者

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

知识库

知识库 安全导航

至顶网网络频道使用iptables建置Linux 防火墙(14)

使用iptables建置Linux 防火墙(14)

  • 扫一扫
    分享文章到微信

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

防火墙依照其运作方式来分类,可以区分为封包过滤式防火墙、应用层网关式防火墙、电路层网关式防火墙。其中被广为采用的是封包过滤式防火墙,本文要介绍的iptables 防火墙就是属于这一种。

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

关键字: 网络安全 防火墙 iptables Linux

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

  $IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT

  $IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT

  $IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT

  # 限制过滤规则的比对频率为每分钟平均流量三个封包(超过上限的封包将暂停比对),并将瞬间流量设定为一次最多处理三个封包(超过上限的封包将丢弃不予处理),这类封包通常是骇客用来进行阻断式攻击 

  $IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "

  ######

  # 4.2 nat table

  #

  #

  # 4.2.1 Set policies

  #

  #

  # 4.2.2 Create user specified chains

  #

  #

  # 4.2.3 Create content in user specified chains

  #

  #

  # 4.2.4 PREROUTING chain(定义目的地地址转译)

  #

  # 从 WAN 要到校内服务器的封包,在封包过滤前先转译目的地 IP 为 NAT IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP1_IP -j DNAT --to-destination $LAN_HTTP1_IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP2_IP -j DNAT --to-destination $LAN_HTTP2_IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP3_IP -j DNAT --to-destination $LAN_HTTP3_IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP4_IP -j DNAT --to-destination $LAN_HTTP4_IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP5_IP -j DNAT --to-destination $LAN_HTTP5_IP

  $IPTABLES -t nat -A PREROUTING -d $HTTP6_IP -j DNAT --to-destination $LAN_HTTP6_IP

  #

  # 4.2.5 POSTROUTING chain(定义来源地址转译)

  #

  # 从校内服务器要到 WAN 的封包,在送出之前先转译来源 IP 为 NIC IP,配合上面区块的设定,就可以做到一对一对应

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP1_IP -j SNAT --to-source $HTTP1_IP

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP2_IP -j SNAT --to-source $HTTP2_IP

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP3_IP -j SNAT --to-source $HTTP3_IP

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP4_IP -j SNAT --to-source $HTTP4_IP

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP5_IP -j SNAT --to-source $HTTP5_IP

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_HTTP6_IP -j SNAT --to-source $HTTP6_IP

  # 从校内一般单机要到 WAN 的封包,在送出之前先转译来源 IP 为预设的 NIC IP,这就是多对一对应,若指定成 IP 范围,就变成多对多对应,例如本范例即是如此

  $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $IP_POOL

  #

  # 4.2.6 OUTPUT chain

  #

  ######

  # 4.3 mangle table

  #

  #

  # 4.3.1 Set policies

  #

  #

  # 4.3.2 Create user specified chains

  #

  #

  # 4.3.3 Create content in user specified chains

  #

  #

  # 4.3.4 PREROUTING chain

  #

  #

  # 4.3.5 INPUT chain

  #

  #

  # 4.3.6 FORWARD chain

  #

  #

  # 4.3.7 OUTPUT chain

  #

  #

  # 4.3.8 POSTROUTING chain

  #

  柒、Log 分析

  分析 iptables 防火墙 Log 的免费软件相当多,底下仅介绍 iptables_logger_v0.3,这个软件提供一个 perl 程序,可以读取系统 LOG,并将数据写入 MySql 数据库,然后还提供 php 程序,可以从数据库读取数据,整理成网页提供浏览,因此要安装此分析软件,必须先安装 perl、php、mysql 和 apache,有关这些套件的安装在这里不再介绍,请自行参考相关文件,或参加 Linux 进阶班课程。你可以从这里取得 iptables_logger_v0.3 程序,其安装程序如下:

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

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

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