Squid 简介
Squid是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和WAIS等协议。但它不能处理如POP,NNTP,RealAudio以及其它类型的东西。
squid 代理基本类型 :
-
传统代理 :手动设置服务器的地址和端口,然后才能使用代理服务来访问网络。
-
透明代理
本案环境
主机 | IP地址 | 系统 | 主要软件 |
---|---|---|---|
代理服务器 | 192.168.217.128 | CentOS 7.3 | squid |
web 服务器 | 192.168.217.138 | CentOS 7.3 | httpd |
客户端 | 192.168.217.133 |
部署传统代理
1.安装 squid 代理服务 :
yum install squid -y
2.编辑配置文件 :
vim /etc/squid/squid.conf
cache_effective_user squid #添加 指定程序用户
cache_effective_group squid #添加 指定账号基本组
http_access allow all #添加在 http_access deny all 上面
http_port 3128
cache_mem 64 MB #指定缓存功能所使用的内存空间大小,便于保持访问较频繁的WEB对象,容量最好为4的倍数,单位为MB,建议设为物理内存的1/4
reply_body_max_size 10 MB #允许用户下载的最大文件大小,以字节为单位。默认设置0表示不进行限制
maximum_object_size 4096 KB #允许保存到缓存空间的最大对象大小,以KB为单位,超过大小限制的文件将不被缓存,而是直接转发给用户
3.配置防火墙规则链 :
iptables -F #清空规则链
setenforce 0
iptables -I INPUT -p tcp --dport 3218 -j ACCEPT #允许3128端口
4.客户端访问 web 服务器配置:
5.查看web服务器访问日志验证:
cat /etc/httpd/log/access.log
部署透明代理
透明代理 :客户机不需要指定代理服务器的地址和端口,而是通过路由、防火墙策略将web访问重定向,实际上还是交给代理服务器来处理。
本案环境
主机名 | IP地址 | 系统 | 软件 |
---|---|---|---|
代理服务器 | 内 192.168.217.1 外192.168.200.1 | CentOS 7.3 | squid |
web 服务器 | 192.168.200.12 | CentOS 7.3 | httpd |
客户机 | 192.168.217.133 | win |
1.添加双网卡 :
2.安装 squid 服务 :
yum install squid -y
3.编辑配置文件 :
vim /etc/squid/squid.conf
cache_effective_user squid #添加 指定程序用户
cache_effective_group squid #添加 指定账号基本组
http_access allow all #添加在 http_access deny all 上面
http_port 192.168.217.1:3128 transparent #添加本地IP地址 模式 透明
4.设置防火墙策略 :
iptables -F
iptables -t nat -I PREROUTING -i ens32 -s 192.168.217.0/24 -p tcp --dport 80 -j REDIRECT --to 3128
iptables -t nat -I PREROUTING -i ens32 -s 192.168.217.0/24 -p tcp --dport 443 -j REDIRECT --to 3128
#把80、443端口重定向到3128端口
iptables -I INPUT -p tcp --dport 3218 -j ACCEPT
5.访问 web 服务器验证(客户机不需要配置代理服务器地址和端口) :
cat /etc/httpd/log/access.log #查看访问日志
原文地址:http://blog.51cto.com/13640803/2154667
时间: 2024-11-06 09:29:31