在Linux系统设置SSH防爆破!

时间:2024-05-11 08:29:16

 liunx系统的SSH远程端口非常容易遭受口令爆破,如果密码设置太简单很容易直接被网络攻击爆破而植入恶意程序,木马,恶意脚本等,进而导致数据被删,盗,沦为黑客的肉鸡对外DDoS,服务器公网IP容易被监管部门封禁,给运营带来诸多的麻烦。
那如何防止类似的情况发生呢 ?

用iptables防火墙设置远程端口放行,只允许自己本地IP访问,注:此方法适合本地IP是固定用户或固定IP段。

centos 6:

只放行本地IP 访问:

iptables -I INPUT -s 123.123.123.123 -p tcp --dport 22 -j ACCEPT

拦截所有22端口访问:

iptables -I INPUT -p tcp --dport 22 -j DROP

开放用到业务端口比如80端口:

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

保存:

service iptables save

重启iptable生效:

service iptables restart

centos 7 :

安装iptable:

yum install iptables.service

只放行本地IP 访问:

iptables -I INPUT -s 123.123.123.123 -p tcp --dport 22 -j ACCEPT

拦截所有22端口访问:

iptables -I INPUT -p tcp --dport 22 -j DROP

开放用到业务端口比如80端口:

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

保存:

service iptables save

重启iptable生效:

systemctl restart iptables.service

那么问题来了,大部分用户本地IP都是动态分配,过几天就会变一个IP ,万一IP变了 那进不去岂不是非常麻烦?
有些人本地IP变化是有规律的,比如一个固定的网段,115.224.0.0-115.225.255.255
通过https://ipip.net/ IP查询看下自己的本地IP城域网段115.224.0.0/12

那IP规则指定访问规则可以这样改写:

iptables -I INPUT -s 115.224.0.0/12 -p tcp --dport 22 -j ACCEPT

相关文章