Next Previous Contents

6. IP filtering 的设置(IPFWADM)

首先设定内核的IP Forwarding功能,系统应开始转送每一信息。路径表(routing table)应已设定,因此应该可以通往任何地点,从网内可以联到网外,从网外也可进到网内。 但是防火墙的作用是不让任何人可以随便进出网路。 在示范系统中设定了两套指令(script),对防火墙的forwarding和accounting作了规定。系统在运行/etc/rc.d时取用这两套指令,因此在系统启动时就对系统作了设置。 Linux的内核自设转送一切信息的IP Forwarding系统。因此,防火墙的指令应首先禁止一切进入系统的权利,清除上次运行后留下的任何ipfw规则。下面的指令应能达到这项目的。

  #
  # setup IP packet Accounting and Forwarding
  #
  #   Forwarding
  #
  # By default DENY all services
  ipfwadm -F -p deny
  # Flush all commands
  ipfwadm -F -f
  ipfwadm -I -f
  ipfwadm -O -f
好了,现在有了绝对保险的防火墙。一切都被屏挡在外面,无法穿越防火墙一步。当然,有些功能还是需要的,下面的一些例子可作参考。
  # Forward email to your server ︰转送电子邮件到伺服器
  ipfwadm -F -a accept -b -P tcp -S 0.0.0.0/0 1024:65535 -D 192.1.2.10 25

  # Forward email connections to outside email servers ︰将电子邮件连到网路外的电子邮件伺服器
  ipfwadm -F -a accept -b -P tcp -S 196.1.2.10 25 -D 0.0.0.0/0 1024:65535

  # Forward Web connections to your Web Server︰将Web连到Web伺服器
  /sbin/ipfwadm -F -a accept -b -P tcp -S 0.0.0.0/0 1024:65535 -D 196.1.2.11 80

  # Forward Web connections to outside Web Server︰将Web连到外界Web伺服器
  /sbin/ipfwadm -F -a accept -b -P tcp -S 196.1.2.* 80 -D 0.0.0.0/0 1024:65535 

  # Forward DNS traffic︰转送DNS信息
  /sbin/ipfwadm -F -a accept -b -P udp -S 0.0.0.0/0 53 -D 196.1.2.0/24
如果想知道通过防火墙的信息来往情况,下列指令会统计所有数据包。
                      
  # Flush the current accounting rules
  ipfwadm -A -f
  # Accounting
  /sbin/ipfwadm -A -f
  /sbin/ipfwadm -A out -i -S 196.1.2.0/24 -D 0.0.0.0/0
  /sbin/ipfwadm -A out -i -S 0.0.0.0/0 -D 196.1.2.0/24
  /sbin/ipfwadm -A in -i -S 196.1.2.0/24 -D 0.0.0.0/0
  /sbin/ipfwadm -A in -i -S 0.0.0.0/0 -D 196.1.2.0/24

如果只把电脑设为过滤防火墙,到这里就大功告成了﹗


Next Previous Contents