前面我们介绍了CCproxy工具(HVV工具介绍之CCProxy)。从工作原理上讲,其实质是一个网络代理工具。CCproxy一般用于Windows环境中,那在Linux中一般用什么工具呢?Squid了解一下。
今天,我们在Ubuntu系统中简单介绍一下Squid代理工具的使用。
首先,我们准备一台香港的云服务器。如果你通过前面的链接注册了某公有云的账号(粉丝福利:白嫖天翼云免费的VPN网关及1000块钱),那么你就能以超低价格开通云服务器,开通一台1核CPU、1 GB内存、40 GB系统盘的实例每小时成本不足1毛钱,最高可以支持300 Mbps带宽。
然后,我们选择一个Ubuntu系统,开通即可。
开通完成之后,我们先安装Squid。
apt update && apt upgrade -y
apt install -y squid
Squid的主要配置文件位于/etc/squid/squid.conf,编辑配置文件,查看http_port代理端口配置,如果是注释状态,需要取消注释,并按需调整代理端口。
nano /etc/squid/squid.conf
http_port 3128
如果我们想限制只有特定IP地址能够访问此代理,可以在http_port行下面添加以下限制:
acl localnet src 192.168.1.0/24 # 限制本地网络访问
http_access allow localnet
http_access deny all # 拒绝所有其他请求
http_access allow all # 允许所有访问请求
调整完这些配置,我们就可以启用Squid服务了。
systemctl start squid
systemctl enable squid
systemctl status squid
如果我们的Ubuntu系统启用了防火墙,可以关闭防火墙,也可以通过ufw命令调整防火墙规则(ufw命令简介),需要允许Squid监听的TCP端口3128:
ufw allow 3128
同样的,别忘了调整云服务器的防火墙规则。
接下来,我们回到本地电脑,也就是被代理流量的主机,先探测一下端口是否开放、可达。
没有问题,然后我们在本地以360极速浏览器为例,配置一下“代理服务器”。打开页面“chrome://settings/proxy360”,将Squid的主机IP地址和端口配置上去。
然后在【代理服务器】中选中对应的条目就可以了。
测试使用该代理访问cip.cc,查看IP地址信息。
没问题,地址已经显示未香港的IP地址了。验证网络连通性,境外网站打开正常。
当然,对于低版本的Windows主机,也可以在Internet选项中设置代理服务器,参考下图。
配置Squid域名白名单
如果想让Squid只允许访问指定的域名,可以在Squid的配置文件/etc/squid/squid.conf中添加以下内容来定义白名单:
nano /etc/squid/squid.conf
定义一个ACL用来匹配白名单中的域名,匹配github.com和google.com。(注意在正则表达式中,“.”需要转义成“.”。
acl whitelist dstdomain_regex -i github.com google.com
允许白名单中的域名访问
http_access allow whitelist
拒绝所有其他请求
http_access deny all
如果你需要添加多个域名到白名单中,可以在acl whitelist行后面添加多个域名,每个域名之间用空格隔开。为了完全阻止对白名单之外的所有域名的访问,需要确保http_access deny all配置在文件的最后。
保存并关闭配置文件后,重启 Squid 服务以应用更改:
systemctl restart squid
怎么样,是不是很简单,你学废了吗?
声明:来自铁军哥,仅代表创作者观点。链接:https://eyangzhen.com/2621.html