CSF, tường lửa mạnh mẽ và dễ kiểm soát cho server Linux

ConfigServer Security & Firewall thường được gọi là CSF là một trong những công cụ tường lửa nổi tiếng nhất trên Linux server. Nó được phát triển bởi ConfigServer Services và hoạt động như một lớp quản lý thông minh cho iptables, kèm theo hệ thống phát hiện đăng nhập bất thường thông qua LFD.

Với CSF, bạn không chỉ mở và đóng cổng mà còn tự động chặn IP có hành vi đáng ngờ như dò mật khẩu SSH, spam mail hoặc mở quá nhiều kết nối tới server.

Dưới đây là hướng dẫn cài đặt và sử dụng CSF kèm lệnh chi tiết.

Bước 1: Chuẩn bị hệ thống trước khi cài CSF

Đăng nhập vào server bằng tài khoản root qua SSH.

Cập nhật hệ thống trước:

yum update -y

Cài các gói cần thiết để CSF hoạt động:

yum install perl-libwww-perl perl-Time-HiRes -y

Trên AlmaLinux hoặc Rocky Linux cũng dùng yum hoặc dnf tương tự.

Bước 2: Tải và cài đặt CSF

Di chuyển vào thư mục tạm:

cd /usr/src

Tải bộ cài CSF từ trang chính thức:

wget https://download.configserver.com/csf.tgz

Giải nén:

tar -xzf csf.tgz
cd csf

Chạy script cài đặt:

sh install.sh

Sau khi cài xong, kiểm tra xem các module iptables có sẵn không:

perl /usr/local/csf/bin/csftest.pl

Nếu thấy thông báo phần lớn test là OK thì hệ thống tương thích tốt với CSF.

Bước 3: Cấu hình cơ bản trước khi bật tường lửa

File cấu hình chính nằm ở:

nano /etc/csf/csf.conf

Tìm dòng:

TESTING = "1"

Giữ nguyên giá trị này lúc đầu để CSF ở chế độ test, chưa chặn thật.

Mở cổng SSH

Tìm dòng:

TCP_IN =

Thêm cổng SSH bạn đang dùng, ví dụ mặc định là 22:

TCP_IN = "22,80,443"

80 và 443 là cho web. Nếu có thêm dịch vụ khác như mail thì bổ sung sau.

Tương tự cho chiều ra ngoài:

TCP_OUT = "22,80,443"

Lưu file và thoát.

Bước 4: Khởi động CSF ở chế độ thử nghiệm

Chạy lệnh:

csf -r

Lệnh này reload toàn bộ luật tường lửa.

Kiểm tra trạng thái CSF:

csf -l

Lúc này CSF chỉ ghi log, chưa block thật vì vẫn đang TESTING.

Bước 5: Bật chế độ bảo vệ thật sự

Sau khi chắc chắn bạn vẫn SSH vào server bình thường, quay lại file cấu hình:

nano /etc/csf/csf.conf

Đổi:

TESTING = "0"

Lưu lại rồi reload:

csf -r

Từ thời điểm này, CSF bắt đầu chặn IP thật sự.

Bước 6: Kiểm tra và quản lý IP bị chặn

Xem danh sách IP đang bị block:

csf -g 1.2.3.4

Thay 1.2.3.4 bằng IP cần kiểm tra.

Xem toàn bộ IP đang bị chặn tạm thời:

csf -t

Block thủ công một IP:

csf -d 1.2.3.4 "Manual block"

Mở block một IP:

csf -dr 1.2.3.4

Bước 7: Theo dõi log tấn công

Log của LFD nằm tại:

tail -f /var/log/lfd.log

Bạn sẽ thấy các dòng dạng IP bị block do SSH login failure, port scan hoặc gửi mail bất thường.

Log của CSF:

tail -f /var/log/messages

Hoặc trên một số hệ:

tail -f /var/log/syslog

Bước 8: Whitelist IP quản trị để tránh bị khóa nhầm

Mở file:

nano /etc/csf/csf.allow

Thêm IP của bạn:

1.2.3.4 # My office IP

Lưu lại rồi reload:

csf -r

Bước 9: Kiểm tra LFD có đang chạy không

LFD là phần tự động phát hiện tấn công.

Kiểm tra tiến trình:

ps aux | grep lfd

Hoặc dùng service:

systemctl status lfd

Nếu chưa chạy:

systemctl start lfd
systemctl enable lfd

Bước 10: Thử mô phỏng tấn công để kiểm tra

Từ một máy khác, cố tình đăng nhập SSH sai mật khẩu nhiều lần. Sau vài lần vượt ngưỡng, IP đó sẽ bị block.

Bạn sẽ thấy log trong:

tail -f /var/log/lfd.log

Và IP xuất hiện trong danh sách block của CSF. Điều này xác nhận CSF đang bảo vệ server đúng cách.

CSF là công cụ rất đáng dùng

CSF là công cụ rất đáng dùng nếu bạn muốn một lớp bảo vệ mạnh ở mức hệ điều hành mà không cần cấu hình iptables phức tạp bằng tay. Chỉ với vài bước cài đặt và tinh chỉnh cơ bản, bạn đã có thể chặn phần lớn các cuộc tấn công dò mật khẩu, quét cổng và truy cập bất thường vào server.

Quan trọng hơn, khi theo dõi log của CSF và LFD, bạn sẽ hiểu rõ server của mình đang bị tấn công như thế nào mỗi ngày. Kiến thức đó cực kỳ giá trị cho bất kỳ ai quản trị VPS hoặc hệ thống Linux lâu dài.