12 Thủ thuật với file .htaccess mà bạn chưa bao giờ ngờ tới

Rất nhiều người chưa bao giờ quan tâm đến file htaccess khi dùng WordPress.

Đây là một trong những file khá quan trọng, có khả làm nhiều thứ mà bạn không tưởng được.

Từ nâng cao bảo mật, đến redirect một đường dẫn nào đó, hay tăng time out…..

Rất rất nhiều thứ hữu ích, nếu bạn tận dụng hết sức mạnh của nó.

Trong bài viết này tôi sẽ hướng dẫn bạn một số thủ thuật với file .htaccess có thể sử dụng.

Lưu ý: File .htaccess chỉ có trên web server Apache thôi nhé.

thu-thuat-file-htaccess

File htaccess ở đâu?

Trước khi bắt đầu, vẫn là câu mình hay nhắc các bạn.

Hãy sao lưu lại file .htaccess gốc trên website, nhỡ có lỗi gì còn backup lại ngay nhé.

Nếu bạn không thấy ở đâu, hãy đọc lại bài viết này của mình (hướng dẫn chi tiết).

Nó nằm ngay ngang hàng với những thư mục như /wp-content, wp-admin, wp-upload

file-htaccess-o-dau

1. Bảo vệ khu vực Admin trên WordPress

Bạn có thể dùng tệp tin .htaccess để bảo vệ khu vực quản trị WordPress.

Bằng cách chỉ có những địa chỉ IP được chọn mới được phép đăng nhập vào Admin.

Sao chép đoạn code sau dán vào file htaccess.

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# whitelist User1 IP address
allow from xx.xx.xx.xxx
# whitelist User2 IP address
allow from xx.xx.xx.xxx
# whitelist User3 address
allow from xx.xx.xx.xxx
# whitelist User4 IP address
allow from xx.xx.xx.xxx
# whitelist User5 address
allow from xx.xx.xx.xxx
</LIMIT>

Thay thế xx.xx.xx.xxx bằng địa chỉ IP của bạn.

Nếu bạn thường xuyên truy cập ở những địa chỉ IP khác nhau, hãy thêm tất cả nhé.

Ngoài ra bạn cũng có thể tham khảo thêm một số cách khác như:

2. Mật khẩu bảo vệ thư mục quản trị WordPress

Nếu bạn thấy việc giới hạn địa chỉ IP hơi rắc dối, vì bạn di chuyển liên tục.

Thì tôi sẽ cung cấp cho bạn 1 giải pháp khác. Đó là tạo mật khẩu cho Folder /wp-admin/

Sẽ có nhiều bạn đọc đến đây thắc mắc.

Để truy cập vào admin tôi đã phải đăng nhập rồi mà?

Đúng ! Nhưng thêm 1 lớp bảo mật nữa cũng là một biện pháp đúng không nào

Trước tiên hãy tạo 1 file .htpasswd. Truy cập vào đường dẫn này để tạo nhé.

Sau đó upload nó ở ngoài thư mục /public_html/ (không phải ở trong đâu nhé)

  • /home/user/.htpasswds/

Tiếp theo tạo 1 file .htaccess rồi

AuthName "Admins Only"
AuthUserFile /home/dieuhau/.htpasswds/
AuthGroupFile /dev/null
AuthType basic
require valid-user

Quan trọng : Đừng quên thay thế đường dẫn AuthUserFile bằng đường dẫn tới file .htpasswds của bạn và dieuhau là username tài khoản hosting của bạn.

3. Disable Directory Browsing

Tốt nhất là mình khuyên bạn nên tắt các chức năng truy cập thư mục qua trình duyệt (directory browsing).

Thông qua cách này hacker có thể truy cập vào các thư mục của bạn để tìm kiếm lỗ hổng.

directory-browsing

Đơn giản là thêm dòng code vào file .htaccess nhé.

Options -Indexes

Đọc hướng dẫn chi tiết này nhé cách tắt chức năng truy cập File từ trình duyệt.

4. Disable PHP Excecution trong một số thư mục

Hacker có thể tấn công website bạn bằng cài cắm backdoor.

Những tệp tin này thường giả dạng như tập tin chính và đặt trong thư mục /wp-includes/ hoặc /wp-content/uploads/.

Để tăng cường bảo mật hơn hãy disable thực thi PHP trong một số thư mục của WordPress.

Chèn đoạn code sau vào file htaccess. (tạo 1 file mới nhé)

<Files *.php>
deny from all
</Files>

Giờ thì hãy tải file này đến thư mục /wp-includes/ hoặc /wp-content/uploads/.

Đọc ngay bài hướng dẫn chi tiết này Vô hiệu thực thu PHP trong một vài thư mục WordPress

5. Bảo vệ file wp-config.php

File wp-config.php chính là một trong những file quan trọng nhất WordPress

