Bảo vệ thư mục wp-admin và wordpress dashboard bằng file .htaccess là một “thủ tục” quan trọng trong khi dựng site. Nếu hacker có thể truy cập vào wordress dashboard, họ có thể phá hoại mọi công sức của bạn. Một lớp bảo vệ dưới máy chủ có thể ngăn truy cập trái phép vào wordpress, ngoài ra còn bảo vệ nó khỏi các lỗ hổng zero-day trong các tập lệnh wp-admin.
Bài viết này trình bày cách bảo vệ wp-admin bằng HTTP authentication. Lớp bảo vệ bổ xung này sẽ ngăn truy cập trái phép vào các file trong wp-admin folder.
Các bước thực hiện đặt mật khẩu truy cập cho WordPress wp-admin folder.
Tạo file .htpasswd chứa mật khẩu bảo vệ wp-admin folder.
Để đặt mật khẩu bảo vệ cho WordPress Admin bạn phải tạo Apache htpasswd file. File .htpasswd là một tệp chứa thông tin username và password sử dụng cho việc xác minh đăng nhập vào server. Để tạo file htpasswd bạn có thể dùng công cụ online hoặc tham khảo bài viết cách tạo file Apache htpasswd.
Tạo Apache htaccess file
Sau khi có file htpasswd, bạn phải tạo file .htaccess vào upload vào thư mục wp-admin trên webhosting. Nếu trên host chưa có file .htaccess bạn cần tạo mới. Nếu đã có file .htpassword bạn cần backup file đó và chỉnh sửa lại.
Lưu ý: Nếu bạn upload file lên host bằng ftp client, thi thoảng không thấy file .htaccess. Để kiểm tra bạn phải bật tính năng xem file ẩn trên FTP client.
Một vài hệ điều hành như windows không cho tạo file .htaccess. Khi đó hãy dùng notepad++ để tạo file sau đó thêm nội dung vào file .htaccess như sau:
# enable basic authentication AuthType Basic # this text is displayed in the login dialog AuthName “Restricted Area” # The absolute path of the Apache htpasswd file. You should edit this AuthUserFile /path/to/.htpasswd # Allows any user in the .htpasswd file to access the directory require valid-user
Lưu file lại và upload nó vào thư mục WordPress wp-admin của website. Sau khi hoàn thành, mọi truy cập đến http://[yourdomain.com]/wp-admin, hay login vào WordPress Dashboard đều phải qua bước đăng nhập mật khẩu. Bên dưới là ảnh chụp màn hình xác thực đăng nhập vào wp-admin
Chú ý: Basic HTTP authentication dễ thiết lập và sử dụng. Tuy nhiên cần lưu ý là nó gửi dữ liệu lên internet bằng Base64 Encoded và plain text. Nếu muốn tăng bảo mật bạn nên sử dụng kết nối HTTPS.
Những lỗi thường gặp khi sử dụng HTTP authentication
Theo các bước trên để bảo vệ thư mục wp-admin của bạn là khá đơn giản. Nếu sau cài HTTP authentication, bạn truy cập thư mục wp-admin và gặp lỗi HTTP 500. Đây là lỗi máy chủ nội bộ, hãy kiểm tra đường dẫn AuthUserFile. (hãy chỉ định đường dẫn tuyệt đối trong thư mục máy chủ).
Cho phép sử dụng chức năng Ajax từ front end
Một số WordPress Plugins sử dụng Ajax. Nếu bạn dùng các Plugins này thì phải cho phép truy cập file admin-ajax.php trong thực mục wp-admin. Mở file .htaccess mới tạo và thêm nội dung sau:
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
Tổng kết
Qua bài viết bạn đã có thể bảo vệ WordPress wp-admin folder bằng mật khẩu. Nên đặt mật khẩu có độ phức tạp cao để không bị tấn công dò mật khẩu. Nếu bạn chưa biết cài wordpress. Hãy tham khảo: Hướng dẫn cài wordpress để tự cài cho mình một website blog nhé!
Chúc các bạn thành công!