Hướng dẫn bảo vệ wp-admin|wp-login.php tránh bị tấn công dò mật khẩu (brute-force) cho website WordPress

Bài viết này sẽ hướng dẫn các bạn cách thực hiện bảo vệ wp-admin|wp-login.php (secure wp-login.php) tránh bị tấn công dò mật khẩu (brute-force) cho website WordPress đơn giản nhất bằng file .htaccess

Hiện tại rất nhiều website sử dụng WordPress đều đang đối mặt với tình trạng bị các request ở dạng POST gửi liên tục vào file wp-login.php nhằm mục đích xấu. Điều này gây mất an toàn cho website của các bạn cũng như trong một số trường hợp gây quá tải cho Hosting/VPS mà các bạn đang sử dụng.

Để khắc phục tình trạng này thì có rất nhiều cách như cài thêm các plugin hỗ trợ tuy nhiên ở bài viết này 7Host sẽ hướng dẫn các bạn 2 cách thực hiện bảo mật đơn giản nhất bằng file .htaccess

Bảo vệ bằng cách chặn IP

Cách đơn giản nhất để thực hiện là chặn toàn bộ các IP lạ truy cập vào wp-admin và chỉ cho phép duy nhất một số các IP nhất định được phép truy cập.

– Kiểm tra IP đang sử dụng trên mạng internet tại các trang web như: IP7HostAPP | Whatismyipaddrees? | Showmyip

– Thực hiện truy cập vào public_html chứa website WordPress cần bảo vệ và tìm đến file .htaccess điền vào nội dung sau:

Order Deny,Allow

Deny from all

Allow from 1.2.3.4

Trong đó 1.2.3.4 là IP nơi các bạn cần truy cập vào wp-admin.  Trong trường hợp có nhiều IP cần cho phép các bạn có thể thêm dòng Allow from nhiều lần. Bên cạnh đó việc khai báo IP theo subnet cũng được chấp nhận tại đây.

Lưu ý: cách này chỉ hiệu quả trong trường hợp mạng internet nơi bạn sử dụng là IP tĩnh và không bị thay đổi liên tục. Trường hợp IP thay đổi liên tục, IP động thì mỗi lần IP bị thay đổi các bạn cần update lại file này với IP mới thì mới truy cập được wp-admin.

 

Bảo vệ bằng cách đặt mật khẩu truy cập

Cách này sẽ phức tạp hơn so với việc chặn theo IP, tuy nhiên sẽ tiện lợi hơn trong quá trình sử dụng vì chỉ cần có mật khẩu và username thì có thể truy cập được từ bất cứ nơi đâu.

– Truy cập site htaccesstools và điền một username/password bất kì mà bạn có thể nghỉ ra sau đó chọn Create. Tại đây sẽ xuất hiện 1 khung text với nội dung loằn ngoằn ở dạng:

7host:$apr1$J4yDfBt/$Qsbnq98Kry2QsPiPgKkY5.

7host: username đã chọn

$apr1$J4yDfBt/$Qsbnq98Kry2QsPiPgKkY5.: đoạn mật khẩu trước đó tạo ra và đã được mã hóa

Các bạn copy toàn bộ nội dung này.

– Truy cập vào public_html của website WordPress cần cấu hình bảo mật và tạo file .htpasswd với nội dung là toàn bộ đoạn code đã tạo ra trước đó.

wp2

– Tiếp tục tìm đến file .htaccess mặc định trước đó và thêm vào nội dung:

<FilesMatch "wp-login.php">

AuthName "Authorized Only"

AuthType Basic

AuthUserFile /home/username/public_html/.htpasswd

require valid-user

Ở đây các bạn lưu ý đoạn AuthUserFile cần khai báo chính xác đường dẫn đang đặt file .htpasswd thì mới hoạt động được. Sau khi thêm vào kiểm tra lại truy cập vào wp-login.php hoặc wp-admin chúng ta sẽ hiện ra một bảng xác nhận như hình dưới là thành công.

wp3

Chúc các bạn thành công trong việc cấu hình bảo mật wp-admin của mình. Nếu gặp vấn đề trong quá trình thực hiện, các bạn có thể liên hệ ngay với đội ngũ hỗ trợ 7Host Việt Nam tại [email protected] hoặc website https://www.7host.vn

 

Hướng dẫn xử lý lỗi yêu cầu đăng nhập FTP khi cài đặt Plugin trên WordPress

Hướng dẫn quản lý Website WordPress với công cụ WordPress Toolkit trên cPanel

Hướng Dẫn Tùy Chỉnh PHP Version Trên DirectAdmin

Hướng dẫn cài đặt Website WordPress với công cụ WordPress Toolkit trên cPanel

Khắc phục lỗi “PHPMyAdmin Require PHP version” trên DirectAdmin

Hướng Dẫn Cài Đặt Nhiều Phiên Bản PHP Trên DirectAdmin

Hướng dẫn truy cập phpMyAdmin trên DirectAdmin

Hướng dẫn cài đặt plugin Really Simple SSL để hiển thị khóa xanh với các website WordPress