Bài 28.5: Cách sử dụng iThemes Security để bảo mật WordPress
Bkasoft.net – Bài viết này mình hướng dẫn các bạn cách sử dụng iThemes Security để bảo mật WordPress đầy đủ nhất. Bạn xem tại đây! Có thể bạn chưa biết, plugin hỗ trợ bảo mật khá nổi tiếng Better WP Security đã tiến hành sát nhập vào iThemes và đổi tên thành iThemes Security . Do đó ...
Bkasoft.net – Bài viết này mình hướng dẫn các bạn cách sử dụng iThemes Security để bảo mật WordPress đầy đủ nhất. Bạn xem tại đây!
Có thể bạn chưa biết, plugin hỗ trợ bảo mật khá nổi tiếng Better WP Security đã tiến hành sát nhập vào iThemes và đổi tên thành iThemes Security. Do đó plugin này đã được thay đổi lại một số tính năng cũng như cách sử dụng. Bài viết này sẽ giúp bạn hiểu được các tùy chọn và thiết lập trong iThemes Security.
Bạn có thể xem thêm bài viết: Bảo mật WordPress căn bản toàn tập.
-
Cấu hình hosting thích hợp
Plugin iThemes Security được thiết kế để làm việc trên máy chủ Apache, nên nếu bạn dùng NGINX thì bạn sẽ không sử dụng đượ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 như A2Hosting, Interserver hay StableHost.
NGINX là một máy chủ proxy ngược mã nguồn mở (open source reverse proxy server) sử dụng phổ biến giao thức HTTP, HTTPS, SMTP, POP3 và IMAP, cũng như dùng làm cân bằng tải (load balancer), HTTP cache và máy chủ web (web server).
-
Cách sử dụng iThemes Security
Ở bài hướng dẫn trước, mình cũng đã hướng dẫn các bạn cài plugin là như thế nào rồi. Nên ở bài này mình sẽ hướng dẫn những ý chính.
Hình 1. Tìm kiếm và cài đặt iThemes Security.
Bước 1: Sau khi kích hoạt cài đặt iThemes Security bạn ấn nút Secure Your Site Now để thiết lậpHình 2. Kích hoạt iThemes Security với Secure Your Site Now.
Bước 2: Bạn click vào Allow File Updates và One – Click Secure và ấn nút Dismiss để kết thúc
Hình 3. Click vào Allow File Updates và One – Click Secure
Bước 3:- Bạn chuyển qua tab Setting và tìm hiểu các tùy chọn của nó.
- Phía dưới hình ảnh là thanh điều hướng Go to.
- 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. Vì phần này dài nên mình chuyển luôn sang phần tìm hiểu về các tùy chọn của iThemes Security.
Hình 4. Khu vực Setting
-
Các tùy chọn cơ bản của iThemes Security
Global Setting
Hình 5. Phần Global Setting
∇ Giải thích thiết lập cơ bản của iThemes Security:- Write to File: Tùy chọn này 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 > 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
404 Detection: 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 lưu ý và cân nhắc sử dụng bật chức năng này nếu trang của bạn quá nhiều lỗi 404, như thế email của bạn sẽ có rất nhiều thư và tốn tài nguyên trong email.
Hình 6: 404 Detection
∇ Giải thích:- Minutes to Remember 404 Error (Check Period): là thời gian hệ thống tự ghi nhớ lỗi 404 và không báo vào lần sau.
- Error Threshold: Là 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
Away Mode là tính năng giúp bạn khóa trang quản trị trong thời gian nhất định đồng nghĩa với việc bạn chỉ có thể vào được trong thời gian nhất định. Các tùy chọn bên dưới sẽ cho phép bạn vô hiệu hóa truy cập vào WordPress Dashboard cho thời gian quy định. Ngoài việc hạn chế tiếp xúc với những kẻ tấn công này cũng có thể hữu ích để vô hiệu hóa truy cập trang web dựa trên một lịch trình cho các lớp học hoặc các lý do khác.
Ví dụ: Hình ảnh bên dưới là thiết lập múi giờ WordPress cho thời gian hiện tại là: 11:46 am on Monday April 6th, 2015
Hình 7. Tính năng Away ModeNếu thời gian không chính xác bạn có thể thiết lập lại cài đặt tại: WordPress general settings page.
∇ Giải thích:- Enable away mode – Bật chức năng Away Mode.
Banned User
Banned User là 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. Tính năng này cho phép bạn hoàn toàn cấm các máy chủ và các đại lý sử dụng từ trang web của bạn mà không cần phải quản lý bất kỳ cấu hình của máy chủ của bạn. Bất kỳ địa chỉ IP hoặc các đại lý người sử dụng tìm thấy trong danh sách dưới đây sẽ không được cho phép truy cập vào trang web của bạn.
Hình 8. Banner User∇ Giải thích:
- 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).
Brute Force Protection
Brute Force Protection là tùy chọn này 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.
Hình 9. Brute Force Protection
∇ Giải thích:- Receive email updates about WP Security from iThemes: Nhận email cập nhật về WP Security từ iThemes
- 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.
» Xem thêm bài viết: Brute Force Attack là gì và cách phòng chống.
Database Backup
Database Backup là tùy chọn hỗ trợ tự động sao lưu cơ sở dữ liệu.
Lưu ý: Chỉ nên bật nếu bạn có database nhỏ vì sử dụng BackWPUp hoặc Backup Buddy sẽ tốt hơn nhiều.
Hình 10: Database Backup∇ Giải thích:
- 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.
File Change Detection
File Change Detection là 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. Để bạn biết nếu ai đó vào trang web của bạn và thay đổi điều gì đó. File Change Detection giúp bạn thay đổi nhận diện tập tin sẽ cảnh báo cho bạn biết những tập tin đã thay đổi trong cài đặt WordPress của bạn.
Hình 11: File Change Detection
∇ Giải thích:- Enable File Change detection: Là bật tính năng phát hiện file bị thay đổi.
Hide Login Area
Hide Login Area là bật tính năng đổi đường dẫn đăng nhập thay vì /wp-admin như cũ.
Giấu trang đăng nhập (wp-login.php, wp-admin, admin và login) làm cho nó khó khăn hơn để tìm thấy bởi các cuộc tấn công tự động và làm cho nó dễ dàng hơn cho người sử dụng không quen thuộc với các nền tảng WordPress.
Hình 12. Hide Login Area
∇ Giải thích:- Enable the hide backend feature: Kích hoạt tính năng ẩn phụ trợ.
Secure Socket Layer
Secure Socket Layer là tính năng áp dụng SSL cho website bạn có chứng chỉ SSL.
Lưu ý: Nếu bạn không có SSL, bạn nên để nguyên nếu không muốn lỗi cả website.
Hình 13. Secure Socket Layer
∇ Giải thích:- 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 qua kết nối an toàn.
- SSL for Dashboard: Bật SSL cho Dashboard qua kết nối an toàn.
Strong Password
Strong Password là thuộc tính áp dụng bắt buộc sử dụng mật khẩu phức tạp để bảo mật.
Hình 15. Strong Password∇ Giải thích:
- Enable strong password enforcement – Bật chức năng bắt buộc mật khẩu mạnh.
System Tweaks
System Tweaks là những thiết lập nâng cao có thể được sử dụng để tăng cường hơn nữa sự an toàn trang web WordPress của bạn.
Lưu ý:
- Các thiết lập này được liệt kê như nâng cao bởi vì họ chặn các hình thức phổ biến của các cuộc tấn công, nhưng họ cũng có thể chặn plugins hợp pháp và chủ đề mà dựa trên các kỹ thuật tương tự.
- Hãy nhớ rằng, một số các thiết lập này có thể xung đột với các plugin hoặc các chủ đề khác, nên kiểm tra trang web của bạn sau khi cho phép mỗi thiết lập.
- 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ì.
Hình 16. System Tweaks
∇ Giải thích:- 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. 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
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.
Hình 17. WordPress Tweaks
∇ Giải thích:- 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 bạn thay đổi xong, nhớ ấn nút Save all Changes.
Ngoài ra, còn có các thiết lập nâng cao khác như Advanced khi bạn vào Security > Advanced
Advanced
Trong Advanced để hạn chế tắt 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ụ dưới đây bao gồm: Admin User, WordPress Salts, Change Content Directory, Change Database Prefix,…
Admin UserAdmin User gồm các tùy chọn sẽ ảnh hưởng tới tài khoản admin của website.
Hình 18. Admin User
∇ Giải thích:- 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 Database Prefix
Change Content Directory là tùy chọn sẽ thay đổi thư mục wp-content.
Lưu ý: Tùy chọn này không dành cho các website cũ mà chỉ áp dụng với các website mớiChange Database Prefix cho phép thay đổi prefix của database thay vì wp_ như mặc định.
Lưu ý:- Trước khi sử dụng công cụ này, bạn nên chạy một bản sao lưu cơ sở dữ liệu của bạn.
- Việc sử dụng công cụ này đòi hỏi khá nhiều bộ nhớ hệ thống.
-
Lời kết
Trong bài viết này mình đã đi sâu vào những tính năng quan trọng của plugin iThemes Security. 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. Như đã nói ở đầu bài viết là phiên bản iThemes Security là sự kết hợp của 2 nhà phát triển là Better WP Security và iThemes. Điều đó giúp bạn yên tâm hơn trong việc bảo mật. Chúc các bạn học WordPress hiệu quả.
Bài 28.5: Cách sử dụng iThemes Security để bảo mật WordPress
( Case Study hướng dẫn sử dụng WordPress )
—oOo—
« Bài 28.4: Hướng dẫn plugin WP Super Cache | Học WordPress | Bài 28.6: Tạo form WordPress với Contact Form 7 » |
Tác giả: Hoàng Luyến