Squid代理服务器之透明代理

透明代理提供的服务功能与传统代理是一致的,但是其“透明”的实现依赖于默认路由和防火墙的重定向策略,因此更适用于局域网主机服务,而不适合为Internet中的客户机提供服务。下面也通过一个简单的应用案例来学习透明代理的配置和使用。

环境介绍
  1. linux服务器需要安装了squid服务,可通过这篇博客来进行安装:Linux安装squid 服务
  2. 项目环境:一台windows为W1,两台虚拟机分别为SquidServer(双网卡)和WebServer(单网卡)。W1与SquidServer组建内网,访问外网WebServer的服务器。
    W1的IP设置:VMware1网卡设置IP为192.168.10.2,子网掩码:255.255.255.0
    SquidServer的IP设置:eth0的IP为192.168.10.1,子网掩码:255.255.255.0,eth1的IP为200.168.10.1,子网掩码:255.255.255.0
    WebServer的IP设置:eth0的IP为200.168.10.2,子网掩码:255.255.255.0
    W1、SquidServer之间可以ping通。SquidServer、WebServer之间可以ping通。
    SquidServer与W1为内网,WebServer为外网。
    如图:
    在这里插入图片描述
搭建步奏
  1. 修改squid配置文件 squid.conf
    找到squid 配置文件,一般在安装目录的etc下

    vi suqid.conf
    # 内容如下
    
    # 设置squid服务地址,以及端口号
    http_post 192.168.10.1:3128 transparent
    # 设置squid的主机名称。必填!!!
    visible_hostname 192.168.10.1
    # 设置acl 列表
    # 定义192.168.10.0网段的所有用户为innet
    # 定义 所有网段的用户为 all
    acl innet src 192.168.10.0/24
    acl all src 0.0.0.0/0.0.0.0
    # 允许 192.168.10.0网段的人上网,禁止所有人上网
    http_access allow innet
    http_access deny all
    

    保存退出,squid重新加载配置文件
    squid -k reconfig

  2. 添加iptables规则,把内部的http请求重定向到3128端口
    SquidServer服务器上设置:
    iptables -t nat -A PREROURING -i eth0 -s 192.168.10.0/24 -p tcp --deport -j REDIRECT--to 3128

  3. 设置内网主机网关
    将W1的网关设置为squid的内网IP。
    在这里插入图片描述

  4. 实验结果
    在W1的浏览器上输入200.168.10.2,可以访问到WebServer的WEB服务。
    只有192.168.10.0这个网段的可以上网,其他的网段的人不能访问外网。

结论

可以自己在本地搭建相应的环境, 进行实验演示,试验中有什么问题,评论告诉我,一起探讨解决。
如果您对这个文章有任何异议,那么请在文章评论处写上你的评论。
愿大家都能在编程这条路,越走越远。

一个人的成就,不是以金钱衡量,而是一生中,你善待过多少人,有多少人怀念你。 生意人的账簿,记录收入与支出,两数相减,便是盈利。 人生的账簿,记录爱与被爱,两数相加,就是成就。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值