您的位置:首页 > 运维架构 > 反向代理

CentOS安装squid代理服务器

2014-09-20 13:30 337 查看
Squid是一个Linux系统下优秀的代理服务器软件。Squid可以配置普通上网代理(正向代理)、反向代理、透明代理。系统是CentOS6.2。Squid主机IP为192.168.1.100。

安装squid:

yum install squid


安装的版本是squid-3.1.10-1.el6_2.3.i686。

一、正向代理

1、先备份配置文件

cp /etc/squid/squid.conf /etc/squid/squid.conf.bak


2、编辑配置文件

vim /etc/squid/squid.conf


修改:

http_access deny all


为:

http_access allow all


允许所有用户使用代理。

修改:

http_port 3128


为:

http_port 192.168.1.100:3128


设置squid代理IP和端口。

3、检查配置参数是否有错

squid -k parse


初始化缓存:

squid -z


启动服务:

service squid start


查看端口是否打开:

netstat -ntpl


4、在windows上设置代理

打开IE -> 工具 -> Internet选项 -> 连接 -> 局域网设置。勾选代理服务器下面的方格。设置地址为squid代理服务器IP,端口为3128。

二、反向代理

这里假设反代一台主机名为www.aaa.com的主机。

1)恢复为squid默认配置文件,然后再修改:



cp squid.conf.bak squid.confvim /etc/squid/squid.conf


添加:

http_port 80 accel vhost vport

cache_peer www.aaa.com parent 80 0 no-query no-digest originserver


说明:

http_port 80 accel vhost vport

squid反代的端口为80

accel:加速模式

vhost:加速模式使用虚拟域的主机头支持

vport:虚拟主机端口支持

cache_peer www.aaa.com parent 80 0 no-query no-digest originserver

定义反代站点语句格式为:cache_peer hostname type http-port icp-port [options]

hostname:定义要反代的主机

type:可以定义parent(父节点)、sibling(兄弟节点)、multicast(组播)

http-port:指向用于接受http请求的端口

options项这里有3个:

no-query 禁止ICP查询到这个邻居

no-digest 禁用缓存请求

originserver 说明父节点是一台实际服务器

squid版本很多,语句规则也有所不同,具体说明可参考:http://www.squid-cache.org/Versions/v3/3.1/cfgman/

还要修改:

http_access deny all


为:

http_access allow all


2)使配置文件生效:

squid -k reconfigure


squid作为反向代理服务器,主要作用是降低原始web服务器的负载。一般代理服务器都配置缓存用于加速。还要设置好被代理主机的DNS。

三、透明代理

透明代理就是用户在使用squid时不更改浏览器的代理设置,squid主机一般需要两块网卡,一块网卡连内网,一块网卡可以访问外网,内网机器设好网关为squid主机内网网卡的IP就能访问外网了。需要设置iptables的nat转发。

四、设置缓存

/var/spool/squid/为squid的默认缓存文件放置目录。

cache_mem 128 MB

cache_swap_low 90

cache_swap_high 95

cache_dir ufs /tmp/squid 100 16 256


创建缓存目录:

mkdir /tmp/squid

chown squid:squid /tmp/squid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: