Linux[高级管理]——Squid代理服务器的部署和应用(传统模式详解)

news2024/11/22 19:15:54

🏡作者主页:点击! 

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

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

🀄️文章质量:95分


目录

————前言————

Squid功能

Squid的几种模式

1. 传统模式

2. 透明模式

3. 反向代理模式

外网服务器

代理服务器

客户端

测试


————前言————

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

Squid功能

  1. 缓存管理:Squid能够缓存频繁访问的网页内容,从而减少对原始服务器的请求次数,降低带宽消耗并加快用户的访问速度。

  2. 访问控制:提供强大的访问控制列表(ACL)功能,可以基于IP地址、时间、URL等条件来控制用户的访问权限。

  3. 内容过滤:通过配置,可以过滤不良网站、限制访问某些类型的内容,提高网络使用的安全性。

  4. 负载均衡:支持多个上游代理的负载均衡,提升代理服务的可靠性和性能。

  5. 日志记录:详细记录用户的访问日志,方便管理员进行审计和分析。

Squid的几种模式

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

1. 传统模式

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

特点:

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

2. 透明模式

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

特点:

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

3. 反向代理模式

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

特点:

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

本次实验讲解传统模式的代理方式

实验环境

一台服务器模拟外网服务器搭建web服务        IP地址 100.0.0.2 24

一台服务器作为squid代理服务器               

两块网卡 ens33 192.168.192.111 24        ens36 100.0.0.1 24

一台win7作为客户端

实验要求 win7通过squid代理服务器来访问外网web服务

注释:以上均关闭 防火墙 selinux

外网服务器

安装httpd

安装httpd
yum install -y httpd

关闭防火墙 selinux

给网页添加内容

echo smqnz > /var/www/html/index.html

网络配置

模拟外网的环境

配置编辑他的IP地址

代理服务器

首先用本地的IP地址连接Xshell 上传安装文件

网络环境

ens33 192.168.192.111

ens36 100.0.0.1

修改ens36IP地址

[root@localhost yum.repos.d]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp -p ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens36

安装下载的组件

[root@localhost ~]# yum install -y gcc gcc-c++

tar zxf 解压安装包

tar zxvf squid-3.5.23.tar.gz
cd squid-3.5.23/

编译安装

我这边空行是因为方便大家观看 我建议你把所有选项 放到txt 文档中整理之后在copy 执行

./configure  --prefix=/usr/local/squid --sysconfdir=/etc 
--enable-linux-netfilter --enable-async-io=240 --enable-default-err-language=Simplify_Chinese --disable-poll --enable-epoll 
--enable-gnuregex
make && make install
编译安装

修改系统配置以启用IP转发

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1

