squid的安装及安装前准备共五个步骤: 1、检查内核特性 2、添加squid用户 3、对系统硬件参数进行优化 4、rpm包的安装 5、源代码包的安装 一、squid安装 1、首先确定你的内核已经配置了以下特性: [*] Network firewalls [ ] Socket Filtering [*] Unix domain sockets [*] TCP/IP networking [ ] IP: multicasting [ ] IP: advanced router [ ] IP: kernel level autoconfiguration [*] IP: firewalling [ ] IP: firewall packet netlink device [*] IP: always defragment (required for masquerading) [*] IP: transparent proxy support 如果没有,请你重新编译内核。一般在RedHat6.x以上,系统已经缺省配置了这些特性 2、添加suqid用户和用户组 #groupadd squid #useradd squid 3、对CPU进行优化 #export CFLAGES='-O2 -mcpu=pentium4 -march=pentium4 -mmmx -msse -msse2' 可以根据你的CPU选择相应的参数 GCC-3.1以上可針對CPU最佳化: Pentium2: -O2 -mcpu=i686 -march=i686 -mmmx Pentium3: -O2 -mcpu=pentium3 -march=pentium3 -mmmx -msse Pentium4: -O2 -mcpu=pentium4 -march=pentium4 -mmmx -msse -msse2 4、rpm包的安装 1.进入/mnt/cdrom/RedHat/RPMS 2.执行rpm -ivh squid-2.2.STABLE4-8.i386.rpm。 5、源代码包的安装 1.从http://www.squid-cache.org下载squid-2.3.STABLE2-src.tar.gz。 2.将该文件拷贝到/usr/local目录。 3.解开该文件 tar xvzf squid-2.3.STABLE2-src.tar.gz。 4.解开后,在/usr/local生成一个新的目录squid-2.3.STABLE2,为了方便用mv命令将 该目录重命名为squid mv squid-2.3.STABLE2 squid; 5.进入squid cd squid 6.执行./configure 可以用./confgure --prefix=/directory/you/want指定安装目录 如: #./configure --prefix=/usr/local/squid --enable-delay-pools --enable-snmp --enable-cache-digests --enable-auth-modules=”NCSA” 可以通过./configure --help来查看其他的参数,以及各个参数的英文解释。 --prefix=/usr/local/squid :指定安装路径 为便于管理,可用--sysconfdir=/etc把这个文件位置配置为/etc --enable-arp-acl #这样可以在规则设置中直接通过客户端的MAC地址进行管理,防止客户使用IP欺骗 --enable-async-io=80 :这个主要是设置async模式来运行squid,我的理解是设置用线程来运行squid,如果服 务器配置很不错,有1G以上内存,cpu使用SMP的方式的话可以考虑设成160或者更高。如果服务器比较糟糕就根 据实际情况设了。另外此项还另cache文件支持aufs --enable-auth-modules 此编译选项启用认证模块,可以对访问代理用户进行授权。 --enable-cache-digests 使能缓存摘要,本来此项目的是为了在Squid集群服务之间迅速发现缓存对象,这里 在本地使用,可以加快请求时,检索缓存内容的速度。 --enable-err-language="Simplify_Chinese" 和 --enable-default-err-languages="Simplify_Chinese" :指定出错是显示的错误页面为简体中文 --enable-delay-pools 此选项使能一个延时池,这样能对某些特定的请求限制额定带宽。 --enable-gnuregex :由于Squid大量使用字符串处理做各种判断,加入此项能更好的处理。 --enable-icmp :加入icmp支持 --disable-ident-lookups :防止系统使用RFC931规定的身份识别方法。 --enable-kill-parent-hack :关掉suqid的时候,要不要连同父进程一起关掉,这个当然要啦 --enable-linux-netfilter #允许使用Linux的透明代理功能。 --enable-poll :应启用Poll()函数而不是select()函数,通常而言poll(轮询)比select要好,但configure(脚 本程序)已知Poll在某些平台下失效, 若你认为你比configure编译配置脚本程序要聪明的话,可以用这个选项 启用Poll。总之就是用这个可以提升性能就是啦。 --enable-snmp :此选项可以让MRTG使用SNMP协议对服务器的流量状态进行监测,因此必须选择此项,使Squid 支持SNMP接口。 --enable-storeio=ufs,null #使用的文件系统通常是默认的ufs,不过如果想要做一个不缓存任何文件的代理 服务器,就需要加上null文件系统。 --enable-underscore :允许解析的URL中出现下划先,因为默认squid会认为带下划线的URL地址是非法的,并 拒绝访问该地址。 系统缺省安装目录为/usr/local/squid。 7.执行 make all 8.执行 make install 9.安装结束后,squid的可执行文件在安装目录的bin子目录下,配置文件在etc子目录下。 |