学习啦 > 学习电脑 > 电脑安全 > 防火墙知识 > 如何为Solaris服务器配置款安全的防火墙

如何为Solaris服务器配置款安全的防火墙

时间: 若木635 分享

如何为Solaris服务器配置款安全的防火墙

  连接网上的服务器系统,不管是什么情况都要明确一点:网络是不安全的。因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的。传统意义上的防火墙技术分为三大类,“包过滤”(Packet Filtering)、“应用代理”(Application Proxy)和“状态检测”(Stateful Inspection),无论一个防火墙的实现过程多么复杂,归根结底都是在这三种技术的基础上进行功能扩展的。

  一、Solaris包过滤防火墙IPFilter简介

  IPFilter是目前比较流行的包过滤防火墙软件,它目前拥有多种平台的版本,安装配置相对比较简单。可以用它来构建功能强大的软件防火墙,下面就其的安装以及一些典型的配置作一下说明。IPFfilter 的作者是 Darren Reed 先生,他是一位致力于开源软件开发的高级程序员,目前工作于 SUN 公司。IP Filter 软件可以提供网络地址转换(NAT)或者防火墙服务。简单的说就是一个软件的防火墙,并且这个软件是开源免费的。当前的版本是4.1.15,目前支持 FreeBSD、NetBSD、Solaris、AIX 等操作系统平台。IPFilter是它是一个在引导时配置的可加载到内核的模块。这使得它十分安全,因为已不能由用户应用程序篡改。我用Solaris10 来作为实验的平台介绍一下IP Filter。IP Filter过滤器会执行一系列步骤。图1说明处理包的步骤,以及过滤如何与 TCP/IP 协议栈集成在一起。

  数据包在Solaris内的处理顺序包括下列步骤:

  1. 网络地址转换 (Network Address Translation, NAT) :将专用 IP 地址转换为不同的公共地址,或者将多个专用地址的别名指定为单个公共地址。当组织具有现有的网络并需要访问 Internet 时,通过 NAT,该组织可解决 IP 地址用尽的问题。

  2. IP 记帐 :可以分别设置输入规则和输出规则,从而记录所通过的字节数。每次与规则匹配时,都会将包的字节计数添加到该规则中,并允许收集层叠统计信息。

  3. 片段高速缓存检查 :如果当前流量中的下一个包是片段,而且允许前一个包通过,则也将允许包片段通过,从而绕过状态表和规则检查。

  4. 包状态检查 :如果规则中包括 keep state,则会自动传递或阻止指定会话中的所有包,具体取决于规则指明了 pass 还是 block。

  5. 防火墙检查 :可以分别设置输入规则和输出规则,确定是否允许包通过 Solaris IP 过滤器传入内核的 TCP/IP 例程或者传出到网络上。

  6. 组:通过分组可以按树的形式编写规则集。

  7. 功能 :功能是指要执行的操作。可能的功能包括 block、pass、literal 和 send ICMP response。

  8. 快速路由 :快速路由指示 Solaris IP 过滤器不将包传入 UNIX IP 栈进行路由,从而导致 TTL 递减。

  9. IP 验证 :已验证的包仅通过防火墙循环一次来防止双重处理。

  二、学会编写IPFfilter 规则

  典型的防火墙设置有两个网卡:一个流入,一个流出。IPFfilter读取流入和流出数据包的报头,将它们与规则集(Ruleset)相比较,将可接受的数据包从一个网卡转发至另一个网卡,对被拒绝的数据包,可以丢弃或按照所定义的方式来处理。 通过向防火墙提供有关对来自某个源地址、到某个目的地或具有特定协议类型的信息包要做些什么的指令,规则控制信息包的过滤。通过使用IPFfilter系统提供的特殊命令建立这些规则,并将其添加到内核空间特定信息包过滤表内的链中。关于添加、去除、编辑规则的命令,一般语法如下:

  action [in|out] option keyword, keyword...

  参数说明:

  1. 每个规则都以操作开头。如果包与规则匹配,则 Solaris IP 过滤器将操作应用于该包。以下列表包括应用于包的常用操作。

  block :阻止包通过过滤器。

  pass :允许包通过过滤器。

  log :记录包但不确定是阻止包还是传递包。使用 ipmon 命令可查看日志。

  count :将包包括在过滤器统计信息中。使用 ipfstat 命令可查看统计信息。

  skip number :使过滤器跳过 number 个过滤规则。

  auth :请求由验证包信息的用户程序执行包验证。该程序会确定是传递包还是阻止包。

  preauth :请求过滤器查看预先验证的列表以确定如何处理包。

  2. 操作后面的下一个单词必须是 in 或 out。您的选择将确定是将包过滤规则应用于传入包还是应用于传出包。

  3. 接下来,可以从选项列表中进行选择。如果使用多个选项,则这些选项必须采用此处显示的顺序。

  log :如果规则是最后一个匹配规则,则记录包。使用 ipmon 命令可查看日志。

  quick :如果存在匹配的包,则执行包含 quick 选项的规则。所有进一步的规则检查都将停止。

  on interface-name :仅当包移入或移出指定接口时才应用规则。

  dup-to interface-name:复制包并将 interface-name 上的副本向外发送到选择指定的 IP 地址。

  to interface-name :将包移动到 interface-name 上的外发队列。

132245