- 传统代理
- 透明代理
- 反向代理
Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid主要设计用于在Unix一类系统运行。
squid分为三种
1.传统代理
即普通的代理服务,一般以提供HTTP、FTP代理为主,需要客户端在浏览器中指定代理服务器的地址和端口号.
2.透明代理
透明代理提供与传统代理相同的功能和服务,其“透明”之处在于:客户端不需要在浏览器中指定代理服务器的地址和端口号,代理服务对客户端来说是“透明”的,用户甚至不知道自己已经在使用代理服务了.
2.反向代理
反向代理也同样提供缓存加速,只不过服务的对象翻转过来了.传统代理和透明代理大多是为局域网用户访问Internet中的Web站点提供缓存代理,而反向代理恰恰相反,主要是为Internet中用户访问企业局域网内的Web站点提供缓存加速.
配置文件参数简介
http_port 3128
主要用于指定代理服务监听的地址和端口(默认端口号为3128).如果只希望在某一个网络接口上提供服务.
cachemem 64MB
设置用于缓存功能的内存空间大小,可以使用MB做单位,主要用于保持访问较频繁的Web对象,一般设置大小为物理内存的30%~40%
maximum_object_size 4096KB
允许保存到高速缓存的最大文件大小,可以使用KB做单位.超过指定容量的文件将不会被缓存
reply_body_max_size 10240000 allow all
允许用户下载的最大文件大小,默认单位为字节(Byte).其中all为默认的访问控制列表名,针对任意地址的代理用户.
chche_dir ufs /var/spool/squid 100 16 256
设置缓存数据时使用的目录参数,其中nfs是squid是最早的缓存文件格式,也是squid内建的存储格式类型
/var/spool/squid是缓存数据文件的格式
后边三个数字依次表示该缓存目录可以使用的磁盘空间大小(MB)、一级子目录个数、二级子目录个数.如果代理用户数量较多,可以适当增大缓存目录的大小.
access_log /var/log/squid/access.log squid
指定日志文件的保存位置和记录格式,该日志文件用于记录有哪些客户端通过代理访问过哪些Web对象等信息
visible_hostname squid
设置代理服务器的可用的完整主机名,可以使用hostname命令获取
dns_testnames www.google.com www.sina.com.cn www.163.com
为了确保能够正常提供Web代理服务,squid服务在启动时,可以通过该项设置测试DNS解析工作是否正常.
一、传统代理
安装squid软件
# yum install squid --nogpgcheck
修改配置文件
# vi /etc/squid/squid.conf ... http_port 3128 visible_hostname squid http_access allow all
检查配置文件并启动squid服务
# squid -k parse # service squid start Starting squid: .[ OK ]
设定客户端浏览器设置
“设置” --> “Internet选项” --> “连接” --> “局域网设置”
此时打开www.google.com网页可以看到squid日志相关实时信息
# tail -f /var/log/squid/access.log 1380175134.461 233 172.20.48.9 TCP_MISS/204 363 GET http://www.google.com.hk/gen_204? - DIRECT/74.125.128.199 text/html
二、透明代理
自squid2.6以后添加透明代理只需要在http_port配置行后边加上一个名为“transparent”选项即可
# vi /etc/squid/squid.conf http_port 3128 修改为 http_port 3128 transparent http_access allow all 修改为 acl clientip1 src 172.20.48.15 http_access allow clientip1
重新加载squid配置文件
# service squid reload
开启路由转发功能
# echo "1" > /proc/sys/net/ipv4/ip_forward
设置iptables的重定向策略
# iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
利用REDIRECT重定向数据包处理策略,可以在防火墙主机内部转发数据包.
将客户端代理去掉,再次打开www.google.com网页可以看到squid日志相关实时信息
# tail -f /var/log/squid/access.log ... 1380175134.461 233 172.20.48.15 TCP_MISS/204 363 GET http://www.google.com.hk/gen_204? - DIRECT/74.125.128.199 text/html
必须将客户端的网关设置为此squid服务器的IP地址
三、反向代理
添加反向代理支持
# vi /etc/squid/squid.conf http_port 123.127.26.244:80 vhos
指定Web服务器主机位置
cache_peer格式
cache_peer Web服务器IP地址 服务器类型 http端口 icp端口 [可选项]
# vi /etc/squid/squid.conf cache_peer 172.20.10.11 parent 80 0 originserver cache_peer 172.20.10.12 parent 80 0 originserver
重启squid服务
# service squid restart
相关推荐
Squid代理服务器是一款广泛应用的开源HTTP代理缓存软件,其主要作用是提高网络访问速度,减少网络带宽消耗,并且能够实现访问控制和内容过滤等功能。在企业网络环境中,Squid通常作为网络访问的中介,帮助客户端处理...
### Squid 代理服务器启动时常见错误解析及解决方法 #### 概述 Squid 是一款广泛使用的开源代理缓存服务器,它能够为局域网内的用户提供更快的Web访问速度,并通过缓存机制减轻对外部网络的带宽压力。在安装与配置...
总结起来,Squid代理服务器是Linux环境下的一款高效、安全的代理解决方案,它通过缓存机制、多协议支持和严格的访问控制,极大地提升了内部网络用户的浏览体验,同时保证了网络的安全性。正确配置和使用Squid,可以...
编辑Squid配置文件`/etc/squid/squid.conf`,添加透明代理设置。确保开启`transparent_proxy`选项,并配置监听端口和网关: ```conf http_port 3128 transparent acl localnet src 0.0.0.0/0 # 用你的网络范围替换 ...
2. 配置 Squid:编辑 `squid.conf` 文件,开启正向代理功能,设置监听端口(如 3128),并定义允许访问的IP范围。 3. 访问控制:为了安全,可以设置访问控制列表(ACL)以限制只有特定的客户端可以使用此代理。 4. ...
网络管理与维护 实验报告(九):squid代理服务器.doc
在 squid.conf 文件中,可以对 Squid 的访问控制策略进行配置,例如,设置访问控制列表、访问控制规则、缓存刷新策略等,以保证代理服务器的合法使用。 搭建 Linux 下的 Squid 代理服务器需要对 Squid 软件的安装、...
7. 验证Squid工作状态:使用`netstat -anp | grep squid`检查Squid是否在监听正确的端口,或者通过访问Web浏览器测试代理设置。 使用Squid代理服务器,可以实现IP地址资源的高效利用,特别是对于那些IP地址紧张的...
本文将详细讲解如何使用Squid进行反向代理配置,通过提供的文件名,我们可以看到有四种不同的配置场景:单站点代理、多站点代理、以及两种实现Web站点负载均衡的方法(sibling形式和常规方式)。 1. **单站点代理**...
透明代理服务器搭建(Linux 搭建 Squid 代理) 透明代理服务器是一种特殊的代理服务器,它可以在不需要客户端进行任何配置的情况下,自动将 HTTP 请求转发到代理服务器上。今天,我们将学习如何在 Linux 环境中搭建...
squid代理服务器、iptables防火墙(安全)的设置和各自的功能
"基于Linux网络系统的Squid代理服务器的构建.pdf" 本文主要介绍了基于Linux网络系统的Squid代理服务器的构建,旨在解决企业网络中访问Internet时的安全问题。文章首先介绍了Linux操作系统的优势,然后讲述了Squid...
7. **透明代理**:透明代理是指客户端无需修改网络设置即可使用代理,Squid 可以配置为透明代理,实现对网络流量的无感知监控和控制。 8. **反向代理**:Squid 也可用作反向代理,将客户端请求转发到特定的后端...
"PPT等下载地址列表.txt"可能包含有关Squid代理的补充材料,如幻灯片或参考资料。最后,"readme.txt"通常包含有关文件的说明和使用指南。 通过这些资源,你可以深入了解Squid的配置和管理,提升网络管理和优化的...
"基于Linux的Squid代理服务器配置" Squid 代理服务器是一种流行的开源代理服务器软件,广泛应用于 Linux 操作系统中。该软件能够帮助用户更好地管理和控制网络流量,提高网络的安全性和可靠性。 1.1 代理服务器的...
一、squid代理服务器概述; 二、squid代理服务器模式; 三、案例:搭建squid代理传统代理服务器; 搭建squid代理传统代理服务器
Squid的常用设置: 1. http_port 192.168.0.1:3128----默认端口是3128,可以是任何其它端口。在前面加上IP地址,Squid就不会监听外部的网络接口。 2. visible_hostname----当访问错误时,该选项会显示在错误业中。 ...
本篇文档详细记录了Centos下通过Squid代理http和https方式上网的操作过程,本人线上实操手册,验证无误! 特在此分享,希望能帮助到有用到的朋友.