当前位置: 代码网 > 服务器>服务器>Linux > Linux[高级管理]——Squid代理服务器的部署和应用(传统模式详解)

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

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

🏡作者主页: 

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

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

🀄️文章质量:95分


目录

————前言————

squid功能

squid的几种模式

1. 传统模式

2. 透明模式

3. 反向代理模式

外网服务器

代理服务器

客户端

测试


————前言————

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

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

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

第三篇: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服务器

实验成功

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com