Squid代理服务器应用

本文详细介绍了Squid代理服务器的类型、作用以及与Varnish和Nginx的区别。通过实际操作展示了Squid的安装、配置、运行控制,包括构建传统代理和透明代理服务器,以及如何进行ACL访问控制和日志分析。此外,还涵盖了Squid的反向代理功能和在生产环境中的应用。
摘要由CSDN通过智能技术生成

目录

缓存代理概述

Squid代理的类型

代理服务器的概念和作用

其主要作用有:

Squid、Varinsh和Nginx的什么区别,工作中该怎么选择?

实际操作

安装squid 服务

编译安装Squid

修改 Squid 的配置文件

Squid 的运行控制

Squid 的运行控制

构建传统代理服务器

配置传统模式

在web服务器上安装http服务

生产环境中还需要修改防火墙规则

客户机的代理配置

查看 Squid 访问日志的新增记录中的缓存命中情况

查看 Web 访问日志的新增记录

构建透明代理服务器

Squid服务器配置

开启路由转发,实现本机中不同网段的地址转发

修改防火墙规则

Web服务器配置

查看 Squid 访问日志的新增记录

ACL访问控制

定义访问控制列表

客户机ip进行访问控制

调用指定文件中的列表内容进行控制

Squid 日志分析

安装图像处理软件包

添加不计入站点文件,添加的域名将不被显示在排序中

验证

Squid 反向代理

节点服务器设置

Web1配置

Web2配置

客户机的域名映射配置

查看缓存命中情况

缓存代理概述

缓存网页对象,减少重复请求

代理的工作机制:

1.代替客户机问网站请求数据,从而可以隐藏用户的真实Ip地址。

2.将获得的网页数据(静态Web元素)保存到缓存中并发送给客户机,以便下次请求相同的数据时快速响应。

Squid代理的类型

传统代理:适用于Internet,需明确指定服务端

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

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

代理的好处:

1,提高web的访问速度

2,隐藏客户机的真实ip

代理服务器的概念和作用

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

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

其主要作用有:

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

Squid、Varinsh和Nginx的什么区别,工作中该怎么选择?

Squid、Varinsh和Nginx都是代理服务器什么是代理服务器:能当替用户去访问公网,并且能把访问到的数据缓存到服务器本地,等用户下次再访问相同的资源的时候,代理服务器直接本地回应给用户,当本地没有的时候,我代替你去访问公网,我接收你的请求,我先在我自已的本地缓存找,如果我本地缓存有,我直接从我本地的缓存里回复你如果我在我本地没有找到你要访问的缓存的数据,那么代理服务器就会代替你去访问公网。

区别: Nginx本来是反向代理/web服务器,用了插件可以做做这个副业但是本身不支持特性挺多,只能缓存静态文件; 从这些功能上。varnish和squid是专业的cache服务,而nginx这些是第三方模块完成; varnish本身的技术上优势要高于squid,它采用了可视化页面缓存技术;在内存的利用上,Varnisht比Squid具有优势,性能要比Squid高。还有强大的通过Varnish管理端口,可以使用正则表达式快速、批量地清除部分缓存它是内存缓存,速度一流,但是内存缓存也限制了其容量,缓存页面和图片一般是挺好的;只支持反向代理,功能少,缓存容量较小,CPU/IO/内存消耗搞,进程意外退出会丢失缓存数据。 squid的优势在于完整的庞大的cache技术资料,和很多的应用生产环境;既能支持正向代理也能支持反向代理,缓存数据也能支持持久化,模式多 工作中选择:要做cache服务的话,我们肯定是要选择专业的cache服务,优先选择squid或者varnish。

实际操作

安装squid 服务

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

编译安装Squid

yum -y install gcc gcc-c++ make
tar zxvf squid-3.5.28.tar.gz -C/opt/
cd /opt/squid-3.5.28

./configure--prefix=/usr/1ocal/squid \     #指定安装目录路径
--sysconfdir=/etc \                        #指定配置文件路径
--enable-arp-acl \               #MAC地址管控,防止客户端使用ip欺骗
--enable-linux-netfilter \                 #使用内核过滤
--enable-linux-tproxy \                    #支持透明模式
--enable-async-io=100 \                    #异步I0,提升存储性能
--enable-err-language="Simplify_Chinese" \ #错误信息的显示语言
--enable-underscore \                      #允许URL中有下划线
--disable-poll \                           #关闭默认使用poll模式
--enable-epoll \                           #开启epoll模式提升性能
--enable-gnuregex                          #使用GNU正则表达式
./configure --prefix=/usr/local/squid \
--sysconfdir=/etc \
--enable-arp-acl \
--enable-linux-netfilter \
--enable-linux-tproxy \
--enable-async-io=100 \
--enable-err-language="Simplify_Chinese" \
--enable-underscore \
--disable-poll \
--enable-epoll \
--enable-gnuregex

make -j4 && make install

ln -s /usr/local/squid/sbin/* /usr/local/sbin/
useradd -M -s /sbin/nologin squid          #创建管理用户
chown -R squid:squid /usr/local/squid/var/ #此目录用于存放缓存文件

修改 Squid 的配置文件

vim /etc/squid.conf
......
--56行--插入
http_access allow all
#放在 http_access deny all 之前,允许任意客户机使用代理服务,控制规则自上而下匹配
http_access deny all
http_port 3128  #用来指定代理服务监听的地址和端口(默认的端口号为 3128)
--61行--插入
cache_effective_user squid			#添加,指定程序用户,用来设置初始化、运行时缓存的账号,否则启动不成功
cache_effective_group squid			#添加,指定账号基本组

coredump_dir /usr/local/squid/var/cache/squid	#指定缓存文件目录

Squid 的运行控制

#检查配置文件语法是否正确
squid -k parse

#启动 Squid,第一次启动 Squid 服务时,会自动初始化缓存目录
squid -z 					#-z 选项用来初始化缓存目录
squid						#启动 squid 服务

netstat -napt | grep squid

Squid 的运行控制

vim /etc/init.d/squid
#!/bin/bash
#chkconfig
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值