Trong bài hướng dẫn hôm nay mình sẽ giúp các bạn cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7 đơn giản và dễ hiểu nhất.
I. CSF (Config Server Firewall) là gì?
Config Server Firewall hay còn được gọi tắt là CSF, là bộ ứng dụng tường lửa dành cho các máy chủ Linux. CSF cũng có thể phát hiện đăng nhập hoặc xâm nhập trái phép cho các dịch vụ như SSH, SMTP, IMAP, Pop3, lệnh su
và nhiều dịch vụ khác. CSF có thể phát hiện khi ai đó đang đăng nhập vào máy chủ thông qua SSH và cảnh báo cho bạn khi người dùng này cố gắng sử dụng lệnh su
trên máy chủ để sử dụng các lệnh cao hơn như đang sử dụng root
.
CSF cũng kiểm tra và ngăn chặn các đăng nhập không hợp lệ trên dịch vụ mail như (Exim, IMAP, Dovecot, uw-imap, Kerio), máy chủ OpenSSH, máy chủ Ftp (Pure-ftpd, vsftpd, Proftpd). CSF là một giải pháp bảo mật rất tốt cho các máy chủ hosting và có thể được tích hợp vào giao diện người dùng (UI) của WHM/cPanel, DirectAdmin và Webmin.
Tuy nhiên trong bài hướng dẫn này chúng ta chỉ cài CSF lên máy chủ CentOS 7 và thao tác quản trị hoàn toàn bằng lệnh.
II. Cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7
Để cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7 chúng ta cần thực hiện qua 5 bước sau.
Bước 1: SSH vào hệ thống DirectAdmin của bạn
Để cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7, việc đầu tiên chúng ta cần làm là SSH vào VPS hoặc máy chủ của bạn với quyền root trước. Nếu bạn chưa biết cách SSH vào VPS hoặc Server của bạn thì bạn có thể tham khảo bài viết hướng dẫn sau:
Sau khi đã SSH thành công chúng ta tiếp tục với bước 2 để thực hiện các lệnh cài đặt CSF (Config Server Firewall).
Bước 2: Cài đặt CSF (Config Server Firewall) trên CentOS 7
Cài đặt CSF (Config Server Firewall) trên CentOS 7 vô cùng đơn giản, chúng ta chỉ cần thực hiện thứ tự các lệnh như sau.
yum install wget perl-libwww-perl.noarch perl-Time-HiRes -y
cd /usr/src/ wget https://download.configserver.com/csf.tgz tar -xzf csf.tgz cd csf sh install.sh
Giải thích các lệnh trên:
- Lệnh 1: Vì CSF dựa trên Perl, nên chúng ta cần cài đặt thư viện Perl lên máy chủ trước.
- Lệnh 2: Di chuyển vào thư mục
src
. - Lệnh 3: Tải xuống bộ cài đặt CSF.
- Lệnh 4: Giải nén bộ cài đặt CSF.
- Lệnh 5: Di chuyển vào thư mục
csf
vừa mới được giải nén. - Lệnh 6: Thực thi tệp cài đặt csf có tên
install.sh
.
Dưới đây là hình ảnh sau khi cài đặt hoàn tất.
Sau khi cài đặt chúng ta tiếp tục với bước 3 điểm kiểm tra CSF có đang hoạt động không.
Bước 3: Kiểm tra CSF có hoạt động không
Bây giờ bạn nên kiểm tra xem CSF có thực sự hoạt động trên máy chủ này hay không bằng cách thực hiện hai lệnh sau.
cd /usr/local/csf/bin/ perl csftest.pl
Giải thích 2 lệnh trên:
- Lệnh 1: Di chuyển tới thư mục
/usr/local/csf/bin/
. - Lệnh 2: Thực thi tệp tin
csftest.pl
.
Nếu bạn nhận được thông báo như bên dưới nghĩa là CSF hoạt động mà không gặp bất kỳ vấn đề nào cả.
RESULT: csf should function on this server
Hình ảnh kiểm tra của mình như sau.
Vậy là chúng ta đã hoàn tất việc cài đặt CSF trên CentOS 7. Tiếp theo các bạn cần cấu hình CSF để CSF có thể hoạt động bình thường.
Bước 4: Cấu hình CSF trên CentOS 7
Trước khi bước vào quá trình cấu hình CSF trên CentOS, điều đầu tiên bạn phải biết là hệ điều hành CentOS 7
có một ứng dụng tường lửa mặc định được gọi là firewalld
. Bạn phải dừng firewalld
và xóa nó khỏi khởi động theo hệ điều hành với hai lệnh sau.
systemctl stop firewalld
systemctl disable firewalld
Sau đó, chuyển đến thư mục cấu hình CSF tại đường dẫn /etc/csf/
và chỉnh sửa tệp csf.conf
bằng trình chỉnh sửa vi với lệnh.
cd /etc/csf/
vi csf.conf
Các bạn cần chỉnh sửa cấu hình TESTING từ 1 sang 0, sau đó di chuyển đến dòng 139 và kiểm tra mục TCP_IN
xem đã có port SSH hiện tại của bạn chưa. Mặc định khi cài CSF thì port SSH tự động được mở theo, kể cả bạn đã đổi port.
Bây giờ khởi động CSF và LFD bằng các lệnh sau:
systemctl start csf
systemctl start lfd
Và sau đó kích hoạt các dịch vụ csf và lfd được khởi động khi CentOS khởi động:
systemctl enable csf
systemctl enable lfd
Bây giờ bạn có thể xem tất cả các rule
(nguyên tắc) của CSF với lệnh sau:
csf -l
Như vậy là chúng ta đã hoàn tất việc cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7.
Nếu bạn muốn biết các lệnh từ cơ bản nến nâng cao để sử dụng CSF thuần phục thì có thể tham khảo qua bài viết sau:
III. Tổng kết
Qua bài viết này các bạn đã nắm được các cài đặt và cấu hình CSF (Config Server Firewall) trên CentOS 7. Với việc cài đặt thêm CSF đã giúp gia tăng mức độ bảo mật của máy chủ bạn lên rất nhiều, kể cả với cấu hình mặc định.