Cách đây không lâu, plugin hỗ trợ bảo mật khá nổi tiếng Better WP Security đã tiến hành sáp nhập vào iThemes và đổi tên thành iThemes Security. Điều này cũng có nghĩa là nó đã được thay đổi lại một số tính năng cũng như cách sử dụng hoàn toàn khác. Do vậy nếu bạn chưa hiểu các tùy chọn cũng như các thiết lập trong iThemes Security thì cũng không cần lo lắng vì ở bài này mình sẽ hướng dẫn về iThemes Security đầy đủ nhất.
Cấu hình hosting thích hợp
Plugin này được thiết kế để làm việc trên máy chủ Apache, do đó nếu bạn dùng NGINX thì sẽ không sử dụng được các chức năng như đổi đường dẫn admin, block spam bots trừ khi bạn có thể tự cấu hình được. Vì vậy, mình khuyến khích mọi người nên sử dụng plugin này cho các gói shared host thông thường .
Cách sử dụng iThemes Security
![search-ithemes-security](https://thachpham.com/wp-content/uploads/2014/05/search-ithemes-security.jpg)
Tìm và cài plugin iThemes Security
Ngay sau khi cài xong, hãy ấn nút Secure Your Site Now để bắt đầu thiết lập. Sau đó bạn chỉ cần click vào 2 tùy chọn như trong ảnh và ấn nút Dismiss để kết thúc.
Sau đó bạn chuyển qua tab Settings và bắt đầu tìm hiểu các tùy chọn của nó.
Ở đó có phần Go to là thanh điều hướng, khi bạn chọn từng phần trong đó thì cửa sổ sẽ dẫn bạn đi đến khu vực tương ứng để thiết lập. Hãy cùng tìm hiểu các tùy chọn của iThemes Security ở phần dưới nhé.
Các tùy chọn cơ bản của iThemes Security
Global Settings
Phần này sẽ chứa các thiết lập cơ bản cho iThemes Security.
- Write to File – Tùy chọn này sẽ cho phép các plugin khác tự động thêm nội dung vào file wp-config.php và .htaccess, bạn nên chọn nó để có thể cài được các tính năng khác của iThemes Security hoặc các plugin tạo cache một cách tự động.
- Notification Email – Địa chỉ email nhận các thông báo liên quan đến plugin iThemes Security, bạn có thể thêm nhiều email ngăn cách với nhau bằng một hàng.
- Backup Delivery Email – Địa chỉ email nhận file backup nếu bạn backup dữ liệu bằng iThemes Securtity.
- Host Lockout Message – Tin nhắn thông báo lỗi cho những người đăng nhập thất bại do bị khóa IP.
- User Lockout Message – Tin nhắn thông báo lỗi nếu thành viên bị khóa.
- Blacklist Repeat Offender – Kích hoạt sử dụng danh sách địa chỉ spam công cộng. Bạn nên chọn vì nó sẽ giúp bạn thoát khỏi các spammer có trong danh sách này.
- Blacklist Threshold – Số lần IP bị khóa sẽ chuyển thành dạng khóa vĩnh viễn.
- Blacklist Lookback Period – Thời hạn khóa các spammer có trong danh sách ở phần Blacklist Repeat Offender.
- Lockout Period – Thời gian mỗi lần khóa nếu có ai đó cố gắng đăng nhập nhưng bị thất bại.
- Lockout White List – Danh sách IP không bị khóa.
- Email Lockout Notifications – Email nhận thông báo khi ai đó bị khóa.
- Log Type – Kiểu ghi các log hoạt động của plugin, nên chọn là Database Only.
- Days to Keep Database Logs – Thời hạn ghi của các log trong database, sau thời hạn các log sẽ bị xóa đi.
- Path to Log Files – Đường dẫn của file log.
- Allow Data Tracking – Cho phép iThemes thu thập các dữ liệu sử dụng của bạn để họ phân tích.
404 Detection
Đây là tùy chọn sẽ gửi thông báo mỗi khi thành viên truy cập một trang nào đó và phát hiện lỗi 404. Bạn nên cân nhắc bật chức năng này nếu trang của bạn đã có quá nhiều lỗi 404 vì nó sẽ hấp diêm cái hộp email của bạn và tốn rất nhiều tài nguyên.
- Minutes to Remember 404 Error (Check Period) – Thời gian mà hệ thống tự ghi nhớ lỗi 404 và không báo vào lần sau.
- Error Threshold – Số lỗi tối đa mà mỗi thành viên có thể gặp, nếu thành viên vào tối đa số trang 404 trong phần này thì sẽ bị khóa. Thường là hay xảy ra với bot spam.
- 404 File/Folder White List – Các file/folder nó sẽ bỏ qua và không kiểm tra lỗi 404.
Away Mode
Đây là tính năng giúp bạn khóa trang quản trị trong thời gian nhất định, bạn chỉ có thể vào được trong một thời gian nhất định. Rất hữu ích cho website có 1 admin và bạn có thể tùy chọn khóa trang quản trị lúc bạn đang ngủ, làm việc chẳng hạn.
- Enable away mode – Bật chức năng Away Mode.
- Type of Restriction – Loại từ chối, nếu bạn truy cập vào website mỗi ngày thì chọn Daily.
- Start Time – Thời gian bắt đầu “mở cổng” trang admin.
- End Time – Thời gian đóng cổng trang admin.
Banned User
Tùy chọn cho phép bật chức năng ban một thành viên nào đó, kể cả bot spam.
- Enable HackRepair.com’s blacklist feature – Bật chức năng khóa các bot spam có trong danh sách của HackRepair.com.
- Enable ban users – Bật chức năng khóa thành viên (không phải thành viên trong trang WordPress của bạn).
- Ban Hosts – Danh sách các IP sẽ bị ban, mỗi IP là một dòng.
- Ban User Agents – Loại User Agents sẽ bị ban, áp dụng cho các bot spam. Bạn có thể lên Google gõ “Bad User Agents list” để lấy danh sách và bỏ vào tùy chọn này nếu muốn.
- Whitelist Users – IP sẽ không bị ban.
Brute Force Protection
Tùy chọn này sẽ giúp bạn chống Brute Force Attack bằng hình thức hạn chế số lần đăng nhập sai.
- Enable brute force protection – Bật chức năng chống Brute Force.
- Max Login Attempts Per Host – Số lần đăng nhập sai tối đa của một IP.
- Max Login Attempts Per User – Số lần đăng nhập sai tối đa của một thành viên.
- Minutes to Remember Bad Login (check period) – Số thời gian ghi nhớ đăng nhập sai, nếu trong khoảng thời gian này mà vượt quá số lần đăng nhập sai cho phép thì sẽ bị khóa.
Database Backup
Tùy chọn hỗ trợ tự động sao lưu cơ sở dữ liệu. Chỉ nên bật nếu bạn có database nhỏ vì sử dụng BackWPUp hoặc BackupBuddy sẽ tốt hơn nhiều.
- Backup Full Database – Backup toàn bộ cơ sở dữ liệu.
- Backup Method – Phương thức sao lưu, nó sẽ gửi bản backup qua email hoặc chỉ lưu vào host hoặc cả 2.
- Backup Location – Đường dẫn thư mục chứa file backup.
- Backups to Retain – Số file backup sẽ giữ lại trên host. Ví dụ nếu bạn đặt là 5 thì nếu nó nhiều hơn 5 thì sẽ tự xóa bớt file backup cũ nhất.
- Compress Backup Files – Hỗ trợ nén file backup.
- Exclude Tables – Các table trong database bạn không muốn backup.
- Schedule Database Backups – Bật tùy chọn tự động backup.
- Backup Interval – Tự động backup sau số ngày nhất định.
File Change Detection
Tính năng gửi thông báo nếu có file nào đó trong host bị thay đổi, thường là để phát hiện các file bị chèn shell. Tuy nhiên chỉ nên bật đúng lúc cần vì nó tốn tài nguyên.
- Enable File Change detection – Bật tính năng phát hiện file bị thay đổi.
- Split File Scanning – Chia nhỏ các phần trong code để kiểm tra lần lượt thay vì một lúc, đỡ tốn tài nguyên.
- Include/Exclude Files and Folders – Tùy chọn loại bỏ hoặc bao gồm các file để phát hiện.
- Files and Folders List – danh sách các file/folder mà bạn muốn loại bỏ/bao gồm để scan.
- Ignore File Types – Các định dạng file mà nó sẽ bỏ qua.
- Email File Change Notifications – Bật tính năng gửi thông báo qua email.
Hide Login Area
Bật tính năng đổi đường dẫn đăng nhập thay vì /wp-admin như cũ.
- Login Slug – Slug đường dẫn đăng nhập mới, nếu bạn ghi là dangnhap thì địa chỉ đăng nhập của bạn sẽ có dạng example.com/dangnhap.
- Register Slug – Slug đường dẫn đăng ký thành viên.
- Enable Theme Compatibility – Tùy chọn tự động tương thích với theme.
- Theme Compatibility Slug – Đường dẫn báo lỗi 404.
Secure Socket Layer
Đây là tính năng áp dụng SSL cho website nếu website bạn có chứng chỉ SSL. Nếu bạn không có SSL, tốt nhất để nguyên nếu không muốn lỗi cả website.
- Front End SSL Mode – Bật SSL cho website.
- SSL for Login – Bật SSL cho hệ thống đăng nhập trên website.
- SSL for Dashboard – Bật SSL cho Dashboard.
Strong Password
Áp dụng bắt buộc sử dụng mật khẩu phức tạp để bảo mật.
- Enable strong password enforcement – Bật chức năng bắt buộc mật khẩu mạnh.
System Tweaks
Các thiết lập trong đây sẽ can thiệp hệ thống hosting của bạn đang dùng để bảo mật. Do đây là thiết lập nâng cao nên đừng chọn nếu bạn không biết mình đang làm gì.
- Protect System Files – Bảo mật các file quan trọng của WordPress như wp-config.php, .htaccess, wp-include, instal,….
- Disable Directory Browsing – Không cho phép browse file tập tin bằng trình duyệt, nghĩa là nếu thư mục bạn không có file index thì nó vẫn không xuất hiện danh sách các file trong đó.
- Filter Request Methods – Lọc các truy vấn gửi đi thông qua URL, nó sẽ chặn các truy vấn mang tính chất nguy hiểm hoặc đáng ngờ.
- Filter Suspicious Query Strings in the URL – Lọc và chặn các truy vấn mang tính chất nguy hiểm trên URL, ví dụ như họ đang cố gắng truy cập vào các file trong thư mục themes, plugins.
- Filter Non-English Characters – Một cách để hạn chế SQL Injection bằng cách chặn các query chứa ký tự lạ. Nên chọn.
- Filter Long URL Strings – Lọc các truy vấn quá dài, thường là các attacker bằng hình thức SQL Injection thường viết truy vấn khá dài trên URL để thay đổi database. Nên chọn.
- Remove File Writing Permissions – Tự động CHMOD bảo mật cho các file nhạy cảm, nếu bật thì các file đó sẽ được CHMOD thành 0444 thay vì 0644 như mặc định.
- Disable PHP in Uploads – Không cho phép thực thi các mã PHP trong tính năng upload trong WordPress để tránh màng up shell lên host. Nên chọn.
WordPress Tweaks
Các tùy chọn này sẽ can thiệp vào mã nguồn của WordPress để bảo mật.
- Remove WordPress Generator Meta Tag – Xóa các thẻ meta mặc định của WordPress tự sinh ra để làm cho hacker khó xác định số phiên bản WordPress mà bạn đang dùng để tìm bug.
- Remove the Windows Live Writer header – Xóa thẻ header để hồi đáp lại truy vấn từ Windows Live Writer nhằm tránh lại các hình thức tấn công thông qua việc lợi dụng file này để đăng bài trái phép.
- Remove the RSD (Really Simple Discovery) header – Xóa thẻ header chứa file xml-rpc trên header để tránh lại các hình thức tấn công bằng việc lợi dụng đăng bài trái phép.
- Reduce Comment Spam – Chống spam ở comment.
- Display Random Version – Tự động hiển thị ngẫu nhiên số phiên bản WordPress để hacker khó xác định phiên bản thật sự mà bạn đang dùng.
- Disable File Editor – Không cho phép chỉnh sửa theme, plugin trong Dashboard.
- Disable login error messages – Tắt hiển thị lỗi đăng nhập để hacker khó xác định là họ đăng nhập sai hay lỗi.
- Force users to choose a unique nickname – Không cho thành viên sử dụng nickname trùng nhau.
- Disables a user’s author page if their post count is 0 – Không tạo đường dẫn author riêng nếu họ chưa có bài.
Sau khi thay đổi xong, cứ ấn nút Save all Changes.
Advanced
Đây là các thiết lập nâng cao, hạn chế táy máy nếu bạn sợ bị lỗi hoặc tốt nhất backup toàn bộ database và code trước khi sử dụng các công cụ trong đây.
Admin User
Các thay đổi trong đây sẽ ảnh hưởng tới tài khoản admin của website.
- Enable Change Admin User – Đổi tên username của admin.
- New Admin Username – Tên đăng nhập mới của admin.
- Change User ID 1 – Thay đổi User ID của admin để tránh bị dò ra.
Change Content Directory
Tùy chọn trong đây sẽ thay đổi thư mục wp-content, rất nguy hiểm nếu bạn đã sử dụng website lâu rồi. Chỉ nên áp dụng cho các website mới.
Change Database Prefix
Thay đổi prefix của database thay vì wp_ như mặc định, tùy chọn này sẽ ít có khả năng lỗi nên bạn có thể yên tâm sử dụng.
Lời kết
Đó là những tính năng quan trọng mà mình cần nói qua trong plugin iThemes Security này. Mặc dù phiên bản do iThemes phát triển ra mắt chưa được bao lâu nhưng theo đánh giá của mình, nó vẫn hoạt động khá tốt ở thời điểm hiện tại và sẽ còn tiếp tục chỉnh sửa và bổ sung khá nhiều. Hy vọng với plugin iThemes Security, bạn sẽ yên tâm hơn trong việc bảo mật WordPress.