linux下安装Squid代理的详细配置教程

服务器 发布日期:2024/11/5 浏览次数:1

正在浏览:linux下安装Squid代理的详细配置教程
1.如果系统中还没有装squid,按以下顺序输入命令后即可完成安装
# wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE18.tar.gz //下载Squid代理安装包
# tar -zxvf squid-3.0.STABLE18.tar.gz //解压Squid安装包
# cd squid-3.0.STABLE18
# ./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc --bindir=/usr/local/squid/bin --sbindir=/usr/local/squid/sbin --mandir=/usr/local/squid/share/man --enable-gnuregex --enable-carp --enable-async-io=80 --enable-removal-policies=heap,lru --enable-icmp --enable-delay-pools --enable-useragent-log --enable-referer-log --enable-kill-parent-hack --enable-snmp --enable-arp-acl --enable-htcp --enable-cache-digests --enable-default-err-language=Simplify_Chinese --enable-err-languages="Simplify_Chinese" --enable-poll --enable-linux-netfilter --disable-ident-lookups --enable-underscores --enable-auth="basic" --enable-basic-auth-helpers="NCSA" --enable-external-acl-helpers="ip_user" --enable-x-accelerator-vary //配置Squid代理安装路径之类的
# make //编译
# make install //安装Squid代理软件

----------------------------------

2.安装好后配置文件在/usr/local/squid/etc目录中,删除原有的squid.conf配置文件,新建squid.conf文件,只输入以下内容:
http_port 80 transparent
http_access allow all

注意,以上是squid2.6及以后版本的配置,如果是2.6以前版本的squid,配置如下:
http_port 80
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

----------------------------------

3./usr/local/squid/sbin目录下的squid为运行文件。
第一次运行时,先运行squid -z创建缓存文件夹。缓存文件夹在/usr/local/squid/var下创建,因此创建缓存前还需运行chmod 777 /usr/local/squid/var给该文件夹权限。
再运行squid -d 1开启squid即可。
如果要关闭squid,运行squid -k shutdown则是安全关闭。
注意,如果没有将新装的squid配置成环境变量的话,尽量在sbin目录下运行./squid,以免运行了服务器上已有的旧squid。

----------------------------------

4.设置一个DNS服务器,将所有域名解析指向到需要被代理的服务器的IP,例如使用Bind,WinMyDns软件。将squid所在服务器的DNS设置成该DNS服务器。

5.将被代理的服务器所有域名解析到squid所在服务器,这时该服务器即可作为中转。

----------------------------------

可能的问题:
Squid有时候运行时会有报错:
clientNatLookup: NF getsockopt(SO_ORIGINAL_DST) failed: (92) Protocol not available
不过似乎不影响访问