Bảo mật toàn diện cho WordPress


Bảo vệ thư mục bằng file .htaccess
Khi cần ngăn cản sự truy cập trái phép vào một thư mục nào đó trong website, ta thường tạo một file .htaccess chứa trong thư mục đó. Cụ thể với WordPress, bạn có thể sử dụng file .htaccess để ngăn sự truy cập vào thư mục wp-content và wp-admin.

– Bảo mật thư mục wp-admin:
Vào phần quản lý hosting (tuỳ vào từng loại hosting mà trình điều khiển là Cpanel, Helm, hay DirectAdmin,…), chọn File Manager, vào thư mục chứa WordPress (giả sử tên là wordpress), chọn tiếp thư mục wp-admin, tại đây bạn bấm New File để tạo một file mới, đặt tên là .htaccess. Sau khi tạo xong, bạn sẽ không thể thấy được file .htaccess trong File Manager (do đây là file cấu hình nên được đặt thuộc tính ẩn). Do đó, bạn hãy sử dụng FlashFXP để xem và chỉnh sửa file này. Tải FlashFXP phiên bản mới nhất tại đây.
Sau khi kết nối đến website, vào thư mục www/wordpress/wp-admin, bấm phải vào file .htaccess, chọn Edit.

WordPress: Bảo mật toàn diện
Chỉnh sửa file .htaccess

Trong cửa sổ chỉnh sửa file .htaccess, bạn gõ vào dòng sau:
Order Deny,Allow
Allow from ww.xx.yy.zz
Deny from all

Với lệnh trên, bạn sẽ ngăn cản được sự truy cập của bất cứ ai vào thư mục wp-admin, ngoại trừ người có địa chỉ IP là ww.xx.yy.zz. Bạn có thể truy cập vào http://www.ip2location.com để xem địa chỉ IP của mình. Tuy nhiên, bạn chỉ nên sử dụng cách này nếu IP của bạn là IP tĩnh.
Nếu muốn ngăn cấm sự truy cập vào wp-admin đối với tất cả mọi người, kể cả bạn thì bạn bỏ dòng Allow from ww.xx.yy.zz đi. Về sau, khi người khác vào wp-admin sẽ bị chuyển về trang chủ website.

– Bảo mật thư mục wp-content:
Tương tự như cách làm với wp-admin, bạn tạo file .htaccess trong thư mục wp-content, với nội dung:

Order Allow,Deny
Deny from all

Hai dòng trên giúp cho thư mục wp-content được bảo vệ khỏi người khác. Nếu muốn quy định một vài định dạng file mà người khác có thể xem trong thư mục wp-content thì bạn thêm vào 2 dòng sau, trong ví dụ sau thì các file jpg, gif, png, js, css được phép truy cập:


Allow from all

– Bảo vệ file wp-config.php:

File wp-config.php chứa các thiết lập quan trọng của website nên bạn cần phải bảo vệ file này khỏi sự “dòm ngó” của người khác. Vào thư mục www/wordpress, tìm đến file .htaccess, thêm vào đoạn sau:

order allow,deny
deny from all

Sử dụng Plugin
Khi cần bảo mật cho WordPress một cách nhanh chóng, bạn nên sử dụng các plugin hỗ trợ, việc này giúp bạn tiết kiệm thời gian hơn khi làm thủ công bằng tay.
Để cài đặt plugin cho WordPress, bạn upload thư mục chứa plugin vào thư mục wp-content/plugins. Tiếp theo vào trình quản lý blog, chọn mục Plugins > bấm Activate để kích hoạt plugin cần sử dụng.
Sau đây là 2 plugin khá hiệu quả để chống virus cũng như sự xâm nhập của người khác.

1. AntiVirus:
Bạn tải plugin AntiVirus tại đây, plugin tương thích với WordPress 2.5 đến 2.9.2. Sau khi kích hoạt, vào mục Settings > Antivirus để thiết lập lại.
Sau khi được kích hoạt, plugin sẽ tự động quét virus, trojan, worm,… trên website, và sẽ xoá bỏ chúng đi. Bạn nên đánh dấu vào dòng Enable the daily antivirus scan and send me an email if suspicion on a virus để plugin tự động quét vào mỗi ngày và gửi email thông báo đến bạn nếu phát hiện có virus.

