SQUID proxy server (1)

“ 1 ” 
概述:
当客户机通过代理来请求WEB页面时,指定的代理服务器会先检查自己的缓存,
如果缓存中已经有客户机需要的页面,则直接将缓存中的页面内容反馈给客户机,
如果缓存中没有客户机要访问的页面,则由代理服务器向INTERNET发送访问请求,
当获得访问的web页面以后,将网页数据保存到缓存中并发送到客户机。

“ 2 ”
代理类型:
传统代理:也就是普通的代理服务,首先必须在客户机的浏览器,QQ聊天
工具,下载软件程序中手动设置代理服务器的地址和端口,然后才能使用
代理来访问网络。对于网页浏览器,访问网站时的域名解析请求也会发给
指定的代理服务器。
透明代理:提供与传统代理相同的功能与服务,其区别在于客户机不需要
指定代理服务器的地址和端口,而是通过默认路由,防火墙策略将WEB访
问重定向,实际仍然交给代理服务器来处理。重定向的过程对客户机来说
是透明的,用户甚至不知道自己在使用代理服务器,所以称为 “ 透明代理 ”。
使用透明代理时,网页浏览器访问网站时的域名解析请求将优先发给DNS
服务器。

“ 3 ”

编译安装squid
配置SQUID的编译选项时,将安装目录设为/usr/local/squid,其他具体选项
根据实际情况来定,配置前可参考“ ./configure --help ” 给出说明。

tar zxf squid-3.4.6.tar.gz -C /usr/src
cd squid-3.4.6
(编译项解释)./configure
--prefix=/usr/local/squid    //安装目录
--sysconfdir=/etc  //单独将配置文件修改到其他目录
--enable-arp-acl  //可以在规划中设置直接通过客户端MAC进行管理,防止客户端使用IP欺骗
--enable-linux-netfilter  //使用内核过滤
--enable-linux-tproxy  //支持透明模式
--enable-async-io=值  //异步I/O,提升存储性能,相当于--enable-pthreads  --enable-storeio=ufs,aufs --with  //-pthreads --with-aufs-thread=值
--enable-err-language="Simplify_Chinese"  //错误信息的显示语言
--enable-underscore  //允许URL中有下划线
--enable-poll  //使用Poll()模式,提升性能
--enable-gnuregex  //使用GNU正则表达式

安装完成后,创建链接文件,用户和组。
ln -s /usr/local/squid/sbin/ *(星表示所有)  /usr/local/sbin
useradd  -M -s  /sbin/nologin  squid
chown  -R  squid:squid  /usr/local/squid/var/

SQUID配置文件:
squid服务的配置文件位于、etc/squid.conf,更详细的配置项请参考/etc/squid.conf.documented文件。

http_port  3128  //用来指定代理服务器监听的地址和端口(默认的端口为3128)
cache_effective_user  squid  //这一项指定SQUID的程序用户,用来设置初始化,运行时缓存的账号,否则启动不成功(手动添加)!
cache_effective_group  squid  //默认为cache_effective_user指定账号的基本组(手动添加)

SQUID运行控制:
检查配置文件语法是否正确: 
squid  -k  parse
启动,停止SQUID: 
squid -z  //-z选项用来初始化缓存目录
squid   //启动SQUID服务
确认SQUID服务处于正常监听状态:
netstat  -anpt  |  grep  "squid"

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325174679&siteId=291194637