海外的端口扫描非常猛,自建代理一不小心就可能利用,流量哗哗哗的就用没了
问:怎么不让境外ip访问我1080端口的socks5代理
你可以使用防火墙规则来过滤入站连接。具体的步骤取决于你使用的操作系统和防火墙软件。使用 iptables 防火墙在 Linux 上实现,是一种常见的方法。
1、只允许指定IP通过,iptables先通过允许的,其它的拒绝
iptables -A INPUT -s 100.100.100.100 -p tcp --dport 1080 -j ACCEPT
iptables -A INPUT -p tcp --dport 1080 -j DROP
2、如果想要允许境内更多的ip访问,一种可行的解决方案是使用 ipset 工具结合ip数据库来实现 IP 地理位置过滤
#安装ipset
apt install ipset
#下载中国区ip库,注意文件下载的路径,下边用得到
wget -P . http://www.ipdeny.com/ipblocks/data/countries/cn.zone
ipset -N cnip hash:net
for i in $(cat /root/cn.zone ); do ipset -A cnip $i; done
iptables -A INPUT -p tcp --dport 1080 -m set --match-set cnip src -j ACCEPT
iptables -A INPUT -p tcp --dport 1080 -j DROP
如果你想限制其它端口,也可以用这个办法,这个网站有全球各区域的ip集合
https://www.ipdeny.com/ipblocks/
注意:IPset里的ip集合是保存在内存里的,重启系统会失效,需要开机重新加载。配置 iptables 规则自动加载,具体方法也可能因 Linux 发行版而异
ubuntu上自动加载可以参考这篇
在ubuntu下重新实现rc.local
网友评论