admin 发表于 2026-8-13 00:38:30

SSH暴力破解防护工具安装与安全配置

在Linux系统中,安装和配置SSH暴力破解防护工具(如Fail2Ban)是提升服务器安全性的关键步骤。以下是详细的安装与配置指南:



1. 安装Fail2Ban
基于Debian/Ubuntu的系统
sudo apt update
sudo apt install fail2ban -y

基于RHEL/CentOS的系统
sudo yum install epel-release# 启用EPEL仓库(如未安装)
sudo yum install fail2ban -y

启动并启用服务
sudo systemctl start fail2ban
sudo systemctl enable fail2ban



2. 配置Fail2Ban
主配置文件

[*]全局配置:/etc/fail2ban/jail.conf(建议复制为jail.local以避免升级被覆盖)

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

关键配置项

[*]默认策略(部分):

ignoreip = 127.0.0.1/8# 忽略本地IP或信任的IP段
bantime = 1h            # 封禁时长(示例:1小时)
findtime = 10m          # 检测时间窗口(10分钟内多次失败则触发)
maxretry = 3            # 允许的最大失败次数

[*]SSH防护策略(部分):

enabled = true
port = ssh            # 监听的SSH端口(默认22)
filter = sshd         # 使用预定义的SSH过滤规则

自定义过滤规则(可选)

[*]编辑/etc/fail2ban/filter.d/sshd.conf,可调整匹配的正则表达式(如忽略特定错误消息)。




3. 应用配置并验证
sudo systemctl restart fail2ban
sudo fail2ban-client status# 查看服务状态
sudo fail2ban-client status sshd# 检查SSH防护的封禁列表



4. 强化SSH安全(辅助措施)
修改SSH默认端口

[*]编辑/etc/ssh/sshd_config:

Port 2222# 改为非标准端口(如2222)

[*]重启SSH服务:

sudo systemctl restart sshd

禁用Root登录与密码认证

[*]在/etc/ssh/sshd_config中设置:

PermitRootLogin no
PasswordAuthentication no# 仅允许密钥认证

使用防火墙限制访问

[*]UFW(Ubuntu):

sudo ufw allow 2222/tcp# 允许新SSH端口
sudo ufw enable

[*]Firewalld(CentOS/RHEL):

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload



5. 监控与日志

[*]查看Fail2Ban日志:

sudo tail -f /var/log/fail2ban.log

[*]手动解封IP(如误封):

sudo fail2ban-client set sshd unbanip <IP地址>



6. 其他防护工具(可选)

[*]DenyHosts:类似Fail2Ban,专注于SSH防护。
[*]OSSEC:集成入侵检测系统(IDS),提供更全面的监控。




注意事项

[*]测试配置:修改配置后,先使用fail2ban-client reload测试,避免服务中断。
[*]备份配置:修改前备份原始文件(如jail.conf)。
[*]定期更新:保持Fail2Ban和系统更新,修复潜在漏洞。


通过以上步骤,可有效防御SSH暴力破解攻击,并结合多层次安全策略提升服务器整体安全性。
页: [1]
查看完整版本: SSH暴力破解防护工具安装与安全配置