Home WordpressWordPress cơ bản Thêm lớp mật khẩu bảo vệ WP-Admin với .htaccess

Thêm lớp mật khẩu bảo vệ WP-Admin với .htaccess

by admincp

Bạn đã hoàn thiện phần thiết kế trang web WordPress và bạn muốn trình bầy đến khách hàng của bạn để xem nó, nhưng bạn lại không muốn những người khác thấy nó (chẳng hạn như chặn công cụ tìm kiếm lập chỉ mục trang web) , cho đến khi khách hàng của bạn đồng ý xuất bản chính thức.

HTTP Authentication thêm một lớp bảo mật thứ hai để bảo vệ khỏi các cuộc tấn công vào trang quản trị WordPress (wp-admin) – bằng cách yêu cầu người dùng phải xác minh thông tin 1 lần nữa. Sau khi bảo vệ thư mục WordPress wp-admin với file .htaccess , bạn sẽ cần thêm 1 tài khoản đăng nhập thứ 2 thông qua xác thực HTTP với tệp .htpasswd.

Tạo tập tin .htpasswd

Đầu tiên, chúng ta cần tạo 1 file có tên .htpasswd. Tập tin này sẽ lưu tên truy cập và mật khẩu được yêu cầu để truy cập vào trang web, và bạn nên lưu file ở bên ngoài thư mục public_html web. Vì nếu bạn để tập tin htpasswd ở cùng thư mục này thì tất cả mọi người sẽ có thể tải nó.

Bây giờ, chúng ta cần thêm một tên người dùng và mật khẩu được mã hóa vào tập tin .htpasswd. Để tạo chuỗi này bạn có thể truy cập vào tool miễn phí tại địa chỉ htaccesstools.com . Nhập tên người dùng và mật khẩu của bạn, và nhấn nút Generate sau đó copy chuỗi mã hóa & dán vào tập tin .htpasswd mới của bạn.

VD mình điền tên người dùng Bumble và mật khẩu beehive, và đây là chuỗi mã hóa trả về:

bumble:$apr1$.0usU.LQ$w0l8VAsgvdMGnNAAjQiVn0

Lưu tập tin và tải nó lên thư mục web, mình sẽ upload vào thư mục $HOME/ trên hosting WordPress.

Tìm đường dẫn tập tin .htpasswd

Bây giờ, chúng ta cần biết đường dẫn tuyệt đối đến tập tin htpasswd , bởi vì bạn sẽ phải nhập trong file .htaccess. Cách đơn giản nhất để làm điều này là sử dụng hàm phpinfo().

Tạo một tập tin tên info.php và chèn hàm phpinfo(); vào file. Tiếp đó Upload file này vào thư mục gốc của trang web (trong cùng thư mục chứa tập tin wp-config.php) và chạy file info.php trong trình duyệt của bạn.

Trang web sẽ hiển thị toàn bộ thông tin cài đặt PHP, kéo xuống gần cuối , có một bảng màu tím ghi “PHP Variables” . Trong bảng này bạn tìm đến mục $_SERVER[“DOCUMENT_ROOT”]. Nó trông như sau:

/var/sites/mydomain.com/public_html

Đó là đường dẫn tới thư mục gốc chứa các tệp tin cài đặt WordPress của website, như vậy chúng ta có thể đặt file .htpasswd trong thư mục:

/var/sites/mydomain.com/

Lưu ý: ngay sau khi bạn đã tìm được đường dẫn, hãy xóa tập tin info.php trên host vì nó có thể để lộ thông tin cho hacker tấn công vào hệ thống của bạn và đó là một nguy cơ bảo mật xấu.

Chỉnh sửa tập tin .htaccess

Tập tin .htaccess trong thư mục gốc của trang web WordPress mặc định sẽ trông giống như thế này:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Chúng ta thêm vào các dòng sau đây vào cuối của tập tin, sau dòng # END WordPress:

AuthType Basic
AuthName "Restricted Area"
AuthUserFile /var/sites/mydomain.com/.htpasswd
require valid-user

Văn bản bên trong dấu ngoặc kép là thông điệp mà bạn sẽ được thấy trên popup yêu cầu người dùng nhập lớp mật khẩu thứ 2.

AuthUserFile là đường dẫn đến tập tin .htpasswd mà bạn xác định trước đó.

Sau Khi đã cập nhật lại tập tin .htaccess, hãy thử truy cập vào trang đăng nhập web wordpress của bạn trên trình duyệt. Bạn sẽ thấy rằng một cửa sổ bật ra thông báo yêu cầu nhập tên người dùng và mật khẩu.

Xác thực HTTP là dễ thực hiện nhất nhưng hãy nhớ rằng mật khẩu được mã hóa dạng Base 64. Nếu bạn muốn có một giải pháp an toàn hơn bạn nên sử dụng chứng thực qua giao thức HTTPS.

LƯU Ý: Để gỡ bỏ mật khẩu bảo vệ, bạn xóa các dòng đã thêm vào .htaccess, và sau đó xóa tập tin .htpasswd.

Cho phép chức năng Ajax trên frontend

Một số plugin wordpress sử dụng chức năng Ajax trong WordPress. Điều này có nghĩa rằng các plugin đó có thể cần truy cập vào tập tin admin-ajax.php mà có thể được tìm thấy trong thư mục wp-admin. Để cho phép truy cập nặc danh đến tập tin này để các plugin WordPress hoạt động chính xác, thêm mã dưới đây vào file .htaccess mà bạn vừa tạo ra trong hướng dẫn này.

<Files admin-ajax.php>
    Order allow,deny
    Allow from all
    Satisfy any
</Files>

Chúc bạn thành công.

Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Vinastar trên TwitterFacebook

Liên hệ

Công ty chuyên Thiết kế website uy tín nhất Miền Bắc: http://vinastar.net

Hotline tư vấn: 0989 48 3456

Nguồn: Sưu tầm trên internet

You may also like

Leave a Comment