Linux[高级管理]——Squid代理服务器的部署和应用(反向代理详解)

 

🏡作者主页:点击! 

👨‍💻Linux高级管理专栏:点击!

⏰️创作时间:2024年6月24日11点11分

🀄️文章质量:95分


目录

————前言————

Squid的几种模式

1. 传统模式

2. 透明模式

3. 反向代理模式

实验环境

1.Web服务器配置

2.代理服务器配置

3.PC机(外网)

4.访问测试

5.证明真理


————前言————

Squid是一种高性能的代理缓存服务器,用于改善网络性能、提供缓存服务以及增强网络安全性。它在企业网络和互联网服务提供商中广泛使用,尤其适用于加速web访问、减少带宽使用和提高网络访问控制。下面是Squid代理服务器的详细介绍,包括其功能、部署和应用。

建议从传统模式开始看,有squid的安装教程!

建议从传统模式开始看,有squid的安装教程!

建议从传统模式开始看,有squid的安装教程!

第一篇:Squid代理服务器的部署和应用(传统模式详解)

第二篇:Squid代理服务器的部署和应用(透明模式详解)

第三篇:Squid代理服务器的部署和应用(反向代理详解)

按着顺序观看效果更好

Squid的几种模式

Squid代理服务器可以部署在多种模式下,以满足不同的网络需求。下面是对Squid三种主要模式的介绍:传统模式、透明模式和反向代理模式。

1. 传统模式

传统模式(Forward Proxy)是最常见的代理模式,客户端显式地将请求发送到Squid代理服务器,由代理服务器转发请求到目标服务器,并将响应返回给客户端。

特点:

  • 客户端需要配置代理服务器的IP地址和端口。
  • 主要用于缓存和访问控制。
  • 常用于网络加速、带宽优化以及网络访问控制。

2. 透明模式

透明模式(Transparent Proxy)允许客户端无需配置代理设置,所有的流量通过网络设备(如路由器或防火墙)自动重定向到Squid代理服务器。

特点:

  • 客户端无需配置代理服务器。
  • 常用于企业网络以便无缝管理和控制网络流量。
  • 配置相对复杂,需要配合网络设备(如iptables或思科设备)。

3. 反向代理模式

反向代理模式(Reverse Proxy),也称为Web加速器模式,Squid代理服务器位于客户端和Web服务器之间,客户端请求被转发到代理服务器,再由代理服务器请求实际的Web服务器。通常用于加速Web应用和负载均衡。

特点:

  • 客户端请求无感知代理存在。
  • 提供Web服务器的缓存和负载均衡服务。
  • 常用于提高Web服务器的性能和可靠性。

本章节我们围绕反向代理的模式来讲解

前边文章有讲解 传统模式 透明模式的方式

建议从传统模式开始看,有squid的安装教程!

实验环境

一台代理服务器squid

两台web服务器

Web1:192.168.192.112

Web2:192.168.192.100

一台PC模拟外网通过squid反向代理访问内网web

1.Web服务器配置

首先就是web服务器的安装和配置

第一台192.168.192.112

关闭防火墙 selinux

yum install -y httpd

[root@localhost ~]# echo '22222222' > /var/www/html/index.html
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# curl 127.0.0.1 
11111111

第二台192.168.192.100

关闭防火墙 selinux

yum install -y httpd

[root@localhost ~]# echo '22222222' > /var/www/html/index.html
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# curl 127.0.0.1 
11111111

两台web服务器 内容一样

2.代理服务器配置

安装squid

自行安装 建议

建议从传统模式开始看,有squid的安装教程!

修改配置文件

 vim /etc/squid.conf
 
 http_access allow all	
 因为你做了反向代理你就不能拒绝所有的流量,你也不知道谁会访问你,所以你要允许所有访问
 
 http_port 100.0.0.1:80 accel vhost vport
 加速访问
 支持主机名访问
 支持端口访问
 
 cache_peer 192.168.192.112 parent 80 0 no-query originserver round-robin weight=1
cache_peer 192.168.192.100 parent 80 0 no-query originserver round-robin weight=1

