Cách tạo file .htaccess để chặn IP truy cập website (đơn giản & hiệu quả)

Views: 5 18/03/2026 09:43
Cách tạo file .htaccess để chặn IP truy cập website (đơn giản & hiệu quả)

1. File .htaccess là gì?

.htaccess là file cấu hình dùng trên server Apache / LiteSpeed, cho phép bạn:

  • Chặn IP truy cập

  • Redirect URL

  • Tăng bảo mật website

  • Tối ưu tốc độ

2. Khi nào nên block IP?

Bạn nên chặn IP khi:

  • Bị bot scan liên tục

  • Có IP tấn công brute force

  • Spam request gây nặng server

  • IP từ các VPS/cloud (AWS, DO, Tencent...)

3. Tạo file .htaccess cơ bản

Nếu chưa có file .htaccess, tạo file mới trong thư mục:

public_html/.htaccess

4. Cấu hình chặn IP đơn lẻ

# Block 1 IP
Deny from 123.123.123.123

5. Chặn nhiều IP cùng lúc

# Block nhiều IP
Deny from 123.123.123.123
Deny from 111.222.333.444
Deny from 99.88.77.66

6. Chặn cả dải IP (rất quan trọng)

Ví dụ chặn toàn bộ dải:

# Block subnet
Deny from 45.41.0.0/16

Nghĩa là chặn:

45.41.0.0 → 45.41.255.255

7. Cách viết chuẩn cho Apache 2.4

Nếu server bạn dùng Apache mới:

<RequireAll>
Require all granted
Require not ip 45.41.0.0/16
Require not ip 123.123.123.123
</RequireAll>

8. Chặn theo User-Agent (bot)

RewriteEngine On

# Block bot phổ biến
RewriteCond %{HTTP_USER_AGENT} (curl|wget|python|scrapy) [NC]
RewriteRule ^ - [F,L]

9. Chặn method nguy hiểm (CONNECT)

RewriteCond %{REQUEST_METHOD} ^CONNECT [NC]
RewriteRule ^ - [F,L]

10. Mẫu file .htaccess hoàn chỉnh (khuyên dùng)

RewriteEngine On

# ======================
# BLOCK IP
# ======================
Deny from 45.41.0.0/16
Deny from 152.42.0.0/16
Deny from 185.16.39.0/24
Deny from 123.123.123.123

# ======================
# BLOCK BOT
# ======================
RewriteCond %{HTTP_USER_AGENT} (curl|wget|python|scrapy) [NC]
RewriteRule ^ - [F,L]

# ======================
# BLOCK CONNECT METHOD
# ======================
RewriteCond %{REQUEST_METHOD} ^CONNECT [NC]
RewriteRule ^ - [F,L]

11. Kiểm tra hoạt động

Sau khi thêm rule:

  • Truy cập bằng IP bị block → sẽ thấy lỗi 403 Forbidden

  • Hoặc test bằng curl:

curl -I http://yourdomain.com

12. Lưu ý quan trọng

.htaccess càng dài → càng tốn CPU
Không nên block quá nhiều IP ở đây

Tốt nhất:

  • Block ít IP trong .htaccess

  • Block nhiều IP bằng firewall (iptables / CSF)

block ip htaccess chặn ip website deny ip apache htaccess security block ip litespeed cách chặn ip server htaccess cơ bản bảo mật website htaccess