关于squid这个强大的代理软件,已不须多言,自己也测试了一把,不过,在centos7.3安装测试的过程,出现了问题, 在做透明代理的时候,用iptables是可以成功的,而用firewall默认防火墙怎么也不成功,但真正知道了firwall的原理后,其实firewall已经帮我们做好了!请看
安装
#yuminstallsquid-y
禁用selinux
#vi/etc/sysconfig/selinux SELINUX=disabled #setenforce0临时关闭
打开路由转发
#vi/etc/sysctl.conf net.ipv4.ip_forward=1
配置squid
#vi/etc/squid/squid.conf
cache_dirufs/var/log/squid1024016256 ... http_accessallowall//测试,允许所有访问 http_accessdenyall http_port3128transparent//关键,一定要加上,做为透明代理 ...其他大家看着修改
#squid-kparse检查配置文件 #squid-z初始化 #systemctlstartsquid启动 #lsof-i:3128查看端口是否启用
关键,firewall防火墙配置
#firewall-cmd--zone=external--add-interface=eth0--permanent//外网网卡添加到外网zone #firewall-cmd--zone=internal--add-interface=eth1--permanent//内网网卡添加到内网zone #firewall-cmd--zone=external--add-service=squid--permanent//关键,添加squid服务 #firewall-cmd--zone=internal--add-service=squid--permanent//应该只要内网区域添加服务即可
#firewall-cmd--zone=external--list-all//列出外网区域信息,默认应该开启了masquerade:yes如果是no的话执行如下语句添加 #firewall-cmd--zone=external--add-masquerade--permanent #systemctlrestartfirewalld//重启防火墙
客户端
添加内网的ip,网关,设为squid服务器的内网IP,DNS设为可用的DNS即可
打开网页,看是否能够用了?
其中有个要注意的,如果squid服务器端,防火墙不添加--add-service=squid 服务的话,虽然客户端也可以正常访问网页,但已经不经过squid来转发了,到时,所有squid的限制功能都会失效。
原文链接:https://www.f2er.com/centos/377976.html