解释如下了解即可

  • http_access allow all :此行允许所有 HTTP 流量通过 Squid 代理。对于生产环境,这不是推荐的设置,因为它对任何传入请求打开代理,这可能会带来安全风险。为了更安全的设置,您通常会限制对特定 IP 地址或网络的访问。

  • http_port 100.0.0.1:80 accel vhost vport :此行指定 Squid 应在加速器模式下侦听 IP 地址 100.0.0.1 和端口 80accel 关键字打开加速器模式, vhost 支持虚拟主机, vport 允许每个虚拟主机使用不同的端口。

  • cache_peer 行:这些行定义 Squid 将在反向代理设置中用作源服务器的后端服务器(对等点)。

    • cache_peer 192.168.192.112 parent 80 0 no-query originserver round-robin weight=1 :这定义了端口 80 上 IP 地址 192.168.192.112 的后端服务器。 parent 关键字将其指定为上游服务器, no-query 表示它不会使用 ICP/HTCP 查询来确定状态, originserver 表示它是源服务器服务器, round-robin 表示请求将以轮询的方式分发, weight=1 设置负载分发权重。
    • cache_peer 192.168.192.100 parent 80 0 no-query originserver round-robin weight=1 :这与上一行类似,但在 IP 地址 192.168.192.100 处定义了另一个后端服务器。

更改完成之后启动服务

squid

查看端口确保是80端口 如果不是那说明你的步骤出了问题

80端口

3.PC机(外网)

win7测试

关闭防火墙配置ip地址

返回代理服务器

ping测试保持连通性

4.访问测试

访问成功

接下来我们通过查看web服务器上的日志

查看访问的哪一台web服务器的服务

通过查看我们可以看到是 模拟外部的PC机访问的是192.168.192.100 的Web服务

虽然显示的是192.168.192.111 访问的web服务 但是显示的是Windows系统

我们代理服务器是Centos系统

web服务器100

我们使用代理服务器来访问查看显示什么信息

代理服务器访问

[root@localhost ~]# curl 192.168.192.100
111111111

再次查看web日志 很明显是不一样的

**总结**
5.证明真理

通过上述的日志证明

  1. 外部的PC访问内部的Web服务
  2. PC将请求交给Squid的外部接口
  3. 然后外接口的IP以内外的身份(也就是内外的接口)来进行访问服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/761598.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

咖啡消费旺季到来 为何想转让的库迪联营商却越来越多

文 | 智能相对论 作者 | 霖霖 去年还在朝“三年万店”计划狂奔的库迪,今年已出现明显“失速”。 早在今年2月,库迪就官宣其门店数已超过7000家,如今4个多月过去,据极海品牌监测数据显示,截至6月27日,其总…

数据库断言-数据库连接池

原因:现在的代码是单线程,如果遇到大并发的话就会崩溃,数据库查询就查不过来 措施:需要建立数据库连接池,可以设置连接池的数量 什么是大并发:很多客户端在idea写的程序和数据库建立连接 步骤&#xff1…

C++中的类型转换操作符:static_cast reinterpret_cast const_cast dynamic_cast

目录​​​​​​​ C语言中的类型转换 C中的类型转换 C中的类型转换操作符 static_cast reinterpret_cast const_cast volatile关键字 赋值兼容 dynamic_cast C语言中的类型转换 基本概念:赋值运算符左右两侧类型不同,或形参与实参类型不匹配…

数学知识——欧拉函数

数学知识(二) 20240628 求和N互质的个数公式 先分解N,再求个数fai n欧拉函数的证明:用容斥原理 不考 求质因子 p1, … , pk 1-N中与N互质的个数, 去掉质因子倍数 是pi的倍数的有N/pi个,但是会有既是p1也是…

计算机人说学校-南京大学-计算机方向

1. 专长、特点与特色 南京大学计算机专业在国内外享有很高的声誉,其专长、特点和特色主要体现在以下几个方面: 理论性强:重视数学、逻辑、数据结构、算法、电子设计、计算机体系结构和系统软件等方面的理论基础和专业技术基础。实践性强&am…

大厂10余年经验总结,用户研究领域入门标准书籍来了!

《用户研究方法:卓越产品和服务的用户研究技巧》一书近期出版,本书是用户研究领域入门标准书籍,是一本带你进入用户研究世界,通过研究用户让您工作更出色的书籍。 内容及特色 本书共 10 章,分为三篇。 第一篇&#xf…

Qt实现手动切换多种布局

引言 之前写了一个手动切换多个布局的程序,下面来记录一下。 程序运行效果如下: 示例 需求 通过点击程序界面上不同的布局按钮,使主工作区呈现出不同的页面布局,多个布局之间可以通过点击不同布局按钮切换。支持的最多的窗口…

鸿蒙应用更新跳转到应用市场

