Initializing System...

Discover Intelligence

Press Enter to search or Esc to close

Hướng Dẫn Cài Đặt & Cấu Hình ModSecurity (WAF) Toàn Diện Kèm OWASP CRS

Hướng Dẫn Cài Đặt & Cấu Hình ModSecurity (WAF) Toàn Diện Kèm OWASP CRS - FixNhanh

Bảo mật máy chủ là ưu tiên hàng đầu của mọi quản trị viên hệ thống. Bất kể bạn đang sử dụng Nginx hay Apache trên hệ điều hành Ubuntu hoặc Debian, việc thiết lập ModSecurity (Web Application Firewall - WAF) kết hợp với OWASP Core Rule Set (CRS) là một rào chắn cực kỳ vững chắc để bảo vệ website khỏi SQL Injection, XSS, hay LFI.

Bài viết này sẽ hướng dẫn bạn cách cài đặt, cấu hình và kích hoạt sự bảo vệ toàn diện bằng ModSecurity.

1. Lựa chọn ModSecurity cho Nginx vs Apache

Cách tiếp cận với hai Web Server này khá khác nhau. Với Apache, ModSecurity được hỗ trợ nguyên bản và có sẵn trên kho ứng dụng. Trong khi đó với Nginx, bạn cần phải biên dịch bộ module kết nối từ mã nguồn. Dưới đây là các bước độc lập cho cả hai sự lựa chọn.

2. Cài đặt trên Web Server Apache (Cơ bản)

Cài đặt Package và Kích hoạt
sudo apt update
sudo apt install libapache2-mod-security2 -y
sudo mv /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
sudo systemctl restart apache2

Chỉ với vài lệnh, bạn đã kích hoạt module ModSecurity cho Apache với những cấu hình tham chiếu chuẩn nhất.

3. Cài đặt trên Web Server Nginx (Nâng cao)

Do Nginx không hỗ trợ sẵn packege động trong kho mặc định, ta cần build từ mã nguồn. Hãy trang bị các gói phụ thuộc:

Cài đặt Dependencies và biên dịch libmodsecurity3

sudo apt install -y apt-utils autoconf automake build-essential git libcurl4-openssl-dev libgeoip-dev liblmdb-dev libtool libxml2-dev zlib1g-dev pkgconf
cd /opt
sudo git clone --depth 1 -b v3/master --single-branch https://github.com/SpiderLabs/ModSecurity
cd ModSecurity
sudo git submodule init && sudo git submodule update
sudo ./build.sh
sudo ./configure
sudo make && sudo make install

Biên dịch module Nginx Connector

Bạn phải cài module tương ứng với phiên bản Nginx đang chạy. Sử dụng nginx -v để xem phiên bản hiện hành của bạn:

# Tải mã nguồn của phiên bản Nginx tương ứng
cd /opt
sudo wget http://nginx.org/download/nginx-[version].tar.gz
sudo tar -xvzf nginx-[version].tar.gz
sudo git clone --depth 1 https://github.com/SpiderLabs/ModSecurity-nginx.git

cd nginx-[version]
sudo ./configure --with-compat --add-dynamic-module=../ModSecurity-nginx
sudo make modules
sudo cp objs/ngx_http_modsecurity_module.so /etc/nginx/modules/

Khai báo file động vừa tải ở đầu file cấu hình /etc/nginx/nginx.conf để nginx nhận nạp được thư viện này:

load_module modules/ngx_http_modsecurity_module.so;

4. Download và Tích Hợp OWASP CRS

ModSecurity sau khi cài sẽ ở chế độ không bắt lỗi. Bạn phải kết nối nó với thư viện rule đồ sộ chuẩn OWASP. Để lấy thư viện này từ github:

cd /opt
sudo git clone https://github.com/coreruleset/coreruleset.git
cd coreruleset
sudo mv crs-setup.conf.example crs-setup.conf
sudo cp -r rules/ /etc/modsecurity/
sudo cp crs-setup.conf /etc/modsecurity/

5. Kích Hoạt Blocking Mode

Khi các rule đã được thiết lập, mở file cấu hình /etc/modsecurity/modsecurity.conf bằng công cụ edit và tìm dòng: SecRuleEngine DetectionOnly. Bạn sẽ thay thế tham số đó như sau:

SecRuleEngine On

Lưu file và restart server (Apache hoặc Nginx) và kiểm tra bằng một lệnh gửi dữ liệu độc hại. Bạn nên nhận được mã lỗi HTTP 403 Forbidden.

6. Bảng Phân Tích Đường Dẫn Cấu Hình (Cheatsheet)

Thành phần Trên Apache Trên Nginx
Cấu hình chính (Main Config) /etc/apache2/mods-enabled/security2.conf /etc/nginx/nginx.conf
Thư mục chứa Rule Engine /etc/modsecurity/ /etc/nginx/modsec/

Mặc dù WAF bảo vệ cực tốt nhưng do độ quá nhạy cảm, bạn hãy chủ động giám sát logs định kỳ qua /var/log/modsec_audit.log để White-list lại những IP hay Request hợp pháp của người dùng thông thường.

FN

FixNhanh Infrastructure Team

Specialists in server administration, security, and cloud automation. We strive to provide the most accurate and up-to-date technical guides for the community.

Leave a Comment

1 Comment(s)

d
Apr 2, 2026, 12:52 am

fdf

FixNhanh Support
Hello! How can I help you with Linux or Windows today?