为内网用户做加速访问,客户端无需手动设置代理即可访问公网中的web服务器。
1)实验拓扑
2)修改squid配置文件
指定squid为透明模式
vim /etc/squid/squid.conf
http_port 10.10.10.12:3128 transparent(透明模式)
visible_hostname lvs_backup (不添加也可以)
3)配置iptables策略
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 #开启路由转发
#立即生效
sysctl -p
#配置iptables规则
iptables -t nat -A PREROUTING -i ens33 -s 10.10.10.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128 #当入站网卡是ens33,内网网段是10.10.10.0/24,并且它访问的目标端口是80时,就把它重定向到3128这个端口
4)直接访问公网的web服务器
网关需要指向squid服务器的内网ip
echo "GATEWAY=10.10.10.12" >> /etc/sysconfig/network-scripts/ifcfg-ens33
可以看到,客户端无需设置代理即可访问成功。
5)限制最大代理下载文件大小
在web服务器生成一个大文件
#dd: 是一个用于复制文件和转换数据的命令行工具。
#if=/dev/zero: 这是dd命令的输入选项。/dev/zero是一个特殊设备文件,它会产生连续的空字节数据流作为输入。
#of=1.txt: 这是dd命令的输出选项。它指定了输出文件的名称,即"1.txt"。
#bs=1M: 这是dd命令的块大小选项。bs代表"block size",这里设置为1兆字节(MB),表示每次写入的数据块大小。
#count=1024: 这是dd命令的计数选项。它指定了要复制的数据块数量,这里设置为1024,意味着总共写入1024个1兆字节(MB)的数据块。
dd if=/dev/zero of=1.txt bs=1M count=1024
#修改squid配置文件
vim /etc/squid/squid.conf
reply_body_max_size 800 MB #允许从我这里通过的数据量
#重新加载配置文件
service squid reload
标签:透明,squid,代理服务,1024,dd,Squid,etc,服务器,10.10 From: https://blog.51cto.com/u_16227807/7140994限制数据大小后,再次下载文件会提示您要下载的文件太大,请联系管理员询问。