当 lastb 刷屏时:你的服务器正在被黑客 “撞门”,这几招让攻击有来无回

当你在Linux系统上用lastb命令查看登录失败记录时,发现密密麻麻全是陌生IP的尝试痕迹,别慌!这大概率是系统正遭遇暴力破解攻击,比如黑客不断用不同账号密码“撞库”,想强行登录你的服务器。此时就需要一套高效方案来应对:快速识别攻击源、自动封锁恶意IP、强化登录安全、切断黑客入侵路径……而接下来要介绍的这套处理方法,正是专为解决这类“系统被暴力破解攻击、登录安全告急”的场景设计的,能帮你快速止损并筑牢系统防线。

以下是详细的处理步骤:

1. 确认攻击情况

首先使用以下命令确认攻击来源和频率:

lastb | awk '{print $3}' | sort | uniq -c | sort -nr | head -n 10

此命令会显示尝试登录失败次数最多的IP地址。

2. 临时封锁攻击源

使用iptablesfirewalld临时封锁频繁尝试登录的IP:

# 使用iptables(临时封锁,重启后失效)
iptables -A INPUT -s 攻击IP -j DROP

# 使用firewalld(永久封锁)
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="攻击IP" reject'
firewall-cmd --reload

3. 启用实时监控工具

安装fail2ban来自动识别并封锁恶意IP:

# Ubuntu/Debian
sudo apt-get install fail2ban

# CentOS/RHEL
sudo yum install fail2ban

# 配置fail2ban(示例:封锁SSH暴力破解)
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

[ssh]部分启用监控并设置封锁规则:

[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log  # Debian/Ubuntu
# logpath = /var/log/secure  # CentOS/RHEL
maxretry = 3  # 尝试3次失败后封锁
bantime = 86400  # 封锁24小时
findtime = 3600  # 1小时内计算尝试次数

启动并设置开机自启:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

4. 强化SSH配置

编辑SSH配置文件:

sudo nano /etc/ssh/sshd_config

修改以下参数:

Port 2222  # 修改默认端口(可选)
PermitRootLogin no  # 禁止root直接登录
MaxAuthTries 3  # 最大认证尝试次数
PasswordAuthentication no  # 禁用密码登录(推荐使用密钥)
PermitEmptyPasswords no  # 禁止空密码
UsePAM yes  # 启用PAM认证

重启SSH服务:

sudo systemctl restart sshd

5. 检查系统安全漏洞

  • 更新系统

    # Ubuntu/Debian
    sudo apt-get update && sudo apt-get upgrade
    
    # CentOS/RHEL
    sudo yum update
    
  • 检查异常进程

    ps aux | grep -vE '^(USER|root)' | awk '{print $1, $2, $8, $11}' | sort -k3
    
  • 检查计划任务

    cat /etc/crontab
    cat /etc/cron.*/*
    

6. 查看日志分析攻击细节

查看认证日志获取更多信息:

# Debian/Ubuntu
sudo grep 'Failed password' /var/log/auth.log | tail -n 20

# CentOS/RHEL
sudo grep 'Failed password' /var/log/secure | tail -n 20

7. 配置SSH密钥登录(推荐)

生成密钥对(客户端执行):

ssh-keygen -t rsa -b 4096

将公钥复制到服务器:

ssh-copy-id -i ~/.ssh/id_rsa.pub username@服务器IP

禁用密码登录(服务器配置):

sudo nano /etc/ssh/sshd_config
# 设置 PasswordAuthentication no
sudo systemctl restart sshd

8. 定期审计系统

  • 安装auditd进行系统审计:

    # Ubuntu/Debian
    sudo apt-get install auditd
    
    # CentOS/RHEL
    sudo yum install auditd
    
  • 配置审计规则:

    sudo nano /etc/audit/rules.d/audit.rules
    # 添加规则(示例:监控/etc/passwd变更)
    -w /etc/passwd -p wa -k identity
    

总结

通过以上步骤,你可以有效应对暴力破解攻击并提升系统安全性。建议定期检查系统日志并保持软件更新,以防范新的安全威胁。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值