fail2ban--服务器遭遇暴力破解的福音

目录

前言

一、在fail2ban之前

 1、一些保护服务器的必要措施

 2、查看自己的服务器有没有被暴力破解

二、安装和配置fail2ban

1.安装fail2ban

三、解封IP

总结

前言

作为服务器管理员,与其让大家改复杂密码什么的这种被动应战,任由“入侵者”攻击我们的服务器,不如使用fail2ban来做一些应对措施。


一、在fail2ban之前

 1、一些保护服务器的必要措施

1.设置特殊端口,比如把22端口修改为2222

2.禁止root用户直接登录

3.建立普通用户,设置复杂的密码(包含特殊字符)

4.不使用普通用户登录,采用公钥-私钥模式

5.开启防火墙,仅仅放行安全或必要的端口

 2、查看自己的服务器有没有被暴力破解

可以输入lastb查看尝试登录的用户信息:

fail2ban--服务器遭遇暴力破解的福音_第1张图片

可以看到有个未知ip一直在尝试登录我们服务器,他们可能会尝试不同的用户名和密码进行暴力破解,指不定啥时候某个密码比较弱的用户就被攻陷了,所以很有必要搞点措施对于这种一直试错的ip封禁! 

二、安装和配置fail2ban

1.安装fail2ban

# Ubuntu
sudo apt update && sudo apt install fail2ban

# CentOS
yum install fail2ban 

 进入fail2ban的目录,复制一份配置文件:

cd /etc/fail2ban 
sudo cp fail2ban.conf fail2ban.local
sudo cp jail.conf jail.local

修改jail.local配置文件启动sshd策略:

sudo vim jail.local

 添加一行(大概在280行左右):enabled=true

fail2ban--服务器遭遇暴力破解的福音_第2张图片

 找到如下位置,修改封禁时间和最大可尝试次数:

fail2ban--服务器遭遇暴力破解的福音_第3张图片

 完成之后修改sshd策略:

sudo vim fail2ban.local

 定位到最后一行,添加如下内容(CentOS使用如下配置):

[sshd]
enable = ture
port = 22   # 注意改成自己对应的ssh端口
filter =sshd
# CentOS
logpath = /var/log/secure
# Ubuntu
# logpath = /var/log/auth.log
maxretry = 5   # 最大尝试次数
bantime = 1800 #封禁时间,单位s。-1为永久封禁

 保存配置,重启生效。

sudo systemctl restart fail2ban  #重启
sudo fail2ban-client status #查看状态
sudo fail2ban-client status sshd #查看sshd的详细状态

三、解封IP

如果有小伙伴不小心尝试了很多次然后被封了ip,这个时候就需要unban,把ip给解封

 1、查看被封ip:

#sudo fail2ban-client status 
sudo fail2ban-client status ssdh

2、解封ip 

 #sudo fail2ban-client set jail_name unbanip xxx.xxx.xxx.xxx
 sudo fail2ban-client set sshd unbanip 222.195.74.123

3、确认ip是否被解封

cat /var/log/fail2ban.log

 看到Unban就说明ip被解封成功了!撒花~


总结

服务器管理真的是一门大学问,我仅仅是记录一下解决问题的路程,希望我们在和“入侵者”斗争的路上能够变得更强。

参考资料:

保护好自己的服务器,fail2ban基本使用教程

https://linuxhint.com/unban-ip-fail2ban/

你可能感兴趣的:(Lunix服务器配置,服务器,linux,centos,ubuntu,运维)