Nó bao gồm các thông tin về cơ sở dữ liệu của WordPress và cách để kết nối đến trang web.

Để bảo vệ tệp tin wp-config.php khỏi các kẻ rình mò bên ngoài.

Hãy chèn đoạn code sau:

<files wp-config.php>
order allow,deny
deny from all
</files>

6. Thiết lập 301 redirect qua file .htaccess

Nếu phải redirect sang một URL mà không muốn ảnh hưởng đến SEO thì, 301 redirect chính là lựa chọn cho bạn.

Ngoài ra, nếu bạn chỉ muốn điều hướng người dùng từ url này sang url khác.

Tất cả những gì bạn cần làm đó thêm đoạn mã sau vào tập tin .htaccess.

Redirect 301 /oldurl/ http://www.example.com/newurl
Redirect 301 /category/television/ http://www.example.com/category/tv/

Hoặc dùng Yoast SEO Premium cho tiện, đỡ phải đụng đến code.

Xem qua cách tạo Redirect trong WordPress này nhé.

7. Chặn những địa chỉ IP đáng ngờ

Bạn thấy những request bất thường từ một địa chỉ IP nào đó?

Bạn muốn chặn không cho địa chỉ IP đó kết nối trang web của mình?

Hãy thêm mã dưới đây vào file .htaccess

<Limit GET POST>
order allow,deny
deny from xxx.xxx.xx.x
allow from all
</Limit>

Thay xxx bằng địa chỉ IP mà bạn muốn chặn.

8. Disable hotlinking hình ảnh

Việc bị ăn cắp cả ảnh lẫn ảnh trên website là chuyện hết bình thường.

Đôi khi bạn họ còn lấy trực tiếp ảnh từ website bạn, làm tốn băng thông.

Và có thể sẽ làm chậm website của bạn luôn.

Nếu bạn sở hữu website với nhiều hình ảnh thì hotlinking có thể trở thành một vấn đề nghiêm trọng.

Tuy vậy, bạn có thể ngăn chặn vấn đề này bằng cách thêm đoạn code sau:

#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?dieuhau.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L] 

Đừng quên thay dieuhau.com bằng tên miền của bạn.

9. Bảo vệ file .htaccess khỏi những kết nối không xác thực

Như bạn đã thấy, bạn có thể làm rất nhiều thứ với tệp tin .htaccess.

Nên bạn cần phải bảo vệ nó khỏi những kết nối đáng ngờ của hacker.

Hãy thêm mã này đến tệp tin .htaccess của bạn:

<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>

10. Tăng giới hạn size file Upload trên WordPress

Một trong những các để tăng dung lượng giới hạn file upload là bằng file .htaccess.

Chèn đoạn code sau vào file .htaccess nhé:

php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300

11. Vô hiệu hóa truy cập file XML-RPC

Mỗi khi cài đặt thành công WordPress sẽ có một file mặc định là xmlrpc.php.

File này cho phép ứng dụng của bên thứ 3 truy cập vào site WordPress.

Hãy tắt nó đi nếu bạn thực sự không cần đến nó.

Hãy dùng đoạn mã sau:

# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>

Đọc bài này Làm thế nào để vô hiệu hóa XML-RPC trong WordPress để rõ hơn về vấn đề này.

12. Chặn quét Author trên WordPress

Một trong những kỹ thuật tấn công brute force attack, đó là chạy quét tác giả trên site WordPress.

Sau đó cố gắng bẻ khóa mật khẩu với tên username đó.

Hãy chặn quét author bằng đoạn code sau:

# BEGIN block author scans
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (author=\d+) [NC]
RewriteRule .* - [F]
# END block author scans

Tìm hiểu thêm với bài Làm thế nào ngăn Brute Force bằng cách khóa Author Scan

Với tất cả những hướng dẫn trên tôi chỉ muốn nói với bạn rằng file htaccess rất quan trọng.

Hãy áp dụng những thủ thuật với file .htaccess để bảo mật WordPress site của bạn nhé.

Nếu có bất kỳ câu hỏi, cũng như vấn đề gì hãy comment ở dưới nhé.

Về tác giả

Duy Anh

Chào các bạn,

Mình là coder, đang sống và làm việc ở Mỹ. Mình thích viết lách nên muốn dành khoảng thời gian trống để chia sẻ các thủ thuật giúp các bạn xây dựng được trang web riêng của mình. Bạn nào cần xây dựng blog, web thì cứ ới, rảnh là mình giúp, tất cả FREE nhé!

Trả Lời

avatar
 
smilegrinwinkmrgreenneutraltwistedarrowshockunamusedcooleviloopsrazzrollcryeeklolmadsadexclamationquestionideahmmbegwhewchucklesillyenvyshutmouth
  Đăng ký  
Thông báo về