ModSecurity WAF
HƯỚNG DẪN QUẢN LÝ MODSECURITY WAF TRÊN VPANEL
ModSecurity là Web Application Firewall (WAF) mã nguồn mở, tích hợp sẵn trong OpenLiteSpeed để chặn các cuộc tấn công ở tầng HTTP: SQL injection, XSS, LFI, RFI, path traversal, bot độc hại và các mẫu tấn công OWASP Top 10. vPanel đóng gói sẵn OWASP Core Rule Set (CRS) và cung cấp giao diện đồ họa để bật/tắt toàn server, quản lý từng rule, xem audit log và ghi đè cấu hình cho từng domain.
1. Truy cập trang quản lý ModSecurity
Đăng nhập Admin Panel trên cổng :2087. Ở thanh menu trái, mở Security và nhấn ModSecurity WAF.

Tổng quan giao diện
| Thành phần | Mô tả |
|---|---|
| Master Switch | Công tắc bật/tắt ModSecurity toàn server. |
| Engine Mode | Chọn On (chặn), DetectionOnly (chỉ ghi log), hoặc Off. |
| Paranoia Level | Mức paranoia của OWASP CRS từ 1 (lỏng) đến 4 (nghiêm ngặt). |
| Rules blocked (24h) | Số request đã bị chặn trong 24 giờ qua. |
| Top attackers | Các địa chỉ IP tấn công nhiều nhất trong kỳ hiện tại. |
Bật / tắt ModSecurity
- Bật công tắc Master Switch sang On để kích hoạt WAF cho toàn bộ domain.
- Nếu một domain gặp false positive, hãy chuyển tạm sang DetectionOnly để chỉ ghi log mà không chặn traffic thật.
- Nhấn Save & Reload — vPanel ghi cấu hình mới và reload OpenLiteSpeed.
Cấu hình khởi đầu khuyến nghị: Engine = On, Paranoia = 1. Nâng paranoia sau khi đã theo dõi log ít nhất một tuần.
2. Quản lý các Rule WAF
Mở tab Rules để xem toàn bộ danh sách rule.

Bảng Rule
| Cột | Mô tả |
|---|---|
| Rule ID | ID duy nhất của OWASP CRS (ví dụ 942100, 941110). |
| Category | Nhóm tấn công mà rule nhận diện (SQLi, XSS, RCE, LFI…). |
| Severity | Mức độ nghiêm trọng: CRITICAL, WARNING, NOTICE. |
| Description | Mô tả ngắn rule khớp với mẫu nào. |
| Status | Rule đang Enabled hay Disabled. |
| Actions | Công tắc Enable / Disable và nút Details. |
Tắt một Rule
Khi một rule liên tục kích hoạt trên traffic hợp lệ:
- Mở Details để đọc mô tả và hiểu rule khớp mẫu nào.
- Kiểm tra audit log (mục 3) để xác nhận request là hợp lệ.
- Tắt công tắc Status trên hàng của rule đó.
- Nhấn Save & Reload để áp dụng.
Tắt rule cốt lõi làm giảm mức bảo vệ. Nên ưu tiên whitelist URI hoặc tham số cụ thể thay vì tắt rule toàn server.
Lọc
Dùng ô Search để lọc theo rule ID hoặc từ khóa. Kết hợp với dropdown Category để xem tất cả rule cùng nhóm.
3. Xem Audit Log
Mở tab Audit Log để xem các request đã được ModSecurity ghi nhận hoặc chặn.

Bảng log
| Cột | Mô tả |
|---|---|
| Time | Thời điểm sự kiện. |
| Source IP | Địa chỉ IP client. |
| Domain | Domain nhận request. |
| URI | Đường dẫn request. |
| Rule ID | ID rule đã kích hoạt. |
| Action | blocked, logged, hoặc warned. |
| Details | Nút mở chi tiết request. |
Lọc log
- Timeframe: 1 giờ, 24 giờ, 7 ngày, hoặc tùy chỉnh.
- Domain: chỉ hiển thị sự kiện của một domain.
- Action: chỉ lọc sự kiện
blocked. - Source IP: truy vết một IP đáng ngờ.
Phân tích sự kiện
Nhấn Details để xem:
- Full request — headers, body và query string.
- Matched rule — nội dung rule và payload bị match.
- Response action — HTTP status trả về client (thường là
403).
Dựa vào đó bạn quyết định: whitelist URI, tắt rule, hoặc chặn IP ở tầng firewall (CSF).
4. Ghi đè cấu hình theo Domain
Mở tab Per-Domain Settings để cấu hình ModSecurity riêng cho từng website.

Các chế độ
| Chế độ | Ý nghĩa |
|---|---|
| Inherit | Kế thừa cấu hình toàn server (mặc định). |
| On | Ép ModSecurity bật cho domain này, kể cả khi tắt toàn cục. |
| DetectionOnly | Chỉ ghi log không chặn — hữu ích khi tinh chỉnh website mới. |
| Off | Tắt hoàn toàn ModSecurity cho domain — chỉ dùng cho app nội bộ tin cậy. |
Ngoại lệ theo Domain
Với mỗi domain, bạn có thể thêm các rule ID vào Ignore List — các rule này sẽ không kích hoạt trên domain đó nhưng vẫn hoạt động ở các domain khác. Định dạng: mỗi rule một dòng, ví dụ:
Code941100 942200 949110
Nhấn Save & Reload để áp dụng.
Khi thêm ngoại lệ, hãy ghi lý do vào ô Notes để admin sau này biết vì sao rule bị bỏ qua.
5. Xử lý sự cố
| Vấn đề | Nguyên nhân & Cách xử lý |
|---|---|
User hợp lệ nhận 403 | Rule CRS false positive. Xem audit log rồi whitelist URI hoặc tắt rule cụ thể. |
| ModSecurity không load | Cú pháp cấu hình lỗi. Chạy /usr/local/lsws/bin/lswsctrl restart và xem error.log. |
| CPU cao khi bật nhiều rule | Giảm paranoia hoặc tắt các nhóm rule không áp dụng (VD: rule PHP trên site Node.js). |
| Không có log | Master switch tắt, hoặc thư mục audit log không có quyền ghi. |
Chúc bạn quản trị Server an toàn và hiệu quả!
