4、建立ramdisk
用下面的两条命令来完成:
(1)mkdir /squid 建立目录“/squid”。
(2)mkfs /dev/ramdisk 创建文件系统。
(3)mount /dev/ramdisk /squid 将ramdisk 挂载到/squid目录。
由于ramdisk在每次重启后会消失,因此,为了让系统启动时自动建立好,我们可以建立一个自动装载ramdisk的批命令:
mkfs /dev/ramdisk mount /dev/ramdisk /squid< |
将这两条命令写到一个文件中,我们暂且用myautoexec.bat作为文件名,为了方便起见,我们建立/admin目录,然后将myautoexec.bat文件保存在/admin下,并加给可执行的权限:chmod +x myautoexec.bat.但这样系统启动时并不会被调用,所以我们还要做一件事:编辑/etc/rc.local 文件,在文件末尾插入一行:/admin/myautoexec.bat,这样,系统就会自动调用myautoexec.bat了。
5、初始化squid
还记得“cache_dir ufs /squid 256 16 256”这个参数吗?初始化过程实际上就是squid在指定的cache_dir中建立指定的一级目录(这里是16),然后在每个一级目录中建立256个二级目录。使用的命令是:“squid –z ”。但现在这时输入命令系统会报告出错,因为/squid现在的属主是root, squid 没有权限操作root的文件,所以还要先把/squid目录指派给squid用户,用“chown squid.squid /squid”。再一次运行“squid –z ”,不到一秒钟时间就可完成。如果这个过程是在磁盘上而不是在ramdisk上,一般要工作几十秒钟。
同样,这步的设置也要把:
chown squid.squid /squid squid –z< |
两条命令写到myautoexec.bat中,最后加上一条“squid”,就是启动squid服务进程。到这里,squid的设置全部完成。
6、设置NAT和防火墙规则
为了方便起见,建立文件/admin/myfirwall,将规则都写到文件中:
#------初始化部分 iptables -F iptables -t nat -F modprobe ip_tables modprobe iptable_nat modprobe iptable_filter modprobe ip_conntrack_ftp modprobe ip_nat_ftp modprobe ipt_state #——初始化结束 #-START NAT<<<<<让地址为10.27.0.0/16的内部计算机可以伪装上因特网。 iptables -t nat -A POSTROUTING -o eth1 -s 10.3.37.0/24 -j MASQUERADE #>>>>>end NAT #端口转换,将所有发到外网的请求端口为80的都转到3128去,让squid来处理,这一 #--条是透明代理的关键<<<<<< iptables -t nat -A PREROUTING -i eth0 -d ! 10.27.0.0/16 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128 #>>>>>>>end 端口转换 #防火墙规则<<<<<<< 这里要根据你的要求来定了 iptables -A INPUT -i eth1 -s 0.0.0.0/0 -p ICMP -j DROP iptables –A INPUT –i eth1 –s 0.0.0.0/0 –p TCP –port ! 80 –j DROP< |
以上两条分别是将所有从外网进来的ping包都统统丢弃,将所有由外网发起的非80端口的请求都统统丢弃,意思就是只不允许从外网向内网发ping ,只允许外网访问内网的HTTP服务。完整的防火墙规则要根据你的网络安全要求来制定,这里只做参考。
说明:所有以#开头的行表示说明,不用写入文件,保存为/admin/myfirewall,并用“chmod +x /admin/myfirewall”使其可以执行。编辑/admin/myautoexec.bat,加入“/admin/myfirewall”在最后一行。到此为止,我们的好性能防火墙全部配置完成,运行reboot 重启后,可以工作了。
![]() |

