Hướng dẫn cài đặt và cấu hình CSF

0
127
[CSF] Hướng dẫn cài đặt và cấu hình CSF
[CSF] Hướng dẫn cài đặt và cấu hình CSF

1Giới thiệu

ConfigServer Security & Firewall (CSF) là một Stateful Packet Inspection (SPI) firewall. CSF được hoạt động dựa trên iptables dành cho VPS/Server sử dụng hệ điều hành Linux. Bên cạnh việc kiểm soát các ports và gói tin, CSF cũng có thể được xem là một ứng dụng để kiểm tra việc đăng nhập (Login/Intrusion Detection application) thông qua các giao thức SSH, SMTP, IMAP, POP3,…

2Chức năng của CSF

  • Allow hoặc Block các port trên server
  • Deny các IP đăng nhập thông qua các giao thức SSH, SMTP, IMAP, POP3,…nhưng đăng nhập sai nhiều lần trong một khoảng thời gian (số lần sai do người dùng quy định)
  • Cho phép chặn một IP, một dãy IP hoặc thậm chí là dãy IP của một quốc gia
  • Chống lại một số kiểu tấn công DDoS như SYN Flood, Ping of death
  • Ngăn chặn Bruteforce attack và Port scanning
  • Có thể thao tác thông qua giao diện đồ hoạ (đối với cPanel và DirectAdmin)
  • Nhiều tính năng khác

3Các bước cài đặt

Để cài đặt CSF, các bạn cần tiến hành SSH vào VPS/Server cần cài đặt và thực hiện các lệnh bên dưới:

#Download CSF
wget https://download.configserver.com/csf.tgz
#Extract
tar xzvf csf.tgz
cd csf
#Install
./install.sh

Nếu như VPS/Server của bạn dùng các Control Panel như cPanel, DirectAdmin thì các bạn cần thay câu lệnh cài đặt ./install.sh bằng lệnh cài đặt sau:

#cPanel
./install.cpanel.sh
#DirectAdmin
./install.directadmin.sh

Sau khi cài đặt xong, ta sẽ gặp cảnh báo sau: WARNING URLGET set to use LWP but perl module is not installed, reverting to HTTP::Tiny. Để tắt cảnh báo này, ta cần cài đặt thêm perl module thông qua lệnh:

#Debian, Ubuntu
apt-get install libwww-perl -y
#RedHat,Centos
yum install libwww-perl -y

Ta cũng cần kiểm tra lại các iptables modules bắt buộc thông qua lệnh bên dưới. Lưu ý chỉ cần không có thông báo lỗi Fatal là được:

perl /usr/local/csf/bin/csftest.pl
Kiểm tra các modules của iptables để sử dụng CSF
Kiểm tra các modules của iptables để sử dụng CSF

4Khởi động CSF

Để khởi động CSF, ta cần sử dụng các lệnh sau:

systemctl start csf
#OR
service csf start

Để kiểm tra lại ta cần dùng lệnh:

systemctl status csf
#OR
service csf status
Khởi động dịch vụ CSF
Khởi động dịch vụ CSF

Nếu như muốn csf được tự động bật mỗi khi khởi động lại VPS/Server, ta có thể sử dụng lệnh sau:

chkconfig --level 235 csf on

5Cấu hình CSF cơ bản

Một số file cấu hình của CSF

etc/csf/csf.conf: file cấu hình chính của CSF

/etc/csf/csf.allow: danh sách các IP và CIDR luôn luôn được đi qua firewall

/etc/csf/csf.deny: danh sách các IP và CIDR luôn luôn bị chặn khi đi qua firewall

/etc/csf/csf.ignore: danh sách các IP và CIDR mà lfd sẽ không bao giờ block

Tắt chế độ TESTING

Mặc định chế độ TESTING sẽ được bật. Ta có thể tắt chế độ này đi bằng cách tìm đến dòng số 11 ở file /etc/csf/csf.conf và chuyển dòng TESTING = “1” sang TESTING = “0”

Tắt chế độ TESTING của CSF
Tắt chế độ TESTING của CSF

Sau khi thực hiện xong, cần dùng lệnh csf -r để restart csf

Kiểm tra các port đang được mở

Ở file /etc/csf/csf.conf từ dòng số 139 là nơi để bạn kiểm tra và mở thêm port khi cần thiết.

Các port đang mở trên CSF
Các port đang mở trên CSF

Lưu ý: CSF đã phân ra rất rõ theo giao thức (TCP và UDP) và chiều (IN hoặc OUT) của traffic. Sau khi thực hiện xong, cần dùng lệnh csf -r để restart csf.

Các port cần kiểm tra bao gồm: port SSH (mặc định là 22), 80 và 443 (cho web), các port liên quan đến mail như IMAP, POP3, SMTP,…

Một số lệnh thường được sử dụng

#Allow IP và thêm IP đó vào file /etc/csf/csf.allow
csf -a <IP ADDRESS>

#Xoá IP từ /etc/csf/csf.allow và xoá các rule liên quan
csf -ar <IP ADDRESS>

#Deny IP và thêm IP đó vào file /etc/csf/csf.deny
csf -d <IP ADDRESS>

#Xoá IP từ /etc/csf/csf.deny và xoá các rule liên quan
csf -dr <IP ADDRESS>

#Liệt kê các rule có liên quan đến IP này
csf -g <IP ADDRESS>

#Enable csf
csf -e

#Disable csf
csf -x

#Restart csf
csf -r

Nguồn: https://configserver.com/cp/csf.html

BÌNH LUẬN

Please enter your comment!
Please enter your name here