Ngày nay trên mạng có rất nhiều công cụ có thể giúp chúng ta dò, thử password một cách dễ dàng và máy chủ của chúng ta luôn có nguy cơ bị tấn công trong môi trường internet hiện nay, mặc dù chúng ta đã đổi các cổng giao tiếp (Tham khảo bài viết Hướng dẫn đổi port SSH) nhưng hacker vẫn có thể tìm ra nó. Vậy thì làm sao để máy chủ chúng ta có thể an toàn hơn nữa?
Giải pháp Fail2Ban có thể giúp chúng ta có thể hạn chế được vấn đề này đó là sử dụng một công cụ khóa các địa chỉ IP khi máy chủ của chúng ta bị tấn công hoặc bị dò password
Để cài đặt Fail2ban chúng ta làm theo các bước dưới đây:
1. Cài đặt thông qua câu lệnh:
yum install epel-release
yum install fail2ban
Cấu hình Fail2ban để chặn các địa chỉ IP
Sau khi cài đặt xong chúng ta sẽ vào phần cấu hình các thông số chung cho Fail2ban, chúng ta sẽ mởi file jail.conf
vi /etc/fail2ban/jail.conf
Sau đó chúng ta sẽ tiến hành sửa file cấu hình với các thông số như sau:
Tiếp theo đó chúng ta sẽ thêm cấu hình bảo vệ giao thức SSH:
vi /etc/fail2ban/jail.local và chúng ta thêm vào đoạn text cấu hình như sau (Đối với các dịch vụ khác như FTP, Mail Postfix … chúng ta cũng có thể thêm vào chung):
[sshd]
enabled = true
port = ssh,2220
Hoặc thêm đoạn code dưới nếu Fail2ban không tự động tạo rule chặn:
[sshd]
enabled = true
filter = sshd
action = iptables[name=SSH, port=2220, protocol=tcp]
abuseipdb[abuseipdb_category=”18,2220,22″]
# sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com]
logpath = /var/log/secure
maxretry = 2
bantime = 3600000
Cuối cùng chúng ta sẽ bật dịch vụ Fail2ban để bắt đầu bảo vệ máy chủ.
chkconfig --level 23 fail2ban on service fail2ban start
Để kiểm tra thử xem chúng ta đã chặn được bao nhiêu IP tấn công vào port SSH chúng ta sẽ dùng câu lệnh:
fail2ban-client status sshd
Như các bạn đã thấy trên hình, rất nhiều cuộc tấn công, dò tìm password trái phép vào mục tiêu server của chúng ta. Việc sử dụng Fail2ban là việc rất cần thiết và cấp bách
Để xóa ip đã block chúng ta dùng lệnh: fail2ban-client set sshd unbanip 123.123.123.13