美文网首页
云主机被ssh暴力破解

云主机被ssh暴力破解

作者: 断水流大师兄vs魔鬼筋肉人 | 来源:发表于2021-11-03 16:01 被阅读0次

    刚刚买的云主机收到告警:【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
    
    image.png

    完成步骤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

    这就是尝试破解ssh的IP名单

    执行脚本

    没加入黑名单的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
    有个IP多次尝试登陆并且失败
    查看sshd的黑名单变化:

    121.52.252.24 刚刚脚本触发的IP
    119.8.55.100 (之前触发的)
    159.138.53.153 (之前触发的)


    刚刚的xx.xx.xx.24被加到黑名单

    相关文章

      网友评论

          本文标题:云主机被ssh暴力破解

          本文链接:https://www.haomeiwen.com/subject/twfczltx.html