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

Views: 44 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