鸿蒙没有应用下载安装,只支持跳转到应用市场更新 gotoMarket(){try {const request: Want {parameters: {// 此处填入要加载的应用包名,例如: bundleName: "com.huawei.hmsapp.appgallery"bundleName: com.huawei.hmos.maps.app}}…

昇思25天学习打卡营第8天|模型训练

昇思25天学习打卡营第8天|模型训练 前言模型训练构建数据集定义神经网络模型定义超参、损失函数和优化器超参损失函数优化器 训练与评估 个人任务打卡(读者请忽略)个人理解与总结 前言 非常感谢华为昇思大模型平台和CSDN邀请体验昇思大模型!从…

PFA滴定管带阀门耐酸碱本底值低

一、产品介绍 酸式滴定管为一细长的管状容器,一端具有活栓开关用来控制滴定的速度,其上具有刻度指示量度,是分析化学中常用的滴定仪器。可用于进行酸碱中和滴定试验等,量取对橡皮有侵蚀作用的液体。 我司生产的PFA酸式滴定管是用…

全球3DMAX插件界又更新了什么?

“3DMAX插件界”不这样称呼又叫他们什么呢?顾名思义就是开发3dmax插件的那个圈子。现在的3D类软件越来越多,但是,3dmax的地位仍然举足轻重。3dmax软件之所以受欢迎,不仅仅是因为自身的功能强大,还有其良好的可扩展性&a…

哪个麦克风音质好,麦克风哪种好,2024年热门家用麦克风推荐

​在这个信息爆炸的时代,网络直播和短视频成为了人们获取信息、娱乐和社交的重要方式。作为自媒体人,拥有一款优秀的领夹式无线麦克风是必不可少的。它不仅能够帮助你在各种环境中保持清晰的声音,还能提升你的作品质量和专业度。然而&#xf…

Parade接口芯片选型和应用,点击查看!

01 常见数据 / 媒体接口电路 接口电路是电子设备之间,电子设备与外围设备之间,电子设备内部部件之间起连接作用的逻辑电路,接口电路是设备处理器与外部设备进行信息交互的桥梁。 图1:常见高速数据/多媒体接口 1.1 USB接口 从最早…

思维模型:看透本质的思维框架,和它组合个个是王炸(非常详细)零基础入门到精通, 收藏这一篇就够了

为什么要从「为什么」开始? 如何想到又做到,提高行动力? 知行合一的途径?有用的工具? 剧透一下,读完本篇,你会收获一些王炸组合。 01 黄金思维圈 Why→How→What 黄金思维圈是西蒙斯涅克…

算法类学习笔记 ———— 车道线检测

文章目录 介绍基于传统计算机视觉地车道线检测基于道路特征的检测方法基于颜色特征的检测方法基于灰度特征的检测方法 基于彩色特征的检测方法基于纹理特征的检测方法基于多特征融合的检测方法 基于道路模型地检测方法直线模型曲线模型 基于深度学习的车道线检测LaneNet H-Net…

windows离线安装显卡驱动解决方案

前言 我们说这个离线泛指计算机无公网环境,而我们需要将显卡驱动打上,既然没有公网,我们就无法使用联网的方式(傻瓜式安装),受各种原因限制,也不可以把主机搬走连上互联网进行安装。总之…

动手学深度学习(Pytorch版)代码实践 -计算机视觉-38实战Kaggle比赛:图像分类 (CIFAR-10)

38实战Kaggle比赛:图像分类 (CIFAR-10) 比赛链接:CIFAR-10 - Object Recognition in Images | Kaggle 导入包 import os import glob import pandas as pd import numpy as np import torch import torchvision from torch.utils.data import Dataset…

Mac多线程下载管理器:Neat Download Manage 最新版

Neat Download Manager(NDM)是一款功能强大的下载管理软件,它可以帮助用户更有效地管理和下载网络资源。这款软件支持多种浏览器和协议,可以提升下载速度,恢复中断的下载任务,以及自动化下载过程。在使用任…

如何学好AI绘画?点这里有答案!

前言 地狱难度的求职模式下,“掌握一门技术”的那部分求职者,远比其他人更有竞争力;而拥有出色技术和技能的设计师、以及未来想做设计师的小伙伴们,怎么才能更好实现工作自由? 只有两个字:学习。 学习新…

【Go】excelize库实现excel导入导出封装(四),导出时自定义某一列或多列的单元格样式

大家好,这里是符华~ 查看前三篇: 【Go】excelize库实现excel导入导出封装(一),自定义导出样式、隔行背景色、自适应行高、动态导出指定列、动态更改表头 【Go】excelize库实现excel导入导出封装(二&…