WordPress là nền tảng mã nguồn mở viết bằng ngôn ngữ PHP và là hệ quản trị nội dung được sử dụng nhiều nhất trên thế giới với gần 30% số website hiện đang chạy trên mã nguồn này. Chính vì vậy nó luôn là đối tượng của các hacker nhắm đến để đánh cắp nội dung, đặt backlink bẩn, gắn quảng cáo Adsense lạ, chuyển hướng vô tội vạ, index tiếng nhật,…
Đối với các Hacker Pro thì không thể khẳng định 100% ngăn chặn được bởi còn phụ thuộc vào website bạn có đủ hấp dẫn họ, hoặc có giá trị gì mang lại hay không. Mỗi tính năng ra đời đều đi kèm một lỗ hổng bảo mật không lớn thì nhỏ, vậy nên trong bài này mình sẽ hướng dẫn các bạn toàn bộ tất cả các phương pháp bảo mật tốt nhất áp dụng cho website bạn có thể sử dụng, để tăng thêm độ bảo mật và làm các hacker tập sự đến hacker Pro cũng phải gặp khó khăn khi muốn chiếm quyền kiểm soát Website của bạn.
Đa phần do một trong các nguyên nhân chính sau mà mình đã đúc kết được trong quá trình fix mã độc cho nhiều website và đã từng bị trong quá khứ lúc mới chập chững bước vào làm Website WordPress:
Website của bạn có nguy cơ rất cao có thể nhiễm virus nếu không áp dụng các phương pháp bảo mật. Thực tế hàng ngày trên Internet có rất nhiều tool đang chạy, nó được điều khiển bởi các kẻ xấu, tool này sẽ liên tục quét các website dò tìm lỗ hổng bảo mật. Web bạn không may nằm trong danh sách dò được mà bảo mật kém thì rất dễ bị hack.
Có thể kể đến một vài hậu quả bạn sẽ hứng chịu khi sử dụng website có bảo mật chưa tốt:
Thực tế có rất nhiều công cụ dò tìm mật khẩu trên mạng chia sẻ tràn lan, cách làm cũng khá đơn giản, một hacker tay mơ, hacker tập sự cũng có thể tự mò cách chạy tool dò mật khẩu một website. Các thức dò ở đây ở file từ điển được chuẩn bị sẵn, mật khẩu của bạn dễ mò ví dụ như 123, anhyeuem, 123456…. thì chỉ trong vài giây sẽ phá được. Độ khó mật khẩu được tăng lên khi bạn chèn các ký tự đặc biệt như !@#$, thêm các ký tự in hoa xen kẽ in thường, mật khẩu trên 8 ký tự. Bạn kết hợp tất cả các điều trên thì gần như mật khẩu không thể dò được ở công nghệ hiện tại.
Một tool dò các mật khẩu khó trên 8 ký tự, có chữ thường và in hoa, bao gồm cả ký tự đặc biệt mất thời gian khoảng vài chục ngàn năm thậm chí là cả triệu năm nếu như bạn tăng độ dài mật khẩu lên một chút. Đây được coi như là biện pháp cứng rắn loại trừ được kẻ xấu có ý định dò mật khẩu bằng tool.
Hãy liên tục cập nhật lên bản mới nhất để Website đạt tình trạng bảo mật và khắc phục các bản vá lỗi hiện có. Nếu website bạn dùng bản WordPress / Theme / Plugin bản cũ có một lỗi nghiêm trọng, bạn chưa kịp cập nhật lên thì Website bạn sẽ có khả năng bị hack nếu kẻ xấu quét được phiên bản bạn đang sử dụng đấy nhé. Cho nên hãy cập nhật tất cả các thứ mình kể trên càng sớm càng tốt. Bạn cũng đừng sợ lỗi hay xung đột gì vì nó được đưa vào kiểm tra kỹ lưỡng bởi các lập trình viên giàu kinh nghiệm, hoặc bạn có thể đợi vài ngày sau cập nhật cũng chưa muộn.
1. Xác thực 2 yếu tố cho Hosting: bạn mở Cpanel tìm đến phần Xác thực 2 yếu tố, viết tắt là 2FA (Two – Factor Authentication).
Chọn Set up Two-Factor Authentication:
Tiếp theo mở CH Play trên điện thoại của bạn, tải ứng dụng có tên: Google Authentication và cài đặt nó:
Sau đó bạn mở ứng dụng lên, bấm vào dấu cộng / Quét mã QR. Quét đoạn mã QR trong Cpanel của bạn, sau đó điền mã xác thực vào ô bên dưới rồi bấm nút Configure Two – Fator Authentication để xác nhận.
Lần tới mỗi khi đăng nhập vào Hosting / Cpanel bạn cần cung cấp một đoạn mã có trong ứng dụng Google Authentication để xác mình thêm lần nữa, mã này được tạo ngẫu nhiên và reset mỗi 30 giây nên khá an toàn. Với các này dù kẻ xấu có biết mật khẩu của bạn cũng không thể nào đăng nhập được vào bên trong vì cần có mã xác thực bạn đang nắm giữ.
2. Xác thực 2 yếu tố cho WordPress: Bạn nên kết hợp cả 2 loại xác thực cùng một lúc để đạt hiệu quả cao nhất. Với WordPress, bạn cần tải Plugin Wordfence Premium về để chúng ta cài đặt xác thực 2 yếu tố cho mỗi lần đăng nhập Admin.
Sau khi cài Wordfence Premium, bạn bấm vào Wordfence / Login Security. Mở điện thoại ra và quét mã QR:
Bạn nhận được một đoạn mã gồm 6 chữ số, nhập đoạn mã này vào ô bên tay phải rồi bấm nút ACTIVE để kích hoạt tương tự phần trên. Sau này bạn đăng nhập cần cung cấp một đoạn mã gồm 6 chữ số trong ứng dụng Google Authentication trên điện thoại để xác minh lần thứ 2 rồi mới có thể đăng nhập. Cách làm này cũng ngăn chặn kẻ xấu, dù chúng có mật khẩu của bạn cũng không thể nào đăng nhập vào Admin để làm bất cứ thứ gì được.
Việc bạn xóa hết các theme plugin không sử dụng giúp tiết kiệm dung lượng hosting của bạn đồng thời loại bỏ các tập tin có thể nhiễm virus mã độc đang được ẩn bên trong các file theme plugin này. Bạn sử dụng cái nào thì bật lên còn lại hãy vô hiệu hóa và xóa chúng ngay lập tức.
Có một số người cố tình đặt backlink xấu hoặc cố gắng khai thác lỗ hổng website của bạn thông qua các bình luận, rất may WordPress có chức năng xét duyệt bình luận trước khi nó có thể xuất hiện ra ngoài nội dung bài viết. Chỉ nên giữ những bình luận bạn coi là độc giả thực sự còn các bình luận đi kèm đường link chưa rõ nguồn gốc thì cho vào thùng rác hoặc không xét duyệt.
Bạn cũng có thể sử dụng Plugin Akismet Spam Protection miễn phí trên kho WordPress, plugin này cũng ngăn chặn rất tốt các bình luận spam cho các website bị spam bình luận số lượng lớn, bạn có thể tải về và cài đặt nó tại đây.
Bên cạnh Theme, Plugin, WordPress cập nhật liên tục bạn nên sử dụng bản mới nhất cho PHP. Để làm điều này, bạn mở Cpanel / Select PHP Version:
Tại đây bạn thay đổi phiên bản PHP cho hosting đang sử dụng. Nên chọn phiên bản PHP từ 7.4 trở lên (trên 8.0 càng tốt) vì các phiên bản trước có các lỗ hổng bảo mật tương đối dễ khai thác, Website của bạn cũng được tăng bảo mật lên phần nào khi sử dụng bản PHP được cập nhật mới nhất.
Một website có cài SSL giúp trình duyệt hiển thị chế độ “Duyệt Web an toàn“, ngược lại nó hiện ra cảnh báo “Không bảo mật” màu đỏ. Cài SSL giúp cho dữ liệu của bạn và khách hàng được truyền đi theo mã hóa không thể giải mã được, nên đảm bảo tính bảo mật những thông tin quan trọng liên quan đến cá nhân, tài khoản ngân hàng, thẻ ATM,…
* Chưa cài SSL:
* Đã cài SSL:
Đối với các trang bình thường khác, lý do lớn nhất cho điều này là trang đăng nhập WordPress của bạn. Nếu bạn không chạy qua kết nối HTTPS, tên id đăng nhập người dùng và mật khẩu của bạn sẽ được gửi dưới dạng văn bản rõ ràng qua internet. Các hosting bây giờ đều hỗ trợ cài đặt miễn phí SSL nên bạn chỉ cần gửi một ticket đến bộ phận hỗ trợ nhờ hợp cài đặt trong thời gian nhanh chóng.
Che giấu file wp-config.php sẽ làm cho hacker gặp khó khăn trong việc quét dò tìm thông tin database, mã nguồn của website, bởi vì file wp-config đúng như cái tên của nó, file này chứa toàn bộ các cấu hình quan trọng một website, việc để lộ nó cho người khác biết tương đương với việc mời chào họ vào hack website của mình.
Để giấu file wp-config.php, bạn vào Cpanel rồi tạo một thư mục trống có vị trí ngang hàng với public_html:
Sau đó bạn vào thư mục public_html, tải file wp-config.php về:
Tải file wp-config.php này vào bên trong thư mục con vừa tạo:
Chỉnh sửa file wp-config.php trong thư mục public_html:
Xóa hết nội dung trong file wp-config.php (trong thư mục public_html) rồi Dán đoạn code sau vào:
* Nội dung đoạn Code (nằm trong thẻ mở <?php ):
<?php if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); require_once(ABSPATH . '../xindunghackem/wp-config.php');
Tên tiền tố cơ sở dữ liệu mặc định luôn là wp_ nên bạn cần thay đổi nó sang một cái tên khác để tránh cho hacker biết được, để làm điều này, bạn tải một plugin bảo mật có tên là Ithemes Security Pro về để chúng ta cấu hình, link tải Ithemes Security Pro tại đây.
Bạn cài đặt Ithemes Security Pro vào Website, sau đó bạn tìm theo thứ tự điều hướng sau: Security / Settings / Tools / Change Database Table Prefix:
Bấm Run để bắt đầu chạy. Hệ thống sẽ thay đổi tất cả các bảng trong cơ sở dữ liệu của bạn từ mặc định wp_ sang một kiểu mới gồm các ký tự được tạo ngẫu nhiên:
Bạn có thể kiểm tra thành quả bằng cách mở Cpanel / phpMyAdmin, chọn Database bạn đang sử dụng, lúc này tất cả các bảng (table) đã được đổi từ dạng tiền tố wp_ sang dạng tiền tố mới:
Security Key là mã bí mật tạo ngẫu nhiên lưu trong file wp-config.php nằm trong thư mục gốc public_html của Website WordPress. Bạn mở file wp-config.php sẽ nhìn thấy các dòng chữ kiểu giống thế này:
define( 'AUTH_KEY', 'STlDfHfd0~VYXaW&eXfZ:;7*-cfH}9stxi]=EzEi.)PK_[!U_hKrPox=8hIxV$*F' ); define( 'SECURE_AUTH_KEY', '4!BCoi!a1pPDY6D^cDpq(k~/Un3.<CJ{n:M3l9O*ecnwNKM!Z?bJ`:aa O*;F`[J' ); define( 'LOGGED_IN_KEY', 'k^KYjM{AuTPUjpqcKFo;<iDo5GBPTc$K=vO9]DXvWa1lcQww8_C6kcy~X?},i$s$' ); define( 'NONCE_KEY', '|;5m1(+?NF9!tX<fno =3e(`SU&Ul>tQ[b~ &oitlye%0ep+SOQzo*-CjU3e8ve<' ); define( 'AUTH_SALT', '!#fI7-`t[Q5RRqm3%:6IxJ!N|`M%j28x(IzV1e6m#L[>|w]--Nl4]PX5asY|vQIX' ); define( 'SECURE_AUTH_SALT', 'vX7*3,}s~qIMUSa`FH+lT0r@25#5Z9r1>pJZedtorh?? ?XcGzxE{-&.j@M{HmCm' ); define( 'LOGGED_IN_SALT', '< T~1a?@1#.68,;{FDFGZd>gstfpy;G38GL^)jRk_j*i;tli3)-P>f+i<ogUWODI' ); define( 'NONCE_SALT', 'y)jBp*pL%bH-%2ne&Ev?Muj(+=j23=pxM{>O3/q,%zYlyt#].J{XpGpn8T:5:BdY' );
Đoạn mã này được tạo ngẫu nhiên và duy nhất cho mỗi phiên đăng nhập vào Admin của một tài khoản, hãy chắc chắn rằng nó được tạo ngẫu nhiên, bạn cũng nên đổi mã này vài lần trong vòng 1 tuần nếu website bạn đang bị hacker tấn công. Để tạo mã ngẫu nhiên, bạn Bấm vào đây. Trang này sinh ra một đoạn mã Security Key mới, bạn copy đoạn này và thay thế đoạn cũ để cập nhật Key mới, sau đó nhớ bấm Lưu (Save) để lưu lại thay đổi.
Biện pháp này được coi như là một khống chế cứng cho các hacker, thật khó để thâm nhập và hack vào một website khi được thêm các đoạn mã bảo vệ chống việc chỉnh sửa, cài mới file giao diện và file Plugin. Khi áp dụng cách này, Website của bạn nếu bị mất quyền kiểm soát Admin thì Kẻ xấu cũng không thể thâm nhập sâu hơn được, giúp giảm thiệt hại đáng kể nếu không may có chuyện xấu xảy ra.
Để cấm cài mới / chỉnh sửa Theme & Plugin bạn chỉ cần thêm 2 dòng code này vào file wp-config.php (nằm trong thư mục gốc public_html) là được:
/* Cấm sửa file */ define('DISALLOW_FILE_EDIT',true); /* Cấm cài theme plugin */ define('DISALLOW_FILE_MODS',true);
Nếu bạn cần cài Plugin / Theme mới hoặc muốn chỉnh sửa file thì chỉ cần sửa đoạn code trên, cụ thể bạn đổi True thành False để tắt tính năng bảo mật này.
Theo mặc định, các file trong Cpanel (hosting) của bạn được phân quyền CHMOD là 644 và thư mục được phần quyền 755. Đối với các file chứa cấu hình toàn bộ website của bạn cần được bảo mật tốt hơn các file khác nên chúng ta sẽ thay đổi quyền truy cập vào các tệp này nghiêm ngặt hơn. 2 file cấu hình quan trọng mình muốn nói đến là wp-config.php và .htaccess.
* Đối với file wp-config.php:
Chuột phải vào file wp-config.php và chọn Change Permissions:
Bạn tích chọn các ô giống như mình để phân quyền cho người dùng có thể đọc file này mà thôi. Như vậy file wp-config.php bạn chuyển thành quyền 400:
* Đối với file .htaccess:
File .htaccess theo mặc định có thể bị ẩn đi, để hiển thị file .htaccess bạn bấm vào nút Cài đặt ở góc trên cùng bên tay phải:
Một cửa sổ mới hiện ra, bạn tích chọn vào ô Hiển Thị Tệp Ẩn (dotfiles) và chọn Save để lưu lại:
Chuột phải vào file .htaccess rồi bấm Change Permissions:
Bạn tích chọn vào các ô giống như hình bên dưới để cho Quyền được đổi thành 444. Sau đó bấm nút Change Permissions để lưu lại thay đổi:
Bạn thấy bài viết này liên tục nhắc đến file wp-config.php bởi vì nó là file mang cấu hình cực kỳ quan trọng cho Website WordPress. Bây giờ mình sẽ chỉ bạn cách chặn không cho phép ai chỉnh sửa hay thực thi file này.
Chuột phải vào file .htaccess, chọn Edit:
Dán dòng code này vào trong file .htaccess:
# Không cho phép sửa file config <Files wp-config.php>; order allow,deny deny from all </Files>
Như vậy là xong, không có ai, theme hoặc plugin nào có thể chỉnh sửa và thay đổi nội dung trong file cấu hình wp-config.php này. Bạn nên làm nếu như website của bạn đã ổn định và đi vào hoạt động. Còn vẫn đang trong quá trình xây dựng bạn có thể tắt nó đi bằng cách xóa dòng code trên.
Wordfence Premium: đây là plugin bảo mật phổ biến nhất trên WordPress, có rất nhiều tính năng thú vị như xem được ai đang truy cập website của bạn cùng với thông tin chi tiết, phân biết bot hay người, đồng thời chặn tất cả các mối đe dọa tiềm tàng bằng trình quét virus mạnh mẽ. Wordfence cũng đưa ra thông tin về file nào đang bị nhiễm virus đồng thời cung cấp vị trí cụ thể đoạn code chứa mã độc, bạn có thể bấm vào xem và xóa chúng. Mình thường xuyên sử dụng plugin này và nó là ưu tiên số 1 mình khuyên các bạn nên dùng để bảo mật cho Website WordPress.
Ithemes Security Pro: một plugin có tiếng trong cộng đồng WordPress với các biện pháp bảo mật tiên tiến nhất như chống dò mật khẩu Brute Attack, đăng nhập 2 yếu tố, đổi đường dẫn admin, quét virus,… tất cả những gì bạn cần để bảo mật website đều có trong bản Pro của plugin này. Ithemes Security Pro sử dụng API của Sucuri quét virus Server bên ngoài nên đảm bảo tính khách quan và độ chính xác khá cao.
Sucuri: Một plugin cũng chất lượng không kém đó chính là Sucuri. Sucuri được lập trình bởi các nhà bảo mật và chuyên gia trình độ cao. Khả năng quét tường lửa của Sucuri rất mạnh, nó phát hiện ra các lỗ hổng bảo mật và bạn sẽ được sửa miễn phí bởi các chuyên gia. Miễn phí ở đây khi và chỉ khi bạn đã đóng học phí trước đó. Bởi vì chi phí dùng Sucuri không hề rẻ chút nào, nên bạn được hỗ trợ fix mã độc từ chuyên gia với mức giả khoảng 500$ / 1 site / 1 năm.
Trong trường hợp Website bạn bị nhiễm mã độc, hãy dùng các công cụ quét sẵn có trong 3 plugin trên để tìm ra mã độc càng sớm càng tốt, rất may các công cụ trên hoạt động rất hiệu quả trong suốt thời gian mình đã sử dụng. Bạn nên kết hợp cả 3 plugin trên (đặc biệt là Wordfence và Sucuri) để quét vì 2 plugin này khả năng quét rất mạnh mẽ. Còn việc sử dụng thực tế thì nên chọn chỉ một cái mà thôi. Nếu là mình thì luôn luôn chọn Wordfence Premium là lựa chọn số 1. Bạn có thể mua Wordfence Premium chính hãng giá rẻ có key bản quyền tại đây.
Trong bất kỳ Website WordPress nào bạn để ý sẽ thấy một file nằm trong thư mục gốc public_html có tên xmlrpc.php. XML-RPC là một script là một đoạn mã script mới được sử dụng từ bản 3.5 trở lên, đến nay nó luôn được bật mặc định trong bản cốt lõi WordPress
XML – RPC là giao thức để kết nối với website WordPress thông qua các file XML. Hiện tại có thể hỗ trợ các API của các CMS như WordPress API, Blogger API, Movable API, Pingback API, MetaWeblog API,…
Thông thường trên WordPress, chúng ta sẽ sử dụng đến XML-RPC khi thiết lập đăng bài từ một ứng dụng khác bên ngoài như Windows Live Writer, hoặc các dịch vụ kết nối với website để đăng bài như IFTTT chẳng hạn.
Nhưng từ khi XML-RPC được sử dụng phổ biến trên WordPress, nó lại làm dấy lên về nguy cơ bị tấn công brute force attack để dò mật khẩu hoặc nặng hơn là gửi một lượng lớn request đến máy chủ để làm tê liệt máy chủ, hình thức tấn công này được gọi là HTTP Flood Attack, là một kiểu tấn công DDoS.
Để tắt tính năng XML – RPC, bạn dán dòng code sau vào bên trong file .htaccess:
# Tắt XML - RPC <files xmlrpc.php> order allow,deny deny from all </files>
Theo mặc định các tập tin được công khai và một người lạ hoàn toàn có thể xem nội dung bên trong đó có gì, bằng cách truy cập đường dẫn sau:
http://example.com/wp-includes/
Tất cả nội dung hiện thị công khai ra bên ngoài, tin tặc hoàn toàn có thể lợi dụng sở hở này để khai tác các lỗ hổng bảo mật:
Để bảo mật cho các thư mục quan trọng và ngăn chặn người khác có thể tự do xem nội dung, bạn chỉ cần chèn đoạn code sau vào trong file .htaccess:
# Tắt duyệt thư mục hiển thị Options -Indexes
Thường xuyên sử dụng plugin Wordfence mình hay thấy các ip lạ có hành vi không giống bot cào lành tính (google) cũng không giống khách hàng truy cập, các ip này hay vào các truy vấn lạ giống như đang khai thác lỗ hổng bất hợp pháp Website thì bạn có thể chặn một địa chỉ IP bất kỳ trên phạm vi toàn bộ hosting. Lưu ý bạn chặn bằng các plugin thì ip đó vẫn có thể xem được website nếu như bạn sử dụng cache. Còn chặn IP trên phạm vi toàn hosting khiến IP bị chặn không xem bất cứ được nội dung gì ngoài thông báo lỗi bị chặn 403 Forbidden: Access to this resource on the server is denied!
deny from ip bạn muốn chặn
* Ví dụ 1:
deny from 123.66.170.213 deny from 143.22.144.234 deny from 176.00.122.212 deny from 122.80.121.232 deny from 188.40.190.276 deny from 112.25.111.234
* Ví dụ 2:
deny from 123.66.170.0/24 deny from 143.22.144.0/24 deny from 176.00.122.0/24 deny from 122.80.121.0/24 deny from 188.40.190.0/24 deny from 112.25.111.0/24
Trong đó ở Ví dụ 1 mỗi dòng bạn chèn một địa chỉ IP muốn chặn. Ở ví dụ 2 mình thay thế số cuối cùng trong dải IP thành 0/24 sẽ chặn tất cả các dải ip trong cùng một mạng local, tránh trường hợp đối tượng đổi sang thiết bị khác, với cách này chỉ có Reset Modem mạng hoặc Fake IP mới có thể truy cập vào Website của bạn.
HTTP Security Headers là một phần cơ bản của bảo mật website, giúp chống lại các cuộc tấn công mà website có nguy cơ gặp phải cao như: MIME types, clickjacking, code injection, XSS… Mình sẽ hướng dẫn bạn tạo ra các HTTP headers quan trọng nhất nên cấu hình trên web server để nâng cao bảo mật cho website.
Thêm tiêu đề bảo mật giúp cho cảnh báo đỏ trên trang kiểm tra Security Headers biến mất và chuyển thành màu xanh an toàn khi bạn đã thêm tiêu đề bảo mật cho Website. Các bạn có thể Check xem trang Web của bạn đã có tiêu đề bảo mật nào được thiết lập bằng cách vào Securityheaders.com.
* Chưa có tiêu đề bảo mật:
* Đã có tiêu đề bảo mật đầy đủ:
Cách thêm tiêu đề bảo mật là mở file .htaccess lên và thêm các đoạn mã Security Headers dưới đây vào nội dung bên trong file này:
Header always append X-Frame-Options SAMEORIGIN: Được hỗ trợ bởi tất cả các trình duyệt và ngăn kẻ tấn công chuyển nội dung trang web của bạn sang các trang khác.
Header set X-Content-Type-Options nosniff: Giảm rủi ro bảo mật kiểu MIME, tìm hiểu thêm tại đây.
Header always set Strict-Transport-Security “max-age=31536000; includeSubDomains; preload”: tính năng bảo mật cho phép website, thông báo cho các trình duyệt chỉ nên giao tiếp bằng giao thức HTTPS an toàn thay vì HTTP.
Header set Content-Security-Policy “script-src ‘none’;”: Tắt toàn bộ Javascript trên trình duyệt người dùng.
Header always set Referrer-Policy “same-origin”: tiêu đề này hướng dẫn các trình duyệt hỗ trợ chỉ đặt tiêu đề liên kết giới thiệu cho yêu cầu từ miền hiện tại ( same-origin).
Header set X-XSS-Protection “1; mode=block”: bảo mật chống kiểu tấn công XSS.
Header always set Permissions-Policy “geolocation=(); midi=();notifications=();push=();sync-xhr=();accelerometer=(); gyroscope=(); magnetometer=(); payment=(); camera=(); microphone=();usb=(); xr=();speaker=(self);vibrate=();fullscreen=(self);”: Kiểm soát các tính năng mà trình duyệt có thể sử dụng.
* Tổng hợp tất cả các đoạn code trên chúng ta có đoạn mã bên dưới, lưu ý bạn dán đoạn mã này vào file .htaccess rồi lưu lại nhé:
Header always append X-Frame-Options SAMEORIGIN Header set X-Content-Type-Options nosniff Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" Header set Content-Security-Policy "script-src 'none';" Header always set Referrer-Policy "same-origin" Header set X-XSS-Protection "1; mode=block" Header always set Permissions-Policy "geolocation=(); midi=();notifications=();push=();sync-xhr=();accelerometer=(); gyroscope=(); magnetometer=(); payment=(); camera=(); microphone=();usb=(); xr=();speaker=(self);vibrate=();fullscreen=(self);"
Lưu ý rằng bạn cần bảo mật Website ở mức độ nghiêm ngặt mới áp dụng các tiêu đề bảo mật bên trên. Bởi một số plugin, theme, và các tính năng của Website sẽ bị ảnh hưởng, nên cân nhắc lựa chọn nên bật và nên tắt cái nào cho phù hợp.
Mỗi khi đăng nhập tài khoản Admin bạn hay vào đường link https://tên web site/wp-admin hoặc https://tên website/wp-login.php. Đây là đường linh được cài đặt mặc định cho tất cả các Website WordPress lúc mới đầu. Hoàn toàn có thể thay đổi đường dẫn này sang một cái tên ngẫu nhiên hoặc bạn đặt tùy ý chỉ mình bạn biết. Cách này tránh được hacker hack website của bạn phần nào bởi vì hacker thường tấn công các Website bảo mật kém và tạm thời ngó lơ đi các Website được quản lý bởi Admin có một chút kỹ năng bảo mật.
* Ẩn đường dẫn đăng nhập bằng WPS Hide Login
Để đổi đường dẫn đăng nhập, bạn cần sử dụng một plugin bảo mật có tên là WPS Hide Login. Plugin này bạn có thể tải miễn phí trên kho Plugin của WordPress. Cài đặt plugin này vào Website rồi mở nó ra chúng ta bắt đầu thiết lập cài đặt.
Cài xong plugin rồi thì bạn mở nó ra bằng cách bấm Cài đặt / Tổng quan. Kéo xuống dòng dưới cùng, tại url bạn thay đổi thành url bạn muốn như sau:
* Ẩn đường dẫn đăng nhập bằng Ithemes Security Pro:
Truy cập vào Security / Settings / Advenced rồi chọn đến tab HIDE BACKEND:
Ở đây có các ô bạn có thể điền như sau:
Điền các thông tin xong bạn bấm nút Save để lưu lại và áp dụng các thay đổi.
Sao lưu giờ đây đơn giản hơn bao giờ hết vì đã có các plugin hỗ trợ việc này, bạn không cần phải sao lưu phục hồi thủ công cho mất thời gian. Sao lưu dữ liệu giúp bạn lấy lại toàn bộ mã nguồn, cơ sở dữ liệu về trạng thái an toàn trước đó. Bạn nên sao lưu định kỳ khoảng một tuần một lần hoặc 1 tháng 1 lần rồi lưu trữ nó lên đám mây (Google Drive, Ondrive) cho chắc ăn. Không nên lưu file backup vào ổ cứng máy tính hoặc USB vì dễ mất, đánh rơi USB, máy tính bạn cũng có thể nhiễm virus, lỗi Win.
Plugin sao lưu dữ liệu mà MuaThemeWP.VN đề xuất cho các bạn đó chính là All in One Migration Unlimited Extension. Nó sao lưu vô cùng mạnh mẽ, nhanh chóng, chỉ với một cú click chuột là toàn bộ các dữ liệu của bạn lưu trữ thành một file duy nhất. Sau đó bạn muốn phục hồi lại chỉ cần sử dụng file backup đó rất tiện lợi.
Cách này áp dụng cho Website nào có sử dụng hình ảnh và mình thấy tất cả các Website hiện nay đều có sử dụng hình ảnh dù nhiều hay ít. Mỗi khi bạn, hoặc người nào đó up bài viết lên kèm theo hình ảnh minh họa cho nội dung, dù vô tình hay cố ý, có một xác suất ảnh bạn up lên chứa virus và các mã thực thi php được chèn vào ảnh. Chúng ta nên vô hiệu hóa tất cả các đoạn code php khi tải lên các tệp hình ảnh hoặc một tệp bất kỳ, không cho phép chúng được thực thi.
Để làm điều này, bạn mở Cpanel / public_html / wp-contents / uploads. Bấm vào dấu + Tệp để thêm một tệp mới:
Điền tên tệp cần thêm mới là .htaccess rồi bấm nút Create New File:
Sau đó bạn chèn dòng code này vào bên trong tệp .htaccess:
<Files *.php> deny from all </Files>
Đoạn code trên ngăn chặn thực thi các tập lệnh PHP trên toàn bộ các file được bạn upload.
Chạy công cụ này trong plugin Ithemes Security Pro để thay đổi ID người dùng của người dùng có ID người dùng là “1”. Điều này có thể ngăn chặn các cuộc tấn công đơn giản giả sử người dùng có ID là “1” là quản trị viên.
Để thực hiện, bạn cài đặt plugin Ithemes Security Pro vào Website, sau đó điều hướng theo đường dẫn sau: Security / Tools / Change User ID 1 và bấm Run để chạy công cụ tự động:
Giới hạn nỗ lực đăng nhập giúp ngăn chặn các Tool tự động dò mật khẩu (kiểu tấn công cổ điển Brute Force Attack), thêm một lớp bảo mật khác sau phương pháp xác thực 2 yếu tố, góp phần tăng gấp đôi bảo mật đăng nhập cho Website WordPress của bạn. Cách làm cũng cực kỳ dễ với các plugin bảo mật đã được tích hợp sẵn các tính năng này. Chúng ta chỉ cần cấu hình lại tùy theo nhu cầu của mỗi người.
* Giới hạn đăng nhập với Wordfence Premium:
Truy cập vào Wordfence / All Options / Brute Force Protection điền các số vào ô trống tương ứng với chức năng của từng phần
* Giới hạn nỗ lực đăng nhập với Ithemes Security Pro:
Truy cập vào Security / Settings rồi chọn tab Lockouts, Tiếp theo bạn bấm vào biểu tượng cài đặt trong phần Local Brute Force:
Lựa chọn / điền vào các dòng tương ứng với chức năng bạn muốn sử dụng:
Đầu tiên bạn vào trang này để đăng ký tạo ReCapcha mới: Google ReCapcha V3.
Bấm vào v3 Admin Console:
Điền thông tin đầy đủ vào các ô trống:
Sau đó bạn bấm nút Submit để gửi đăng ký:
Bạn bấm vào nút Copy Site Key và Copy Secret Key:
Quay trở lại Website của bạn, truy cập Wordfence / Login Security rồi điền các Key bạn vừa Copy vào ô tương ứng trong Plugin:
Sau đó bấm Save để lưu lại các chỉnh sửa là được nhé. Như vậy bạn đã cấu hình Recapcha V3 cho Website, lần tới mỗi khi đăng nhập bạn sẽ nhìn thấy biểu tượng ReCapcha của Google hiện ra. Recapcha có nhiệm vụ phát hiện spam, bot spam và ngăn chặn chúng, giúp Website có thêm một lớp bảo mật chống lại các Tool dò lỗ hổng từ hacker.
Cloudflare, Inc. là một công ty Hoa Kỳ cung cấp mạng phân phối nội dung, dịch vụ bảo mật Internet và các dịch vụ phân phối máy chủ tên miền, đứng giữa khách truy cập và nhà cung cấp dịch vụ lưu trữ của người dùng Cloudflare, hoạt động như một reverse proxy cho các trang web.
Cloudflare bạn có thể đăng ký tài khoản miễn phí để quản lý tên miền, trỏ tên miền đến hosting, chống DDos cho Website, thêm tường lửa bảo mật, thêm các quy tắc bảo mật, chặn các Bot cào nội dung và áp dụng chúng nhanh chóng mà không cần đăng nhập vào WordPress. Để cài đặt Cloudflare, bạn đọc bài viết này.
Dưới đây là một số tùy chọn bạn có thể cài đặt để tăng bảo mật với Cloudflare:
* Bật Proxy Cloudflare:
* Bật chế độ chiến đấu Bot (Bot Fight Mode):
* Cài đặt các Quy tắc (Rules) cho khách truy cập:
* Bật mã hóa bảo mật SSL trên Cloudflare:
Nếu biết cách sử dụng Cloudflare thì nó cực kỳ mạnh mẽ trong việt set rules theo nhu cầu của bạn, đặc biệt có thể chặn một số loại bot cào nội dung (Crawl).
Bạn đang tìm kiếm một trang web để mua hosting, vps, plugins, và theme cho website của bạn? Bạn muốn có một website đẹp, chuyên nghiệp, và dễ sử dụng? Bạn muốn tiết kiệm chi phí và thời gian khi xây dựng website? Nếu câu trả lời là có, thì bạn không thể bỏ qua Hi-Tech Coder | An Toàn, Bảo Mật, Vững Chắc.
Hi-Tech Coder là một trang web chuyên về bán các hosting, vps, plugins, và theme cho website. Bạn có thể tìm thấy hơn 1000+ mẫu website, 300+ plugin cao cấp, VPS, Hosting và nhiều mã kích hoạt phần mềm với giá cả hợp lý. Bạn cũng sẽ được hỗ trợ cài đặt và kỹ thuật miễn phí khi mua hàng tại Hi-Tech Coder.
Hi-Tech Coder không chỉ bán hàng, mà còn chia sẻ kiến thức và kinh nghiệm về WordPress và PHP và các sản phẩm của họ. Bạn có thể đọc các bài viết hướng dẫn và học hỏi cách sử dụng WordPress và PHP, thêm breadcrumb, tạo liên kết nội bộ, sử dụng plugin, và nhiều thứ khác. Bạn cũng sẽ được cảnh báo về một số rủi ro và lừa đảo khi mua source code trực tuyến.