Centos下防止ssh暴力破解

Python014

Centos下防止ssh暴力破解,第1张

首先修改ssh的连接端口,增加破解难度

找到Port 22这一行,发现已经被注释了,将注释解开,并添加一行Port 2333,保存退出,重启ssh

然后尝试用2333端口进行连接,如果连接不上,可以添加防火墙规则:

连接成功之后,再打开sshd_config

找到Port 22,删除该行,重启ssh

至此,ssh连接端口已改为2333。

方法一

收集 /var/log/secure 里面的信息,若是某个IP 链接次数超过一定次数 ,则把此ip记录到/etc/hosts.deny里面。

先把始终允许的IP填入 /etc/hosts.allow这很重要!比如:

sshd:19.16.18.1:allow

sshd:19.16.18.2:allow

创建脚本

通过crontab来执行,每个整点1分执行一次。

方法二

DenyHosts官方网站为: http://denyhosts.sourceforge.net

默认是安装到/usr/share/denyhosts目录的。

1、检查 Firewalld 防火墙是否启用

2、启用 Firewalld 后默认 --remove-port 禁止所有端口,需手动开放,以下是开放 SSH 端口( 22 )示例:

1、编辑

2、配置

意思是如果在1小时内,同一IP登陆失败3次,则将其封禁24小时,具体根据实际情况修改。

1、执行命令

2、显示内容

1、编辑 (Debian系:/etc/s-nail.rc;RedHat系:/etc/mail.rc)

2、在文件末尾增加配置

3、测试

多个收件人用 , 分隔,刚刚发送的邮件在 收件箱 垃圾箱 中。

1、编辑

2、配置

1、编辑

2、配置

以 Nginx 为例,使用 fail2ban 来监视 nginx 日志,匹配短时间内频繁请求的 IP ,并使用 firewalld 将其 IP 屏蔽,达到 CC 防护的作用。

1、编辑

2、配置

1、编辑

2、配置

意思是如果在60秒内,同一IP达到120次请求,则将其封禁2小时,具体根据实际情况修改。

1、执行命令

2、显示内容

1、使用正则规则检测

2、使用规则文件检测

CentOS 或 RHEL安装fail2ban,首先设置EPEL仓库运行命令

$ sudo yum install fail2ban

Fedora安装fail2ban简单运行命令:

$ sudo yum install fail2ban

UbuntuDebian 或 Linux Mint安装fail2ban:

$ sudo apt-get install fail2ban