如何使用 Fail2ban 防止 Linux 上的暴力攻击
通过安装和配置 Fail2ban 减少黑客访问您的 Linux 服务器的机会。
SSH 和 FTP 是两种最常用的网络协议。黑客利用复杂的自动化工具来猜测您的用户名和密码,然后闯入您的系统。
有了良好的安全实践,您就可以减轻大部分安全风险。借助 Fail2ban,您可以主动保护 Linux 服务器或 PC,进一步降低安全漏洞的风险。
什么是 Fail2ban?
Fail2ban 是一款功能强大的开源安全软件,可动态保护您的服务器或 PC 免受可疑活动和暴力攻击。它会持续扫描您的日志文件以查找登录尝试,如果有任何登录尝试,它会通过更新防火墙规则来阻止源 IP 地址。
Fail2ban 适用于大多数远程连接服务,例如 SSH、FTP、SMTP 和 HTTP。
Fail2ban 易于配置和定制。您可以指定要阻止 IP 地址的时间或将其配置为在出现可疑活动时接收自动警报。
需要强调的是,仅 Fail2ban 不足以保护您免受安全漏洞的侵害。您还应该采取其他安全措施来降低被黑客攻击的风险。例如,您应该始终在系统上使用强密码并尽可能限制访问。
如何在 Linux 上安装 Fail2ban
大多数主要的 Linux 发行版,包括 Red Hat Enterprise Linux (RHEL)、Ubuntu 和 Arch Linux 都支持 Fail2ban。以下是在 Linux 发行版上安装 Fail2ban 的方法:
在 Arch Linux 及其衍生产品上:
sudo pacman -S fail2ban
要在 Ubuntu 和 Debian 上安装 Fail2ban:
sudo apt install fail2ban在 Fedora 和 RHEL 上安装 Fail2ban 很简单:
sudo dnf install fail2ban接下来,您需要启用 Fail2ban 服务。这样,每当系统启动时,该进程就会在后台运行。
sudo systemctl enable fail2ban.service要完成安装,请使用以下命令启动 Fail2ban 服务:
sudo systemctl start fail2ban您可以使用以下命令验证 Fail2ban 服务是否已启动并正在运行:
sudo systemctl status fail2ban
如果一切正常,服务应该已启动并处于活动状态。如果有任何错误消息,您可以使用journalctl实用程序查看Fail2ban日志消息:
sudo journalctl -u fail2ban在 Linux 上配置 Fail2ban
最后,您可以开始配置 Fail2ban 以保护您的系统免受暴力攻击和其他可疑活动的侵害。
/etc/fail2ban/jail.conf 文件存储主要的 Fail2ban 配置。最佳做法是避免更改此特定文件。仅将其用作参考。
每当您更新 Fail2ban 时,jail.conf 配置文件都会被覆盖。为了避免丢失配置,请在同一文件夹中创建一个名为 jail.local 的副本。为此,请使用强大的 cp 命令:
cd /etc/fail2ban && cp jail.conf jail.local接下来,使用您喜欢的文本编辑器打开 jail.local 文件并调整以下配置:
ignoreip: 使用它来指定您希望免受 Fail2ban 规则约束的 IP 地址列表。
bantime: bantime 参数定义应禁止 IP 地址的时间段。这可能是由于多次登录尝试失败或其他可疑活动造成的。将其设置为五分钟 (5m)。
maxretry:使用此参数可以指定禁止主机之前登录失败的次数。为了进行测试,我们将其设置为2。
配置文件有详细记录,因此请通读它以了解有关 Fail2ban 及其提供的选项的更多信息。
最后,重新启动fail2ban服务以使更改生效。使用命令:
sudo systemctl restart fail2ban测试 Fail2ban 配置
设置好配置后,您可以测试 maxretry 配置是否正常工作。尝试通过 SSH 登录您已配置的 PC 或服务器。
当要求提供登录凭据时,请提供两次错误的密码。 Fail2ban 将按照配置启动并阻止您五分钟。
这只是一个简单的用例;现在继续根据您的喜好配置您的服务器,并随意尝试。
为您的 Linux 服务器或 PC 添加额外的安全层
Fail2ban 是一个功能强大且非常可配置的安全工具。使用它来主动保护您的服务器或 PC 免受暴力攻击。
除了 Fail2ban 之外,还可以使用强密码并配置防火墙以获得更好的安全性。您还可以使用信誉良好的防火墙系统来保护您的家庭或办公室网络。


