Giới hạn IP đăng nhập vào WordPress Admin với file .htaccess.
File .htaccess (có trên server Apache, LiteSpeed) là một trong những tập tin rất quan trọng đối với blog/ website WordPress. Nó không chỉ giúp tạo permalink thân thiện với công cụ tìm kiếm, tăng tốc độ load mà còn tăng cường khả năng bảo mật. Trong những bài viết trước đây, tôi đã giới thiệu cho các bạn nhiều phương pháp khác nhau để chống Brute Force Attacks rồi phải không nào. Và hôm nay, thêm một lựa chọn nữa giúp các bạn làm điều đó.
Tham khảo thêm:
- Tổng hợp thủ thuật với file .htaccess trong WordPress
- Bảo mật WordPress bằng file .htaccess
- Tăng tốc blog WordPress của bạn bằng cách sử dụng .htaccess
Ngay sau đây, tôi sẽ hướng dẫn cho các bạn cách giới hạn IP đăng nhập vào WordPress Admin thông qua việc sử dụng file .htaccess.
Giới hạn IP đăng nhập WordPress Admin
Lưu ý: nếu bạn không biết chính xác IP mà mình đang sử dụng, hãy kiểm tra bằng công cụ sau đây.
Trường hợp sử dụng IP tĩnh (Static IP Addresses)
Nếu bạn sử dụng IP tĩnh (thường là máy tính để bàn, máy tính xác tay) và chỉ có bạn là người dùng duy nhất trên blog/ website, hãy thêm đoạn code sau đây vào file .htaccess trong thư mục gốc, nơi chứa bộ cài WordPress.
ErrorDocument 401 /path-to-your-site/index.php?error=404
ErrorDocument 403 /path-to-your-site/index.php?error=404</p>
<p><IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteCond %{REMOTE_ADDR} !^IP Address One$
RewriteCond %{REMOTE_ADDR} !^IP Address Two$
RewriteCond %{REMOTE_ADDR} !^IP Address Three$
RewriteRule ^(.*)$ - [R=403,L]
</IfModule>
Trong đó:
- Thay path-to-your-site bằng path đến file index.php trong thư mục gốc của WordPress (nằm ngang hàng với file wp-config.php).
- Thay One, Two, Three bằng các địa chỉ IP tĩnh của bạn. Bạn có thể xóa bớt dòng (từ 8 đến 10) nếu có ít IP hơn hoặc bổ sung thêm dòng nếu có nhiều IP. Mỗi dòng tương ứng với 1 IP.
Lưu file .htaccess lại và kiểm tra kết quả.
Trường hợp sử dụng IP động (Dynamic IP Addresses)
Nếu bạn sử dụng IP động (thường là điện thoại di động, máy tính bảng) hoặc có nhiều người dùng trên blog/ website của bạn, hãy thêm đoạn code sau đây vào file .htaccess trong thư mục gốc của WordPress.
ErrorDocument 401 /path-to-your-site/index.php?error=404
ErrorDocument 403 /path-to-your-site/index.php?error=404</p>
<p><IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{HTTP_REFERER} !^http://(.*)?your-site.com [NC]
RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteRule ^(.*)$ - [F]
</IfModule>
Trong đó:
- Thay path-to-your-site bằng path đến file index.php trong thư mục gốc của WordPress (nằm ngang hàng với file wp-config.php).
- Thay your-site.com bằng tên miền của bạn.
Code này sẽ giúp hạn chế Brute Force Attacks trang đăng nhập của WordPress, trong khi vẫn cho phép người dùng truy cập vào blog/ website của bạn một cách bình thường.
Lưu file .htaccess lại và kiểm tra kết quả.
Trong trường hợp gặp lỗi đăng nhập, các bạn chỉ cần truy cập vào file .htaccess và loại bỏ code đi là được. Thật đơn giản phải không nào? Chúc các bạn thành công!
Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)
Admin cho e hỏi. E muốn giới hạn ip truy cập website e trong 1 ngày thì có cách nào, hay plugin nào ko ạ. Ví dụ tất cả các ip người dùng chỉ được truy cập xem tối đa 50 lần trên 1 ngày
Sẵn cho e hỏi thêm. nếu chặn những IP BAN như vậy có bị ảnh hưởng đến Seo ko..
E cám ơn ạ
Cảm ơn bạn. Nhưng cái này và phần câu hỏi bảo mật cái nào tốt hơn bạn?
Bạn có thể kết hợp cả 2. :)
bạn hiếu cho mình hỏi là khi up web từ localhost lên hosting thì những gì mình làm ở local có được giữ nguyên không nhỉ. các plugin và cài đặt bên trong của chúng nữa. hay nó chỉ giữ đc cái bài viết thôi còn các plugin mình vẫn phải cài lại và điều chỉnh lại. để mình còn làm không mất công làm cái web thật đẹp rồi up lên lại về 0 thì mệt lắm :D :D
Giữ được hết bạn nhé. :P