共计 1753 个字符,预计需要花费 5 分钟才能阅读完成。
实验需求:搭建 squid 代理服务器,使内网主机 192.168.100.1 能够访问公网 web 服务器 1.1.1.1
192.168.100.254/24
eth0(内网接口)
内网客户端主机 192.168.100.1————-squid 代理服务器 ————– 公网 web 服务器 1.1.1.1
eth1(公网接口)
1.1.1.254/8
一. 搭建 squid 代理服务器
1. 安装提供代理服务的软件包
# yum -y install squid
2. 修改主配置文件
# vim /etc/squid/squid.conf
……
59 #http_access deny all
60 http_access allow all // 允许所有用户使用
……
66 cache_mem 8 MB
67 minimum_object_size 0 KB // 小于多少 KB 数据不要缓存,0 为不限制
68 maximum_object_size 4096 KB // 大于 4MB 数据不要缓存
69 cache_swap_low 90
70 cache_swap_high 95 // 磁盘使用量超过 95% 开始删除旧缓存,直到 90% 为止
71 # Uncomment and adjust the following to add a disk cache directory.
72 cache_dir ufs /var/spool/squid 100 16 256
……
3. 启动服务
# service squid start
# chkconfig squid on
4. 启动公网服务器 1.1.1.1web 服务,并制作测试网页
5. 配置客户端并测试 I
在浏览器里指定代理服务器的 ip 地址 (192.168.100.254) 和端口号(3128)
客户端访问公网网址服务器
http://1.1.1.1/ 网页文件名,若能访问则测试成功
二. 将上述实验修改为透明代理(必须在客户端的网关主机上搭建)
(客户端不用在浏览器里指定代理服务器的 ip 地址和端口号,就可以直接访问公网上的网站服务器)
1. 修改 squid 服务的代理方式为透明代理
vim /etc/squid/squid.conf
63 http_port 3128 transparent
service squid restart
2. 在代理服务器上配置防火墙规则,把本机接收到的访问目标端口是 80 和 443 的请求转给本机的 3128 端口。
# iptables -t nat -A PREROUTING -s 192.168.100.0/24 -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 3128
# iptables -t nat -A PREROUTING -s 192.168.100.0/24 -i eth0 -p tcp –dport 443 -j REDIRECT –to-port 312
# service iptables save
3. 客户端添加网关并测试
# route add default gw 192.168.100.254
客户端取消浏览器的代理设置
直接反问 http://1.1.1.1/ 网页文件名,若能访问则测试成功
Squid 的详细介绍:请点这里
Squid 的下载地址:请点这里
配置 Squid 代理 http 和 rsync http://www.linuxidc.com/Linux/2013-05/84642.htm
Squid:实现高速的 Web 访问 http://www.linuxidc.com/Linux/2013-04/83512.htm
CentOS 6.2 编译安装 Squid 配置反向代理服务器 http://www.linuxidc.com/Linux/2012-11/74529.htm
简单配置 Squid 代理和反向代理 http://www.linuxidc.com/Linux/2014-04/99465.htm
CentOS 6.4 下 DNS+Squid+Nginx+MySQL 搭建高可用 Web 服务器 http://www.linuxidc.com/Linux/2014-04/99984.htm