Hướng dẫn cài đặt và cấu hình Fail2Ban bảo vệ SSH trên Ubuntu 24.04

Fail2Ban là một công cụ giúp bảo vệ máy chủ khỏi các cuộc tấn công brute-force vào dịch vụ SSH. Ứng dụng này hoạt động bằng cách giám sát log hệ thống để phát hiện các IP cố gắng đăng nhập sai nhiều lần, sau đó tự động chặn IP đó bằng firewall trong một khoảng thời gian xác định.

Hướng dẫn cài đặt và cấu hình Fail2Ban bảo vệ SSH trên Ubuntu 24.04

Đây là giải pháp đơn giản nhưng rất hiệu quả để ngăn chặn việc dò mật khẩu SSH trên các hệ thống Linux.

Cài đặt Fail2Ban

Fail2Ban có sẵn trong kho phần mềm chính thức của Ubuntu, bạn chỉ cần chạy lệnh sau để cài đặt:

apt -y install fail2ban

Kiểm tra trạng thái dịch vụ và bật khởi động cùng hệ thống:

systemctl status fail2ban
systemctl enable fail2ban

Sau khi cài đặt, Fail2Ban sẽ hoạt động ngay với cấu hình mặc định. Tuy nhiên, để đảm bảo kiểm soát tốt hơn, bạn nên tạo file cấu hình riêng để tinh chỉnh hành vi bảo vệ SSH.

Cấu hình Fail2Ban cho SSH

Không chỉnh sửa trực tiếp file /etc/fail2ban/jail.conf. Thay vào đó, hãy tạo file cấu hình riêng /etc/fail2ban/jail.local để override các giá trị cần thiết:

[DEFAULT]
# Thời gian IP bị block (tính bằng giây)
bantime = 3600

# Hành động khi block IP (dùng iptables)
banaction = iptables-multiport

[sshd]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = %(sshd_log)s
backend = %(sshd_backend)s
maxretry = 5
bantime = 3600

Bạn có thể thay đổi maxretry để giới hạn số lần nhập sai trước khi bị block, hoặc tăng bantime để kéo dài thời gian cấm IP.

Khởi động lại Fail2Ban

Sau khi chỉnh sửa cấu hình, khởi động lại dịch vụ để áp dụng thay đổi:

systemctl restart fail2ban

Kiểm tra firewall rule của Fail2Ban

Dùng lệnh dưới để kiểm tra xem iptables đã được thêm rule bởi Fail2Ban chưa:

iptables -L

Nếu thấy xuất hiện chuỗi f2b-SSH là bạn đã cấu hình thành công:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
f2b-SSH    tcp  --  anywhere             anywhere             tcp dpt:ssh

Chain f2b-SSH (1 references)
target     prot opt source               destination
RETURN     all  --  anywhere             anywhere

Theo dõi và quản lý Fail2Ban

  • Kiểm tra log các lần đăng nhập SSH thất bại:
cat /var/log/auth.log | grep 'Failed password' | sort | uniq -c
  • Xem danh sách IP đang bị Fail2Ban block:
fail2ban-client status sshd
  • Bỏ chặn một IP cụ thể:
fail2ban-client set sshd unbanip 1.2.3.4

Việc sử dụng Fail2Ban giúp tăng cường bảo mật cho dịch vụ SSH mà không cần cài đặt thêm hệ thống tường lửa phức tạp. Bạn nên kết hợp với cấu hình key-based SSH hoặc thay đổi port mặc định để giảm nguy cơ bị tấn công từ sớm.

Bình luận


  • Không có bình luận.

Init Toolbox

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...