ln -s /usr/local/squid/sbin/* /usr/local/sbin/
  • 将Squid的可执行文件链接到系统的标准可执行路径中,方便使用命令运行Squid。
useradd -M -s /sbin/nologin squid
  • 创建一个专门用于运行Squid服务的用户,以提高系统安全性。
chmod 777 /usr/local/squid/var/logs/
  • 为Squid的日志目录设置权限,以确保Squid进程能够写入日志文件。

开启Squid服务并查看

squid	开启服务

[root@localhost squid-3.5.23]# netstat -nultp | grep squid
tcp6       0      0 :::3128                 :::*                    LISTEN      56706/(squid-1)     
udp        0      0 0.0.0.0:52440           0.0.0.0:*                           56706/(squid-1)     
udp6       0      0 :::60903                :::*                                56706/(squi

如图所示

看着我操作的图片 

客户端

win7测试

关闭防火墙

IP地址是 192.168.192.130

将浏览器Internet属性中的链接局域网设置 代理服务器指向 192.168.192.111 的3128端口

也就是代理服务器指向你 squid服务器的 ens33的ip地址

测试

访问模拟的外网web服务器

成功显示smqnz的内容 访问成功

外网服务器查看

查看httpd的日志

可以看出是100.0.0.1 访问的 web服务器 也就是win7通过squid代理服务器访问的web服务器

实验成功

 "成功的路上没有捷径,只有不断的努力与坚持。如果你和我一样,坚信努力会带来回报,请关注我,点个赞,一起迎接更加美好的明天!你的支持是我继续前行的动力!"

"每一次创作都是一次学习的过程,文章中若有不足之处,还请大家多多包容。你的关注和点赞是对我最大的支持,也欢迎大家提出宝贵的意见和建议,让我不断进步。"

神秘泣男子

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

仓库选址问题【数学规划的应用(含代码)】阿里达院MindOpt

本文主要讲述使用MindOpt工具优化仓库选址的数学规划问题。 视频讲解👈👈👈👈👈👈👈👈👈 一、案例场景 仓库选址问题在现代物流和供应链管理中具有重要的应用。因为仓库…

AI 时代程序员生存指南 —— 一名普通程序员的ChatGPT 一周年回顾

ChatGPT 发布一周年了,切实改变了我的工作方式和职业路径,趁着周末写下这篇文章,我希望以一名普通程序员的视角,带大家回顾一下过去一年大模型领域的发展情况,以及个人的所思所想。文章会分为四个部分,从初…

AWS云计算平台:全方位服务与实践案例

摘要 在数字化浪潮的推动下,云计算已成为企业转型的强大引擎。AWS作为云计算的先锋,不仅提供了一系列强大的基础设施服务,更是在人工智能领域不断探索和创新。本文将带您领略AWS的全方位服务,并透过实际案例,感受其在…

文心一言 VS 讯飞星火 VS chatgpt (291)-- 算法导论21.3 4题

四、假设想要增加一个 PRINT-SET(x) 操作,它是对于给定的结点 x 打印出 x 所在集合的所有成员,顺序可以任意。如何对一棵不相交集合森林的每个结点仅增加一个属性,使得 PRINT-SET(x) 所花费的时间同 x 所在集合元素的个数呈线性关系&#xff…

新手必备!短视频剪辑常用的18个技巧——剪映篇

导入素材:这里我们可以选择自己拍摄好的素材(图片、视频或录制好的音频),按照顺序导入剪辑区剪辑。这一步是剪辑的基础,确定剪辑的大体思路与成片框架!别忽略了,剪映官方素材库提供的素材&#…

Mysql序列

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

SSL证书不安全问题处理方案

正常使用情况: verifyFalse:代表不使用SSL证书校验、 以上方式在coze中使用失败 response requests.get(url, verifyFalse).text替换方案:使用httpx import httpx with httpx.Client(verifyFalse) as client:response client.get(url)参考…

气膜移动宴会厅:现代化宴会解决方案—轻空间

随着社会经济的发展和人们生活水平的提高,各类宴会、庆典和活动的需求日益增加。然而,传统的宴会厅受限于固定的地点和昂贵的建设成本,无法灵活应对不同规模和地点的需求。在此背景下,气膜移动宴会厅作为一种创新的解决方案&#…

定制课程引领,师资培训助力——树莓集团政企合作育人新篇章

树莓集团通过定制课程和师资培训两种方式,为高校提供了更加全面、系统、专业的教育资源。这些资源不仅提高了学生的专业素养和实践能力,也促进了教师的专业发展。 一、定制课程 1、行业需求导向:树莓集团根据数字产业及相关行业的发展趋势和…

Ubuntu系统中创建桌面快捷方式和添加Favorites

一. Ubuntu系统中创建软件的桌面快捷方式 Ubuntu桌面创建某个软件的桌面快捷方式,一个直观的方法。 方法1. 在图像界面下,一层一层地打开文件目录软件快捷方式/usr/share/applications/ 方法2. 或者在终端运行$ nautilus /usr/share/applications/ …

点心甜品商城小程序店铺是怎样开展的

很多人非常喜欢甜品点心,包括在宴会、送礼、家庭聚会等场景也有应用度,该赛道也存在头部品牌,其余则是以地区为主的线下店,线上则主要以外卖及电商快递等方式经营。 除了线下店和其它平台进驻外,商家还需要多渠道获客…

华为仓颉编程语言:未来的期待与挑战

在刚刚过去的华为开发者大会(HDC)上,除了发布鸿蒙新一代操作系统外,备受期待的仓颉编程语言也正式亮相。对于这一新语言的发布,业界和程序员社区给予了高度关注。本文将深入探讨仓颉编程语言的特点、应用前景及其面临的…

Linux系统上部署Whisper。

Whisper是一个开源的自动语音识别(ASR)模型,最初由OpenAI发布。要在本地Linux系统上部署Whisper,你可以按照以下步骤进行: 1. 创建虚拟环境 为了避免依赖冲突,建议在虚拟环境中进行部署。创建并激活一个新…

16位诺奖经济学奖得主联名信:特朗普就是“通胀炸弹”

经济学家警告特朗普“不负责任的财政预算将重燃通胀”,尤其是其对外国商品征收普遍关税和驱逐移民的政策,可能会对美国乃至全球经济产生灾难性长期影响。但华尔街分析师称,两党如今都是贸易保护主义者,通胀注定会回升,…

STM32 HAL库 外部中断 实现按键控制LED亮灭

目录 1、为什么使用GPIO外部中断控制LED亮灭? 2、NVIC嵌套向量中断控制器 3、EXTI外部中断 4、项目的硬件排线 5、STM32CUBE_MX配置 6、HAL库代码 7、实际效果 1、为什么使用GPIO外部中断控制LED亮灭? 实现LED亮灭控制有很多方式,其中…

【机器学习】在【PyCharm中的学习】:从【基础到进阶的全面指南】

目录 第一步:基础准备 1.1 Python基础 1.1.1 学习Python的基本语法 变量和数据类型: 1.1.2 控制流 条件语句: 循环语句: 1.1.3 函数和模块 函数: 模块: 1.2 安装PyCharm 1.2.1 下载并安装 第二…

听说网络安全行业是IT行业最后的红利?

前言 2023年网络安全行业的前景看起来非常乐观。根据当前的趋势和发展,一些趋势和发展可能对2023年网络安全行业产生影响: 5G技术的广泛应用:5G技术的普及将会使互联网的速度更快,同时也将带来更多的网络威胁和安全挑战。网络安全…

tr、cut、split、grep -E

目录 tr命令:替换和删除 cut命令:快速裁剪 split命令:文件拆分 文件合并 面试题 1.现在有一个日志文件,有5个G,能不能快速的打开 2.cat合并和paste合并之间的区别? 3.统计当前主机的连接状态&#…

初学51单片机之长短键应用定时炸弹及扩展应用

51单片机RAM区域划分 51单片机的RAM分为两个部分,一块是片内RAM,一块是片外RAM。 data: 片内RAM从 0x00 ~0x7F 寻址范围(0-127) 容量共128B idata: 片外RAM从 0x00~0xFF 寻址范围(0-255) 容量共256B pdata&am…

总结一下Linux、Windows、Ubuntu、Debian、CentOS等到底是啥?及它们的区别是什么

小朋友你总是有很多问好 你是否跟我一样,不是计算机科班出身,很多东西都是拿着在用,并不知道为什么,或者对于它们的概念也是稀里糊涂的,比如今天说的这个。先简单描述下,我先前的疑问: Linux是…