近段时间登录本网站的主机时,总会提示有多少次尝试登录失败,幸好系统安全工作比较到位,攻击者怎么都是徒劳无功,现在把我的防护方案分享给大家。
以下是一段日志,就在昨晚,它共尝试978次,够有耐心的:
Jan 3 09:15:30 WEBROOT sshd[7921]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=61.49.58.140 user=root Jan 3 09:15:33 WEBROOT sshd[7907]: Failed password for root from 61.49.58.140 port 33466 ssh2
0x01 修改SSH端口
修改/etc/ssh/sshd_config:
Port 22122
修改防火墙策略(根据自己的操作系统选择相应的命令):
iptables -I INPUT -p tcp --dport 22122 -j ACCEPT # Ubuntu # sudo ufw allow 22122 # CentOS # firewall-cmd --zone=public --add-port=22122/tcp --permanent
如果您使用的是云服务器,需要修改外部防火墙策略,比如阿里云服务器就是修改安全组的策略,放行22122端口。
最后,重启sshd服务。
0x02 禁止root登录
创建用户,建议使用复杂的用户名和密码,然后修改/etc/ssh/sshd_config文件,禁用root用户登录:
PermitRootLogin no
重启sshd服务,现在只能通过该用户ssh登录,然后su切换至其他用户。
0x03 限制IP登录
如果登录场景没有固定IP,建议搭建堡垒机,然后将服务器都限制仅允许从堡垒机登录。
首先修改/etc/hosts.allow文件,添加堡垒机IP:
# 修改为堡垒机或场景固定IP sshd:10.10.100.100
然后修改/etc/hosts.deny:
sshd:all:deny
此外,还可以使用密钥登录会比密码登录更安全,本文略。
原创文章禁止转载:技术学堂 » Linux操作系统防SSH暴力破解常见方法