Mỗi ngày, hàng ngàn bot tự động thực hiện các cuộc tấn công Brute Force để dò tìm mật khẩu của các dịch vụ SSH, FTP hay chính website của bạn. Fail2Ban là giải pháp tự động hóa giúp bạn "cấm cửa" những kẻ xâm nhập này một cách nhanh chóng và hiệu quả.
1. Fail2Ban hoạt động như thế nào?
Fail2Ban liên tục quét các file log của hệ thống để tìm kiếm các dấu hiệu đăng nhập sai liên tiếp từ cùng một địa chỉ IP. Khi số lần sai vượt quá giới hạn cho phép, Fail2Ban sẽ tự động tạo một luật firewall (thông qua iptables hoặc nftables) để chặn mọi truy cập từ IP đó trong một khoảng thời gian xác định.
2. Cài đặt Fail2Ban trên Linux
Việc cài đặt Fail2Ban rất đơn giản trên hầu hết các bản phân phối Linux:
# Ubuntu / Debian
sudo apt update && sudo apt install fail2ban -y
# CentOS / RHEL
sudo dnf install epel-release -y
sudo dnf install fail2ban -y
3. Cấu hình bảo vệ WordPress
Để bảo vệ trang đăng nhập WordPress, bạn cần tạo một filter mới cho Fail2Ban. Đầu tiên, tạo file cấu hình cho filter:
sudo nano /etc/fail2ban/filter.d/wordpress.conf
Nội dung filter: failregex = ^<HOST> .* "POST /wp-login.php
Sau đó, kích hoạt "jail" cho WordPress trong file jail.local:
[wordpress]
enabled = true
port = http,https
filter = wordpress
logpath = /var/log/nginx/access.log
maxretry = 5
findtime = 600
bantime = 3600
4. Các lệnh quản lý Fail2Ban hữu ích
# Kiểm tra trạng thái chung
fail2ban-client status
# Kiểm tra một jail cụ thể (ví dụ: sshd)
fail2ban-client status sshd
# Gỡ lệnh chặn cho một IP thủ công
fail2ban-client set sshd unbanip 1.2.3.4
Fail2Ban là một công cụ "set and forget" tuyệt vời. Sau khi cấu hình xong, nó sẽ âm thầm bảo vệ hệ thống của bạn 24/7 mà không tốn nhiều tài nguyên máy chủ.
Leave a Comment