教你构建高性能的Linux双效防火墙

文章作者 100test 发表时间 2007:10:19 12:18:14
来源 100Test.Com百考试题网


  系统功能说明

  包过滤和WEB代理双效合一。由iptables 实现包的过滤,由Linux下大名鼎鼎的squid结合NAT来实现透明WEB代理。SQUID代理的性能本身已经是代理服务器中的佼佼者,本系统将其性能发挥的极至:通过ramdisk技术,让SQUID把网页cahce到内存中,这样,你所访问的网页,除了第一次需要到网络上取,以后都将来自内存!下面介绍如何用Redhat来实现的方法和步骤。

  (1)选择一台比较稳定的计算机,装上两块网卡,256MB或512MB内存,硬盘10GB(注意:第一块网卡接内网,第二块网卡接外网)。

  (2)安装RedHat,安装时选择服务器模式,自动分区。

  (3)大概在10-15分中后系统安装完毕,重启后进入系统,开始配置系统。

  1、开启包转发

  编辑/etc/sysctl.conf,将net.ipv4.ip_forward=0 该为net.ipv4.ip_forward=1,保存修改。其目的是允许Linux内核做IP包的转发:允许IP数据包从一个网络接口穿越到另一个网络接口,只有这样,系统才具有充当包过滤防火墙的条件。

  2、激活RamDisk

  修改/etc/grub.conf:

  

#boot=/dev/sda

default=0

timeout=10

splashimage=(hd0,0)/grub/splash.xpm.gz

title RedHat Linux (2.4.7-10)

        root (hd0,0)

        kernel /vmlinuz-2.4.7-10 ro root=/dev/sda6   ramdisk=268435

        initrd /initrd-2.4.7-10.img<

  其中ramdisk=268435 是我们要添加的内容,目的是告诉系统默认的 ramdisk的大小是268435KB,也就是256MB.注意千万不可以直接写256MB,这样系统是不认识的,必须要换成KB才行!(摸索了好几个月的心得!),这样设好,重新启动后就系统就回自动生成一个256MB的虚拟盘了。当然,你要根据自己的内存大小来设置这个参数,如果不运行XWINDOWS,设你总内存的一半都没问题,因为Linux系统本身并不需要很多内存的。

  3、设置squid参数

  编辑/etc/squid/squid.conf,在末尾加入以下条目:

  

httpd_accel_host virtual

httpd_accel_port 80

httpd_accel_with_proxy on

httpd_accel_uses_host_header on

http_access allow all

cache_dir ufs /squid 256 16 256<

  前面四条参数使squid提供透明代理提供基础。“http_access allow all”表示允许所有的客户机器都可以访问代理;这里特别强调的是最后一条 “cache_dir ufs /squid 256 16 256”,squid默认的cache_dir是“/var/spool/squid”,我们因为要让squid将内容cache到内存中,所以这里先改成/squid,接下来要将ramdisk影射到/squid目录中。



相关文章


Linux操作系统对虚拟内存的限制
让Linux操作系统支持FAT格式的磁盘分区
Linux操作系统下配置D 服务器的方法介绍
LinuxRPM的五种基本操作
教你构建高性能的Linux双效防火墙
关于Vista和Ubuntu双系统的引导方法介绍
新手学堂:Linux操作系统中安装网卡驱动
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