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

squid代理服务配置

2014-10-08 18:05 393 查看
利用squid搭建代理服务器squid代理服务实现内网通过代理服务器访问外网以及外网主机通过代理服务访问内网服务器的功能,提供代理服务的软件有很多,典型的有squid、nginx、varnish等,本文使用squid实现代理服务。squid代理服务的有点:(1)提供缓存,增加了访问速度(2)提供用私网IP访问公网地址的解决方案(3)提高了网络的安全性(4)方便对用户管理squid代理服务类别:(1)普通代理,用于内网访问公网,需手动设置代理服务器地址以及端口(2)透明代理,用于内网访问公网,不需手动设置代理(3)反向代理,用于发布内网服务器供公网地址访问部署squid代理:
拓扑结构:
代理服务器需准备两块网卡,eth0连接内网,IP地址为192.168.1.253,eth1连接外网,IP地址为1.1.1.1,外网服务器IP地址为1.1.1.253,内网服务器地址为192.168.1.1
1、普通代理(1)代理服务器安装squid服务

(2)修改squid配置文件、启动代理服务并设置,开机自启动[root@proxy ~]#vim /etc/squid/squid.conf //squid主配置文件
http_port 3128 //squid服务默认监听端口
cache_mem 8 MB //默认缓存大小,缓存只能缓存静态页面,不能缓存动态页面
cache_dir ufs /var/spool/squid 100 16 256 //squid缓存存储目录
数值解释:
100 缓存目录大小
16 一级子目录数
256 一级子目录下的目录数
maximum_object_size 4096 KB 超过该值的数据不保存到缓存中
reply_body_max_size 10240000 访问目标最大量,超过则不允许访问
#visible_hostname 指定代理服务器的主机名,不设置的情况下使用环回接口对应的主机名 ,做代理服务器的主机名(该选项为可选项)
http_access deny all 默认拒绝所有代理,将deny改为allow表示允许所有,此处需改为allow
上述设置完成后启动squid代理并设置开机自启


(3)设置客户端本文客户端使用另一台linux服务器模拟,使用firefox浏览器为例,其他浏览器设置代理的方法请百度。






(4)测试 外网服务器上搭建网站服务,写一个测试主页放在网站根目录下,用于测试。
内网服务器在浏览器里访问外网服务器IP地址,能看到网页说明代理工作正常


2、透明代理(1)修改squid配置文件启用透明代理,重启squid服务vim/etc/squid/squid.conf
http_port 3128 transparent //只修改这一条即可
(2)启用防火墙,编写防火墙规则,将80端口的访问请求转到3128代理端口

[root@proxy ~]#iptables -t nat -A PREROUTING -i eth0 -s 192.168.1.0/24 -p tcp --dport 80 -jREDIRECT --to-ports 3128//添加防火墙规则


(3)修改客户端配置

(4)测试同普通代理
3、反向代理(1) 反向代理多台主机:
当有多台主机需要向外网发布时,可以将squid主机设置修改如下:http_port 80 vhost //设置squid主机监听80端口cache_peer 192.168.1.1 parent 80 0originserver //添加一台内网主机重启squid服务即可,访问时访问squid代理服务的外网地址(2) 反向代理虚拟主机:
修改squid主机配置文件如下:vim /etc/squid/squid.confhttp_port 80 vhostcache_peer 192.168.8.3 parent 80 0originserver name=wwwcache_peer 192.168.8.3 parent 80 0originserver name=bbscache_peer_domain www www.zhy.comcache_peer_domain bbs bbs.zhy.com(3)测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息