前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux[高级管理]——Squid代理服务器的部署和应用(透明模式详解)

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

作者头像
神秘奇男子
发布2024-06-28 09:58:53
1130
发布2024-06-28 09:58:53
举报
文章被收录于专栏:运维知识运维知识

————前言————

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服务

http://t.csdnimg.cn/992F2

代码语言:javascript
复制
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1

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

修改代理服务器的配置文件

代码语言:javascript
复制
 vim /etc/squid.conf

59 http_port 192.168.192.111:3128 transparent

这行配置告诉Squid在指定的IP地址和端口上监听,并启用透明代理功能。

重新开启squid服务

代码语言:javascript
复制
[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
[root@localhost squid-3.5.23]# kill -9 56706


[root@localhost squid-3.5.23]# squid
[root@localhost squid-3.5.23]# netstat -nultp | grep squid
tcp        0      0 192.168.192.111:3128    0.0.0.0:*               LISTEN      56718/(squid-1)     
udp        0      0 0.0.0.0:50034           0.0.0.0:*                           56718/(squid-1)     
udp6       0      0 :::33559                :::*                                56718/(squid-1)  

以上是重启的步骤

如果你之前没有开启过squid 那么可以直接输入 squid开启

设置防火墙规则

代码语言:javascript
复制
[root@localhost squid-3.5.23]# iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 80 -j REDIRECT --to-port 3128
客户端测试

再次访问测试

基于主机名访问

修改客户端的hosts

代码语言:javascript
复制
C:\Windows\System32\drivers\etc

右键记事本打开 添加主机名以及对应的IP地址

访问测试
实现过滤访问
代码语言:javascript
复制
vim /etc/squid.conf

acl youxi url_regex *.ssl.com
http_access deny youxi

杀掉squid进程
重新启动

再次访问

代码语言:javascript
复制
www.ssl.com
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Squid功能
  • Squid的几种模式
    • 1. 传统模式
      • 2. 透明模式
        • 3. 反向代理模式
        • 透明模式
          • 客户端测试
            • 基于主机名访问
              • 访问测试
            • 实现过滤访问
            相关产品与服务
            负载均衡
            负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档