`
liu86th
  • 浏览: 118377 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[centos] 防ssh暴力破解

 
阅读更多

说明:

本篇实现shell统计访问失败的IP和次数,从而根据这些再通过防火墙规则来限制这些IP再次暴破,脚本如下:

 

实现:

1.编写shell脚本

# cat /root/ssh_failed.sh  //内容如下
#!/bin/sh
SCANIP=`grep "Failed" /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | awk '{print $1"="$2;}'`
for i in $SCANIP
do
    NUMBER=`echo $i | awk -F= '{print $1}'`
    SCANIP=`echo $i | awk -F= '{print $2}'`
    echo "$NUMBER($SCANIP)"
    if [ $NUMBER -gt 10 ] && [ -z "`/sbin/iptables -vnL INPUT | grep $SCANIP`" ]
    then
        /sbin/iptables -I INPUT -s $SCANIP -m state --state NEW,RELATED,ESTABLISHED -j DROP
        echo "`date` $SCANIP($NUMBER)" >> /var/log/scanip.log
    fi
done

 由于/var/log/secure是以星期为轮询的,所以我们每次可以查看这个文件,利用shell脚本统计出其中访问失败比较频繁的IP,并定义一个阀值为10(可自行修改为合适的值),如果超过这个阀值并且查看防火墙列表中有没有这条IP的记录,如果没有则添加相应防火墙规则,阻止此IP进行SSH登录,每隔一段时间进行一次检查,如果下次排查的某IP次数又大于10,并且检查它在不在我们的防火墙列表中,如果在的话就无视过去;如果不在,就继续添加进iptables中。然后我们定义一个计划任务,让每一个小时检测一次

 

2.将/root/scan_sshd_linux.sh添加至crontab,一小时执行一次

# crontab -e //在末尾添加以下内容
0   */1 *   *   *   /bin/sh /root/scan_sshd_linux.sh

 当然也有的朋友说了,可以将这些IP写入/etc/hosts.deny中,也不是不可以,总之方法是有很多,看个人喜好了!~

分享到:
评论

相关推荐

    在 Centos 7 中使用 DenyHosts防止ssh暴力破解.doc

    DenyHosts是用python2.3编写的一个程序,会分析/var/log/secure等文件,当发现同一个ip进行多次ssh登录失败时会将其写入/etc/hosts.dengy文件,达到屏蔽该ip的目的。

    用shell脚本防ssh和vsftpd暴力破解的详解讲解

    脚本需求如下:此SHELL脚本放在crontab计划任务里,每隔6小时(此时间根据实际情况来定义)就去读取... 代码如下:Nov 28 10:18:08 centos2 sshd[7556]: Connection closed by 222.216.30.109Nov 28 10:18:08 centos2 ss

    CentOS批量自动化修改服务器等保基线操作脚本

    SSH安全设置:包括禁用root远程登录、更改默认端口、启用密钥认证等,减少被暴力破解或未经授权访问的风险。 系统日志审计:配置审计日志的保存策略和周期,确保对系统操作行为进行详细记录,便于日后追踪和分析。...

    Linux系统安全配置规范.docx

    备注 主机安全合规、降低暴力破解风险 1.2.2禁止SSH root用户登录 安全基线项目名称 操作系统Linux安全基线要求项 安全基线项说明 PermitRootLogin参数指定root用户是否可以使用ssh登录,默认值为 no 安全基线要求 ...

    CentOS 7 操作系统安全配置、基于操作系统层面做出的安全配置

    - **安全基线项目名称**: CentOS 7 设置 SSH 登录超时退出 - **安全基线要求项**: 设置 SSH 空闲超时退出时间,降低未授权用户访问其他用户 SSH 会话的风险。 - **检测操作步骤**: 1. 查看配置文件: `cat /etc/...

    SSH SETUP.rar_UP_vipshock

    6. **安全考虑**:为增强安全性,应定期更换SSH密钥,限制失败登录次数,启用防火墙规则以只允许特定IP访问SSH服务,并考虑使用密钥管理系统如SSHD蜜罐或Fail2ban来抵御暴力攻击。 这个压缩包可能包含详细的SSH配置...

    CentOS 服务器安全配置策略

    近期服务器频繁有被暴力破解,大致分析了一下入侵行为,整理了常用的安全策略: 最小的权限+最少的服务=最大的安全 1. 修改ssh默认连接22端口 和 添加防火墙firewalld 通过端口 步骤: 1) 修改ssh的默认端口22: ...

    CentOS 7.6 Telnet服务搭建过程(Openssh升级之战 第一任务备用运输线搭建)

    最近被SSH 暴力枚举漏洞弄得头疼,奈何CentOS7最后版本是7.7(里面只openssh7.4,想升级到openssh 8.0),用yum升级ssh是没戏了,rpm的依赖关系(擦汗)。。。。。。,所以只能学编译安装了,第一次使用编译安装...

    openssh-8.9p1-1.el7.x86_64.tar.gz

    《OpenSSH 8.9p1在CentOS 7/RHEL系统中的安装与安全实践》 OpenSSH,全称为Open Source Secure Shell,是基于SSH协议的开源实现,用于提供安全的远程登录和其他网络服务。其最新版本8.9p1在Linux运维领域具有重要...

    总结Centos7系统加固知识点

    注意:此教程的云服务器以centos7以上为例,云服务器于阿里云购买 其他服务商的云服务器配置大同小异 建议:linux的服务器不建议安装图形化工具,因为占内存,占带宽,占资源,弊远大于利 ...ssh配置:(防暴力破解)

Global site tag (gtag.js) - Google Analytics