当前位置:   article > 正文

在linux上禁用ip(防止frps转发的端口被爆破)并屏蔽境外ip_get a user connection

get a user connection

 更新时间:2022年3月7日15:26:26

首先在frps配置文件中加入日志记录

  1. [common]
  2. bind_port = **
  3. dashboard_user = **
  4. dashboard_pwd = **
  5. dashboard_port = **
  6. log_file = /etc/frps/frps.log
  7. log_level = info
  8. log_max_days = 30

frpc连接上,去看日志文件

内容少的手动搜索,内容多下载到本地操作,没内容就过段时间再看

查找

get a user connection

只要不是自己的ip和内网ip就记录下来,在ssh运行

iptables -I INPUT -s 202.137.130.64 -j DROP && service iptables save

检查是否加入成功

iptables -L -n

另附直接拉黑境外ip段

 新建/root/allcn.sh,内容如下:

  1. mmode=$1
  2. #将本脚本保存为/root/allcn.sh ,设置可执行权限
  3. #SSH执行代码 /root/allcn.sh ,执行后国外ip将无法打开网站
  4. # /root/allcn.sh
  5. #如果要停止的话执行下面这个命令可恢复国外ip访问网站:
  6. #/root/allcn.sh stop
  7. #如何出现报错:syntax error near unexpected token `$'{\r''
  8. #执行代码清理:sed -i 's/\r//g' /root/allcn.sh
  9. #下面语句可以单独执行,不需要每次执行都获取网段表
  10. #wget -q --timeout=60 -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /root/china_ssr.txt
  11. #添加了中国大陆,中国香港,中国台湾,中国澳门,马来西亚等地的IP地址。
  12. #wget -q --timeout=60 -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ || /HK\|ipv4/ || /TW\|ipv4/ ||/MO\|ipv4/ || /MY\|ipv4/ || /JP\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /root/china_ssr.txt
  13. CNIP="/root/china_ssr.txt"
  14. gen_iplist() {
  15. cat <<-EOF
  16. $(cat ${CNIP:=/dev/null} 2>/dev/null)
  17. EOF
  18. }
  19. flush_r() {
  20. iptables -F ALLCNRULE 2>/dev/null
  21. iptables -D INPUT -p tcp -j ALLCNRULE 2>/dev/null
  22. iptables -X ALLCNRULE 2>/dev/null
  23. ipset -X allcn 2>/dev/null
  24. }
  25. mstart() {
  26. ipset create allcn hash:net 2>/dev/null
  27. ipset -! -R <<-EOF
  28. $(gen_iplist | sed -e "s/^/add allcn /")
  29. EOF
  30. iptables -N ALLCNRULE
  31. iptables -I INPUT -p tcp -j ALLCNRULE
  32. iptables -A ALLCNRULE -s 127.0.0.0/8 -j RETURN
  33. iptables -A ALLCNRULE -s 169.254.0.0/16 -j RETURN
  34. iptables -A ALLCNRULE -s 224.0.0.0/4 -j RETURN
  35. iptables -A ALLCNRULE -s 255.255.255.255 -j RETURN
  36. #可在此增加你的公网网段,避免调试ipset时出现自己无法访问的情况
  37. iptables -A ALLCNRULE -m set --match-set allcn src -j RETURN
  38. iptables -A ALLCNRULE -p tcp -j DROP
  39. }
  40. if [ "$mmode" == "stop" ] ;then
  41. flush_r
  42. exit 0
  43. fi
  44. flush_r
  45. sleep 1
  46. mstart

 获取白名单(境内)ip并把allcn.sh添加执行权限

  1. wget -q --timeout=60 -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' | awk -F\| '/CN\|ipv4/ || /HK\|ipv4/ || /TW\|ipv4/ ||/MO\|ipv4/ || /MY\|ipv4/ || /JP\|ipv4/ { printf("%s/%d\n", $4, 32-log($5)/log(2)) }' > /root/china_ssr.txt
  2. chmod +x /root/allcn.sh
  3. sed -i 's/\r//g' allcn.sh

