Squid 缓存代理服务器
Squid 的作用
1.通过缓存的方式为用户提供web访问加速
2.对用户的web访问进行过滤控制
缓存代理服务器又分为普通代理服务器,透明代理服务器,和反向代理服务器。
普通代理服务即指标准的,传统的代理服务,需要客户机在浏览器中指定代理服务器的地址,端口
透明代理服务器适合企业的网关主机,客户机不需要指定代理服务器地址,端口等信息,需要设置防火墙策略将客户机的web访问数据转交给代理服务器
反向代理服务为INTERNET用户访问网络内网站点提供缓存加速。提高访问效率。
squid 缓存代理服务的软件安装包名为 squid-2.6.STABLE21-3.el5(版本可能不同),默认监听端口为TCP 3128 默认访问日志文件 :/var/log/squid/access.log 进程名为squid , 主程序:/usr/sbin/squid ,配置目录:/etc/squid 主配置文件是 /etc/squid/squid.conf
我们已经对squid有了初步的认识,现在了解一下主配置文件squid.conf 的几个常用配置项
http_port 3128 此项设定默认监听端口,可以改变IP与监听端口
cache_mem 64 MB 设定缓存大小,一般情况下建议将物理内存的1/3划给它
maximum_object_size 4096 KB 定义最大缓存对象
reply_body_max_size 10240000 allow all 访问控制规则,对响应数据做限定,如果把这个值设定为0 就表示不做限定
access_log /var/log/squid/access.log squid 为squid做访问日志
visible_hostname proxy.test.com 可见主机名,默认配置文档中并没有定义,建议设定,否则影响squid启动
cache_dir ufs /var/spool/squid 1024 16 256
(缓存文件放置位置,ufs是文件系统类型,1024指定缓存目录大小, 16 缓存空间一级子目录个数, 256 指缓存空间的二级子目录个数)
cache_mgr root@test.com 定义服务器管理员邮箱
cache_effective_user squid
ache_effective_group squid 定义squid的UID GID
error_directory /usr/share/squid/errors/Simplify_Chinese 定义错误信息显示为中文,squid错误信息支持多种语言。可以在/usr/share/squid/errors 下查看
http_access allow localhost
http_access deny all 访问控制策略,
在没有设置任何规则时,将拒绝所有客户端的访问请求
有规则但是找不到相匹配的项时,将采取与最后一条规则相反的权限,即如果最后一条规则是allow 那么就拒绝客户端的请求,否则允许该请求
ACL(Access Control List )访问控制列表,可以从客户机的IP地址,请求访问的URL/域名/文件类型/访问时间/并发请求等方面进行控制
ACL的格式是
acl 列表名称 列表类型 列表内容
acl列表的使用在squid的官方网站上有详细的介绍,下面只介绍几种常用的acl列表类型
src 基于客户端IP地址做控制, 源ip
dst 基于访问目的IP做控制
srcdomain 基于域名的源地址解析
port 基于端口控制
proto 基于协议类型做控制
browser 对浏览器的做控制 # acl notfirefox browser MOZILIA
time 基于时间做控制,acl worktime time 10:00-23:59
acl working time 0:00-5:59
(注意:time时间控制时,前一个时间点要小于后一个时间点,若是要过0点设定,就仿写成上面例子,列表名称可以一样,acl匹配时取它们的并集)
maxconn 最大并发连接数
url_regex [-i ] 统一资源,针对url做正则表达式匹配 -i 不区分大小写
acl notpdf url_regex –i ^http.*\.pdf$
urlpath_regex [-i] 可不指定前端只对url 尾部做匹配
acl notpdf urlpath_regex –i .*\.pdf$
下面先来配置一个传统的代理服务
要求做一个普通代理,pc机能通过squid服务器访问外网192.168.0.254的web服务,但是在18:30-8:30之间内网用户不能上网,不能访问下载以.rmvb .mp3为后缀的文件,单个文件最大不能超过10M 代理端口为8080,错误提示呈现为中文,管理员邮箱为root@test.com, 内存大小为64M, 缓存目录大小为1024M, 并为squid配置可见主机名
1 安装squid软件包
#yum install squid
2 编辑/etc/squid/squid.conf
配置可见主机名
指定缓存目录大小
配置管理员邮箱
定义内存大小
指定 缓存目录为1024M
定义错误信息显示
定义最大单个文件大小
修改监听端口
最acl控制
3.现在 到内网pc机上将为浏览器配置代理服务,将ip指向192.168.0.72 端口指向8080
现在连上0.254 了测试一下你做的acl 控制吧
现在我们把题目修改一下,把上面的普通代理做成透明代理
1 修改squid.conf 配置文件,并重新加载该配置项
只需要修改一下监听端口
2.在squid主机上添加iptables 规则
3 客户机浏览器不需要指定代理服务器的地址,端口
做完透明代理访问也是一样的
下面再介绍一下反向代理
1.修改squid.conf 文件,并重启加载配置项
(cache_peer web 服务器 服务器类型 http端口 icp端口 可选项)
http_port 192.168.0.74:80 vhost 修改监听端口
cache_peer 192.168.10.2 parent 80 0 originserver weight=5 max-conn=30
cache_peer 192.168.10.3 parent 80 0 originserver weight=5 max-conn=30
cache_peer 192.168.10.4 parent 80 0 originserver weight=5 max-conn=30
cache_peer 192.168.10.5 parent 80 0 originserver weight=1 max-conn=8
2,好了现在可以验证了,在外网的客户机访问反向代理服务器192.168.0.74能够看到web提供的网页
(注意透明代理服务器和反向代理服务器不能配置在一台squid服务器上)
分享到:
相关推荐
Squid缓存代理服务器的安装与配置(普通代理 透明代理 反向代理) Squid缓存代理服务器是一种流行的代理服务器和Web缓存服务器软件,广泛应用于提高Web服务器速度、缓存万维网、域名系统和其他网络搜索、帮助网络...
- **标准代理**:需要客户端手动配置代理服务器地址和端口号。适用于企业内部网络,可有效管理内外部资源的访问。 - **透明代理**:无需客户端进行任何配置,通过网络层(如 Linux 下的 Iptables 或 Ipchains)实现...
### squid缓存服务器的配置详解 #### 一、概述与背景 Squid是一个高性能的代理缓存服务器,主要用于加速Web浏览,减少对外部网络的带宽需求,提高响应速度,以及提供一定的安全性和访问控制功能。在企业、教育机构...
Squid 是一个广泛使用的开源 HTTP 代理服务器和缓存系统,它能够显著提高网络访问速度,减轻服务器负载,同时提供内容过滤、访问控制等功能。在本文中,我们将深入探讨如何配置 Squid 作为缓存服务器。 ### 1. 安装...
在本文中,作者探讨了如何利用Linux操作系统和Squid软件构建一个优化的缓存代理服务器。Squid是一个开源的代理服务软件,允许用户自由使用和修改,常用于提高网络访问速度和效率。在基于Linux的环境中,Squid作为...
总结起来,Squid代理服务器是Linux环境下的一款高效、安全的代理解决方案,它通过缓存机制、多协议支持和严格的访问控制,极大地提升了内部网络用户的浏览体验,同时保证了网络的安全性。正确配置和使用Squid,可以...
"基于Linux的Squid代理服务器配置" Squid 代理服务器是一种流行的开源代理服务器软件,广泛应用于 Linux 操作系统中。该软件能够帮助用户更好地管理和控制网络流量,提高网络的安全性和可靠性。 1.1 代理服务器的...
Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid 连接所申请网站并请求该...
本文档旨在详细介绍如何在特定环境下配置Squid作为反向代理服务器。实验环境包括一台运行Red Hat Enterprise Linux 5.5 (RHEL5.5)的虚拟机以及另一台运行Windows Server 2003的机器。Squid版本为2.6,并将与Apache...
在 squid.conf 文件中,可以对 Squid 的访问控制策略进行配置,例如,设置访问控制列表、访问控制规则、缓存刷新策略等,以保证代理服务器的合法使用。 搭建 Linux 下的 Squid 代理服务器需要对 Squid 软件的安装、...
通过使用ICP(Internet Cache Protocol),Squid可以在多台代理服务器之间共享缓存信息,进一步优化带宽使用。 代理服务的核心是代理服务器,它作为内部网络与Internet之间的桥梁。当内部网络的设备需要访问...
关于学习Squid,你可以参考"第八集 Squid代理服务器原理.wmv"这个视频,它应该会详细讲解Squid的配置和使用方法。"LAMP兄弟连 原创PHP、LAMP视频"可能包含有关如何在Linux环境安装和配置Squid的信息,而"PPT等下载...
6. 配置 Squid 代理服务器:编辑 /etc/squid/squid.conf 文件,添加 transparent 行,以启用透明代理功能。 7. 启动 Squid 服务:使用 service squid start 命令启动 Squid 服务。 8. 配置 iptables 规则:使用 ...
透明代理则是指用户在使用网络时,无感知地通过代理服务器进行访问。而Squid与ICAP(Internet Content Adaptation Protocol)的结合,则可以实现更高级的功能,如内容过滤、病毒检测等。 一、Linux搭建Squid透明...
解决方法:squid 代理服务器的配置文件 squid.conf 中添加以下两行代码: header_access Via deny all header_access X-Forwarded-For deny all 这两行代码将禁止squid 代理服务器传递Via 和 X-Forwarded-For 头...
本次实验的目的是让读者掌握代理服务器相关原理,理解正向代理、透明代理和反向代理的功能,并掌握Squid服务器配置与管理。 二、实验环境 本次实验所使用的平台是VMware,操作系统是Red Hat Enterprise Linux 6.4...
论文首先介绍了 Linux 操作系统的优点和 Squid 代理服务器的工作原理,然后详细介绍了 Linux 下 Squid 代理服务器的安装和配置方法。 关键词:Linux、Squid、代理服务器、缓存技术 一、Linux 操作系统的优点 ...
Squid 是一个高性能的代理缓存服务器,适用于多种网络环境。作为正向代理,Squid 可以接收客户端的HTTP和HTTPS请求,然后将这些请求转发到实际的API服务器。配置 Squid 正向代理通常涉及以下几个步骤: 1. 安装 ...
总之,Squid作为一个功能强大的缓存代理服务器,对于提高网络效率、优化用户体验和维护网络安全有着显著的作用。无论是企业还是个人,都可以根据自身需求对其进行定制和配置,以实现最佳的网络管理效果。
在IT行业中, Squid是一个广泛使用的开源HTTP代理服务器和缓存系统,尤其在构建网络缓存和反向代理服务方面表现突出。本文将详细讲解如何使用Squid进行反向代理配置,通过提供的文件名,我们可以看到有四种不同的...