WordPress: Bảo mật toàn diện
Nhận thông tin về virus qua email, quét các file trong template

Bên cạnh đó, plugin còn giúp bạn quét được các đoạn mã độc trong theme mà bạn sử dụng. Bấm Scan the templates now để quét. Antivirus sẽ quét tất cả các file php chứa trong theme và đưa ra các đoạn mã “bất thường” trong các file này.

2. WP Security Scan:
Bạn tải plugin tại đây, plugin tương thích với WordPress 2.3 đến 2.9.2. Sau khi kích hoạt, bấm vào mục Security tại thanh menu bên trái, sẽ thấy xuất hiện các tuỳ chọn sau:

WordPress: Bảo mật toàn diện
Truy cập plugin

 Security: đưa ra các lời nhắc nhở về độ an toàn của blog. Để sửa lỗi, bạn hãy truy cập vào các tuỳ chọn tiếp theo sau đây.
– Scanner: tự động kiểm tra xem các tập tin, thư mục quan trọng trong WordPress đã được CHMOD cẩn thận chưa. CHMOD là lệnh giúp bạn giới hạn quyền truy cập (gồm ReadWrite, Executive) của từng nhóm người. Nếu CHMOD không đúng website sẽ rất dễ bị xâm nhập vào. Cột Needed Chmod đưa ra lời gợi ý CHMOD cho từng tập tin, thư mục, và cột Current Chmod cho biết tình trạng CHMOD hiện thời trên website của bạn. Nếu 2 cột không giống nhau, bạn nên CHMOD lại theo như cột Needed Chmod. Để CHMOD, cách nhanh nhất là dùng FlashFXP, bấm phải vào tên tập tin cần CHMOD, chọn Attributes, tại hộp thoại hiện ra, gõ giá trị CHMOD vào khung Permissions (ví dụ 644, 755,…).

Gợi ý CHMOD cho thư mục

– Password Tool: đây là công cụ kiểm tra độ an toàn của mật khẩu quản trị, bạn chỉ cần nhập password vào khung Type password, sẽ có một dòng chữ hiện ra bên dưới cho biết độ mạnh của password này (mức mạnh nhất là Strongest). Bên cạnh đó, bạn còn được cung cấp một password ngẫu nhiên, với độ an toàn cao.
– Database: SQL Injection là kiểu tấn công tập trung vào cơ sở dữ liệu để thu thập thông tin từ các table quan trọng, do đó bạn nên tăng cường bảo mật cho cơ sở dữ liệu bằng cách thay đổi prefix của cơ sở dữ liệu (prefix mặc định khi cài WordPress là wp_). Để đổi lại giá trị prefix, bạn gõ tên prefix mới tại dòng Change the current, sau đó bấm Start renaming.

Sau khi đã đổi prefix xong, khi truy cập vào trang quản trị bạn chỉ thấy dòng chữ You do not have sufficient permissions to access this page
Cách sửa lỗi:
 Vào phpMyAdmin, chọn table usermeta bên trái, bấm nút Browse bên trên, tìm dòng có giá trị Meta key wp_capabilities, bấm vào biểu tượng WordPress: Bảo mật toàn diện ở đầu dòng, tại trang tiếp theo bạn sửa lại giá trị wp-capabilities thành giá trịprefixmới_capacibilites (ví dụ abc_capabilities). Sửa xong, bấm Go để lưu lại vào truy cập lại vào trang quản trị.

WordPress: Bảo mật toàn diện
Thay đổi prefix phòng tránh SQL Injection

Thay đổi tên admin
Mặc định username quản trị trong WordPress là admin, bạn nên thay đổi lại username này để an toàn hơn.
Vào phpMyAdmin, chọn table users, bấm Browse, tìm đến dòng có user_login là admin, bấm biểu tượng WordPress: Bảo mật toàn diện để sửa lại giá trị này. Tương tự như sửa giá trị prefix bên trên, tại dòng user_login, bạn đổi admin lại thành một tên khác khó nhận biết hơn.

(Theo e-CHÍP)