开机启动:

在/etc/rc.local添加一行

/root/allcn.sh

再附,我用的服务器上被以下ip扫描,看到的亲可以直接拉黑了,我就看排除境外的还有多少这种

排查中发现大名单还是有漏网的,慢慢查漏补缺吧。现在是发现一个,境外的拉黑一个B段,境内的拉黑一个C段,应该会越来越少吧。

  1. ##2022-3-21 清单越来越长了!
  2. -A INPUT -s 1.14.94.71/32 -j DROP
  3. -A INPUT -s 27.115.124.0/24 -j DROP
  4. -A INPUT -s 42.236.10.0/24 -j DROP
  5. -A INPUT -s 49.232.203.0/24 -j DROP
  6. -A INPUT -s 58.177.0.0/16 -j DROP
  7. -A INPUT -s 62.233.50.179/32 -j DROP
  8. -A INPUT -s 79.124.62.106/32 -j DROP
  9. -A INPUT -s 80.82.0.0/16 -j DROP
  10. -A INPUT -s 89.248.0.0/16 -j DROP
  11. -A INPUT -s 91.241.19.103/32 -j DROP
  12. -A INPUT -s 101.33.0.0/16 -j DROP
  13. -A INPUT -s 103.151.0.0/16 -j DROP
  14. -A INPUT -s 104.131.0.0/16 -j DROP
  15. -A INPUT -s 106.75.156.0/24 -j DROP
  16. -A INPUT -s 106.12.141.0/24 -j DROP
  17. -A INPUT -s 111.205.43.0/24 -j DROP
  18. -A INPUT -s 114.249.0.0/16 -j DROP
  19. -A INPUT -s 116.112.207.0/24 -j DROP
  20. -A INPUT -s 118.126.124.0/24 -j DROP
  21. -A INPUT -s 119.0.0.0/8 -j DROP
  22. -A INPUT -s 122.14.0.0/16 -j DROP
  23. -A INPUT -s 123.160.0.0/16 -j DROP
  24. -A INPUT -s 139.155.174.0/24 -j DROP
  25. -A INPUT -s 141.98.0.0/16 -j DROP
  26. -A INPUT -s 146.255.185.154/32 -j DROP
  27. -A INPUT -s 152.32.0.0/16 -j DROP
  28. -A INPUT -s 159.75.112.0/24 -j DROP
  29. -A INPUT -s 167.94.0.0/16 -j DROP
  30. -A INPUT -s 180.163.220.0/24 -j DROP
  31. -A INPUT -s 183.136.0.0/16 -j DROP
  32. -A INPUT -s 187.84.29.143/32 -j DROP
  33. -A INPUT -s 193.106.0.0/16 -j DROP
  34. -A INPUT -s 202.0.0.0/8 -j DROP
  35. -A INPUT -s 211.161.0.0/16 -j DROP
  36. -A INPUT -s 222.90.12.0/24 -j DROP
  37. -A INPUT -s 222.186.0.0/16 -j DROP

顺便记录一下iptable相关命令

iptables变动小

删除指定的iptables规则

1、获取行号

iptables -nL --line-number

2、对应的分类里删除指定行

如Chain INPUT、Chain FORWARD

我们手动添加的在input类别里

iptables -D INPUT 2

删除input类别里的第2行,第2行后的行号会自动补缺。

iptables变动大

先导出再导入,同样适合批量增加iptables配置,比如把我上面拉黑的ip段导入

  1. iptables-save > /root/dsl.fw
  2. iptables-restore < /root/dsl.fw && service iptables save

 iptables重启后发现配置丢失了?是因为iptables没开机启动

chkconfig iptables on

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/285895?site
推荐阅读
相关标签
  

闽ICP备14008679号