Web的缓存加速(Squid的安装与配置)

本文详细介绍了Squid的代理服务器基础知识,包括代理形式、缓存工作机制、代理服务器的作用和常见类型。重点讲解了实验配置部分,涵盖了Squid的编译安装、传统和透明代理模式的配置、ACL控制以及SARG日志分析软件的安装。此外,还介绍了Squid的反向代理配置,以实现高效的数据分发和安全访问控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[Web的缓存加速(Squid的安装与配置)]

1.Squid代理服务器基础知识

默认端口3128

1.1代理形式

  • 传统代理
    (正向代理)

    适用于Internet正向代理,需在客户机指定代理服务器的地址和端口。

  • 透明代理

    客户机不需指定代理服务器的地址和端口,而是通过默认路由、防火墙策略将web访问重定向给代理服务器处理。

    • 边界服务器的时候使用
  • 反向代理

    反向代理:如果squid反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端;否则反向代理服务器将向后台的WEB服务器请求资源,然后将请求的应答返回给客户端,同时也将该应答缓存在本地,供下一个请求者使用。

  • 默认端口3128

1.2 缓存工作机制

缓存网页对象(静态网页资源),减少重复请求

1.3 代理工作机制

代理的工作机制:
1.代替客户机向网站请求数据,从而可以隐藏用户的真实IP地址。
2.将获得的网页数据(静态Web元素)保存到缓存中并发送给客户机,以便下次请求相同的数据时快速响应。

1.4 代理服务器

1.4.1概念

代理服务器是一一个位于客户端和原始(资源)服务器之间的服务器,为了从原始服务器取得内容,客户端向代理服务器发送一个请求并指定目标原始服务器,然后代理服务器向原始服务器转交请求并将获得的内容返回给客户端。

缓存代理对于web至关重要,尤其对于大型高负载web站点。缓存可作为性能优化的一-个重要手段,可以极大减轻后端服务器的负载。通常对于静态资源,即较少经常更新的资源,如图片,css或js等进行缓存,从而在每次刷新浏览器的时候,不用重新请求,而是从缓存里面读取,这样就可以减轻
服务器的压力。

1.4.2 作用

资源获取:代替客户端实现从原始服务器的资源获取;
加速访问:代理服务器可能离原始服务器更近,从而起到一-定的加速作用;
缓存作用:代理服务器保存从原始服务器所获取的资源,从而实现客户端快速的获取;
隐藏真实地址:代理服务器代替客户端去获取原始服务器资源,从而隐藏客户端真实信息。

1.4.3 常见缓存代理服务器
  • NGINX
    兼职,通过三方模块实现
  • Squid
    传统,稳定,能将缓存数据持久化
    适用于大文件
    支持正向反向代理
  • Varnish
    性能更好,资源开销比Squid高
    只支持反向代理,数据都在内存中
    安全性较Squid较差,但无伤大雅

1.5 ACL

访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地控制用户对网络的访问,从而最大程度地保障网络安全。

ACL与防火墙关系:

同:

ACL(访问控制列表)和防火墙都执行过滤流量的功能。

异:

1.防火墙是一个独立功能(可以是专有硬件也可以是安装在通用服务器上的软件),而ACL是路由器或三层网络设备上的功能。
2.防火墙通过跟踪记录流量的状态,检查数据包,可对数据包执行至7层应用层探测;ACL对数据包逐包执行无状态检查,检查端口和协议内容(4层)。

ACL和防火墙_Mia_Zh的博客

2. 实验配置

2.1 编译安装squild

2.1.1 编译步骤
## 首先关闭防火墙和SElinux
[root@squid_service ~]# systemctl stop firewalld.service 
[root@squid_service ~]# systemctl disable firewalld.service
[root@squid_service ~]# setenforce 0

1.编译安装Squild(安装包在/opt目录下)

## 编译环境安装
[root@squid_service opt]# yum -y install gcc gcc-c++ make
[root@squid_service opt]# tar zxvf squid-3.5.28.tar.gz -C /opt/
[root@squid_service opt]# cd /opt/squid-3.5.28
[root@squid_service squid-3.5.28]# ./configure --prefix=/usr/local/squid \     #指定安装目录路径
--sysconfdir=/etc \                         #指定配置文件路径
--enable-arp-acl \                          #MAC地址管控,防止客户端使用IP欺骗
--enable-linux-netfilter \                  #使用内核过滤
--enable-linux-tproxy \                     #支持透明模式
--enable-async-io=100 \                     #异步IO,提升存储性能
--enable-err-language="Simplify_ Chinese" \ #错误信息的显示语言
--enable-underscore \                       #允许URL中有下划线
--disable-poll \                            #关闭默认使用poll模式
--enable-epoll \                            #开启epoll模式提升性能
--enable-gnuregex                           #使用GNU正则表达式
##四核编译安装
[root@squid_service squid-3.5.28]# make -j4 && make install 

##配置运行环境
[root@squid_service squid-3.5.28]# ln -s /usr/local/squid/sbin/* /usr/local/sbin/
[root@squid_service squid-3.5.28]# useradd -M -s /sbin/nologin squid
[root@squid_service squid-3.5.28]# chown -R squid:squid /usr/local/squid/var/
[root@squid_service squid-3.5.28]# vim /etc/squid.conf

2.运行环境配置

##配置运行环境
[root@squid_service squid-3.5.28]# ln -s /usr/local/squid/sbin/* /usr/local/sbin/
[root@squid_service squid-3.5.28]# useradd -M -s /sbin/nologin squid
[root@squid_service squid-3.5.28]# chown -R squid:squid /usr/local/squid/var/
[root@squid_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值