科技行者

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

知识库

知识库 安全导航

至顶网网络频道如何用奔腾机和Linux构建防火墙(7)

如何用奔腾机和Linux构建防火墙(7)

  • 扫一扫
    分享文章到微信

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

老奔腾机完全可以胜任小型商业或家庭办公室的网络防火墙工作。ipchains 是 Linux 下的防火墙软件,其源码可以免费获得,并能够在老式奔腾机的 T-1 连网环境下工作。

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

关键字: ipchains Linux 防火墙 奔腾机

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

有两种特殊的策略组件指定 TCP_SYN 标志 (-y) 和碎片包 (-f)。当 TCP 客户端第一次试图连接远程 TCP 服务器时,TCP_SYN 标志被设置。不幸的是,黑客会利用它攻击远程服务器,其做法是发送大量 TCP_SYN 消息而不真正连接服务器,从而锁住所有服务器进程,使其速度变慢或使服务器崩溃。只要为该组件指定 TCP 组件 -p,就可以阻止外部的 TCP_SYN 攻击。

碎片包过滤规则组件是必要的,因为 IP 包常常通过不同容量的的网络连接。有时他们不得不分成一些名为 碎片 的更小的包以便顺利通过小容量的连接通道。在 PPP 协议下用调制解调器连接网络时常发生这种情况。例如,以太网可以传送长为 1500 字节的 IP 包,而调制解调器(串行线)的包通常是 256 字节;以太网量级的包不得不分成六份以符合调制解调器量级的碎片包。到达目的机器后,这些碎片包就被组合起来。因此,在 PPP 或 SLIP 协议下使用调制解调器连接网络时,您应该指定这个规则组件,这样防火墙才会把包视作一体。也只有如此它才能正确辨识传输层协议( TCP, UDP, ICMP) 信息,从而实施其他规则。

在命令行下运行以上规则,并用 /sbin/ipchains -L 命令检查其顺序是否正确。接着还要按照"开始/关闭"脚本指定的文件名来保存这些规则(我们的例子中,该文件是 /etc/firewall.rules )。下次系统启动时就会使用这些规则了。需要注意的是,每次您定义新规则都必须运行以下命令:

# /sbin/ipchains-save > /etc/firewall.rules

接下来给出一些配置实例,您可以看到如何为防火墙制定规则。

一些配置实例
这个例子是最简单的防火墙模型,只允许位于保护范围内的机器访问外部网络,但禁止任何外部机器进入内部网络。您首先要拦截由任何接口流出的所有包,然后只让那些具有转换过的地址信息的包通过。

# /sbin/ipchains -P forward DENY
# /sbin/ipchains -A forward -f -i ppp0 -j MASQ

采用以上两个规则,则在包流出之前,所有安装了防火墙的机器(Bob,Fred,Jane 和 Olivia)都被屏蔽了。同时禁止防火墙外部的机器接触任何内部设备。这里并没有涉及路由器,实际上本例中的防火墙是通过调制解调器建立到因特网 PPP 连接的。

嵌入路由器的防火墙代码并不少见。很多时候,防火墙和路由器可能位于同一机器。另一方面,利用 PPP 的调制解调器方案,防火墙就成为路由器,路由指令把所有非本地数据流转发到 PPP 端口。

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

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

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