LINUX学习笔记--代理服务器设置篇

发表于:2007-07-01来源:作者:点击数: 标签:
一、代理 服务器 简介 代理服务器能够让多台没有IP地址的电脑使用其代理功能高速、 安全 地访问互联网资源。当代理服务器客户端发出一个对外的资源访问请求,该请求先被代理服务器识别并由代理服务器代为向外请求资源。由于一般代理服务器拥有较大的带宽,较
一、代理服务器简介

   代理服务器能够让多台没有IP地址的电脑使用其代理功能高速、安全地访问互联网资源。当代理服务器客户端发出一个对外的资源访问请求,该请求先被代理服务器识别并由代理服务器代为向外请求资源。由于一般代理服务器拥有较大的带宽,较高的性能,并且能够智能地缓存已浏览或未浏览的网站内容,因此,在一定情况下,客户端通过代理服务器能更快速地访问网络资源。代理服务器应用的常见例子:拥有上百台电脑的局域网通过一台能够访问外部网络资源的代理服务器而也能访问外部互联网。

二、SQUID软件简介

   能够让普通电脑成为代理服务器的软件就称为代理服务器软件,著名的有微软的MS PROXY2.0(现在已经更名为ISA.NET了),WINGATE,SYGATE, NETSCAPE的PROXY SERVER,以及我们要介绍的LINUX下免费的SQUID。

   SQUID是Linux环境下最为流行的代理服务器软件,它功能强大:支持对HTTP,FTP,GOPHER,SSL和WAIS等协议的代理;设置简单:只要改动配置文件中的一项就可使得代理服务器运转起来。

三、SQUID代理服务器的设置

   设置目标:配置一台RedHat Linux7.0的电脑成为所有网段的代理服务器。说明:考虑到是初次接触SQUID软件,出于方便,下面的安装过程都是以root身份进行的。

第一步:下载、编译和安装SQUID软件

   从www.squid-cache.org下载SQUID软件,这里以稳定的squid-2.4.STABLE1-src.tar.gz为例。运行“tar zxf squid-2.4.STABLE1-src.tar.gz”,产生“squid-2.4.STABLE1”目录。由于SQUID的运行需要nobody用户和nobody组,所以你先运行Linuxconf命令查看是否有这个用户和组;没有的话,建立。进入“squid-2.4.STABLE1”目录,运行“./configure --prefix=/usr/local/squid”;完成后,再运行“make all”;完成后,接着运行“make install”安装软件。至此,squid已经成功安装到/usr/local/squid目录下了。

第二步:配置SQUID软件

   1、“chmod 777 /usr/local/squid/logs”,设置logs为可写。这样,不特定的SQUID代理客户才能正常访问代理服务器,才能在logs目录才产生aclearcase/" target="_blank" >ccess.log、cache.log等文件。

   2、“/usr/local/squid/bin/squid -z”,手工建立squid的缓存目录/usr/local/squid/cache。

   3、修改SQUID的配置文件squid.conf。SQUID的配置文件共有125个配置项,但是对于一般的web cache proxy server来说,只要修改几个配置项即可。编辑/usr/local/squid/etc/squid.conf文件,找到“http_access deny all”并改为“http_access allow all”令所有的电脑都能透过代理服务访问互联网资源。其实只要该一项,SQUID服务就可以启动了。

   4、“/usr/local/bin/RunCache”,启动squid代理服务。

   如果没有1和2,运行RunCache脚本后,查看/usr/local/squid/cache/cache.log文件,可以看到相关的错误信息。

第三步、设置客户端,测试代理服务

   在另一台win98的电脑上,(以Inte.net Explore5.0为例)运行IE,单击“工具”,接着单击“Internet选项”,再单击“连接”选项卡,单击“局域网设置”;在“局域网设置”窗口中,在“地址”处填上SQUID服务器的IP地址,在“端口”处填上“3218”(SQUID软件默认代理用端口号),确定后退出。接下来,通过浏览一些网站,也可以查看logs下的access.log和cache.log,看看是否代理运行正常。

四、其它

   1、cache_mem:设置代理服务使用的内存大小,一般推荐为物理内存的三分之一。

   2、cache_dir:指定cache目录的路径,默认为/usr/local/squid/cache。

   3、http_port:代理服务使用的端口号,默认为3128,你可以使用其他的端口,不过注意两点:一、使用端口不能和其他的服务重复;二、使用1024以下的端口,SQUID必须以root身份运行。

   4、/usr/local/libexec下有个脚本cachemgr.cgi,把它拷贝到你的Web的cgi-bin目录下(Apache安装后默认的web根是/var/www),通过浏览器运行,可以进入web方式的一些管理。

五、结语

   要想完全发挥SQUID的功能,仅仅了解以上那些是远远不够的;你应该常常去SQUID的老家www.squid-cache.org看看,才能更上层楼。

原文转自:http://www.ltesting.net