云主机被ssh暴力破解
2021-11-03 本文已影响0人
断水流大师兄vs魔鬼筋肉人
刚刚买的云主机收到告警:【SSH暴力破解】,一开始没理会,后面发现这几个IP还经常来试。
这样放着也不是办法。
就简单的做了一些限制:
1.配置/etc/pam.d/sshd 做限制
/etc/pam.d/sshd 中增加
auth required pam_tally2.so deny=5 unlock_time=600 even_deny_root root_unlock_time=1200
even_deny_root 也限制root用户;
deny 设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户
unlock_time 设定普通用户锁定后,多少时间后解锁,单位是秒;
root_unlock_time 设定root用户锁定后,多少时间后解锁,单位是秒;

2.配置/etc/ssh/sshd_config
修改22端口-6666 (修改任意端口)
放开:MaxAuthTries (限制SSH客户端一次连接服务器,能测试的密码的) 建议的设置 3-6

完成步骤1,2后重启服务
systemctl restart sshd
3.写个脚本把暴力破解的IP加入黑名单
#!/bin/bash
tail -n1000 /var/log/secure |grep "Failed password for root from" |awk '{print $11}'|sort |uniq -c |awk '{if($1 >5) print $2}' > /tmp/.erro_ssh_ip
for i in $(cat /tmp/.erro_ssh_ip)
do
new_ip=`grep -c "$i" /etc/sshd.deny.hostguard`
if [ $new_ip == 0 ];then
echo "$i SSH brute force attack" >> /tmp/ssh_attack.log
echo "$i" >> /etc/sshd.deny.hostguard
else
echo "ip:$i is in deny"
fi
done
/tmp/.erro_ssh_ip 获取的暴力破解IP名单(多次尝试 > 5次的)
/etc/sshd.deny.hostguard ssh加入黑名单的IP
写了个循环,读取暴力破解名单,去黑名单循环,没有就追加 到黑名单。避免IP重复写在配置【/etc/sshd.deny.hostguard】
查看日志 /var/log/secure

执行脚本
没加入黑名单的IP 会 【>> /etc/sshd.deny.hostguard】,已经加入的返回 【echo "ip:$i is in deny"】


测试:
找一台机器ssh你的公网IP
ssh 110.110.110.100 (本机公网IP) 默认22 直接报错不通:
ssh 110.110.110.100 (本机公网IP) -p 6666 (修改的ssh端口)

查看本地日志: /var/log/secure

查看sshd的黑名单变化:
121.52.252.24 刚刚脚本触发的IP
119.8.55.100 (之前触发的)
159.138.53.153 (之前触发的)
