14+ Phương pháp bảo mật WordPress đơn giản nhưng hiệu quả 2020
Với những ai đã, đang và sắp có ý định làm việc trên nền tảng WordPress thì vấn đề bảo mật trang web luôn phải đặt lên hàng đầu. Không phải WordPress là nền tảng có khả năng bảo mật nhiều hay ít hơn bất kỳ nền tảng nào khác, mà là vì số lượng người dùng, plugin và tiện ích bổ sung của bên thứ ba làm cho nó trở thành mục tiêu chung cho những kẻ tấn công. Tuy nhiên, đừng quá lo lắng, bài viết dưới đây sẽ chỉ cho bạn một số bước cơ bản để có thể giúp bảo mật wordpress và giữ an toàn cho trang web của mình (ngay cả khi bạn không hiểu biết nhiều về công nghệ)!
14 phương pháp bảo mật wordpress hiệu quả và đơn giản
Đừng sử dụng “admin” làm tên người dùng (username)
Hầu hết các cuộc tấn công hay “hack” WordPress đều không sử dụng phương thức gì quá phức tạp. Đơn giản là họ thử và sử dụng các cuộc tấn công “brute-force“ (là một loại tấn công mạng, trong đó bạn có một phần mềm, xoay vòng các ký tự khác nhau, kết hợp để tạo ra một mật khẩu đúng) để đột nhập vào khu vực quản trị của bạn sau khi đoán đúng mật khẩu trang web.
Và hiển nhiên, quá trình này sẽ trở nên dễ dàng hơn rất nhiều nếu họ không phải đoán tên người dùng của quản trị viên của trang web. Chính vì thế, tránh sử dụng các từ phổ biến (như “admin”) làm username của bạn. Điều này sẽ làm giảm hiệu quả của các cuộc tấn công “brute-force” đi rất nhiều. Nếu bạn đang làm việc với một trang web cũ và người trước bạn đã sử dụng tên truy cập là “admin” thì có lẽ đã đến lúc bạn nên xóa tài khoản đó và đổi sang bất kỳ cái tên nào khác hoặc truy cập bằng một tài khoản khác an toàn hơn!
Sử dụng một mật khẩu phức tạp
Một mật khẩu tốt là một mật khẩu khó đoán và có khả năng bảo mật mạnh mẽ hơn. Có một mẹo dễ nhớ dành cho bạn đó là nguyên tắc CLU: Phức tạp (Complex), Dài (Long) và Độc nhất (Unique).
Nhưng các mật khẩu càng độc đáo sẽ càng khó nhớ phải không? Đó là lúc các công cụ như 1Password và LastPass phát huy được công dụng, vì mỗi công cụ này đều có trình tạo mật khẩu riêng. Bạn chỉ cần nhập độ dài cần thiết và nó sẽ tự tạo ra mật khẩu cho bạn. Bạn lưu liên kết, lưu mật khẩu và tiếp tục với các cài đặt khác. Tùy thuộc vào mức độ an toàn mà bạn muốn mật khẩu của mình đạt được, bạn có thể tùy chọn độ dài cho nó. Nhưng thông thường, độ dài hợp lý cho một mật khẩu là 20 ký tự và bạn có thể cân nhắc xem mật khẩu của mình có bao gồm các ký tự đặc biệt như # hay * không.
Thêm xác thực hai yếu tố
Ngay cả khi bạn không sử dụng “Admin” làm tên username hay sở hữu một mật khẩu mạnh được tạo ngẫu nhiên thì các cuộc tấn công “brute-force” vẫn là một mối đe dọa lớn. Nhưng đừng quá lo lắng, hãy thêm phần xác thực hai yếu tố để có thể bảo vệ trang web của bạn.
Nguyên tắc là, thay vì truy cập vào tài khoản chỉ sau một bước đăng nhập, thì bạn có thể thêm một lớp bảo mật nữa là xác nhận mã dùng một lần từ một thiết bị khác (thông thường là một ứng dụng trên điện thoại). Điều này sẽ khiến cho công cuộc đột nhập của những kẻ tấn công giả mạo trở nên khó khăn hơn nhiều!
Hai plugin phổ biến để xử lý xác thực trong WordPress là Google Authenticator và Rublon Plugin (plugin này có cách tiếp cận hơi khác). Chỉ cần đảm bảo rằng bạn không mất mã dự phòng, nếu không nhiều khả năng là tài khoản của bạn sẽ bị khóa.
Sử dụng các nguyên tắc đặc quyền tối thiểu
Nhóm WordPress.org đã đăng một bài viết tại WordPress Codex về Vai trò và Khả năng (Roles and Capabilities). Chúng tôi khuyến khích bạn đọc và tìm hiểu nội dung này vì nó áp dụng cho bước sau.
Khái niệm về Đặc quyền tối thiểu (Least Privileged) là khá đơn giản. Bạn chỉ cấp quyền cho:
- Những người cần nó
- Trong thời điểm họ cần nó và
- Chỉ trong khoảng thời gian họ cần nó
Nếu ai đó yêu cầu truy cập quyền quản trị viên tạm thời để thay đổi cấu hình, hãy cấp nó cho họ, nhưng hãy nhớ xóa đi sau khi hoàn thành nhiệm vụ. Trái với suy nghĩ chung của nhiều người, không phải ai muốn truy cập vào WordPress của bạn đều cần được phân loại theo vai trò quản trị viên. Hãy chỉ định mọi người vào các vai trò phù hợp sẽ giúp bạn giảm thiểu rủi ro đáng kể trong bảo mật.
Ẩn tập tin wp-config.php và .htaccess
Hai tập tin wp-config.php và .htaccess đóng vai trò rất quan trọng đối với bảo mật WordPress. Chúng thường chứa thông tin đăng nhập hệ thống của bạn và hiển thị thông tin về cấu trúc và cấu hình trang web. Vì vậy, bạn cần phải đảm bảo rằng những kẻ tấn công không thể tìm được quyền truy cập vào chúng.
Việc ẩn các tệp tin này tương đối dễ thực hiện, nhưng nếu thực hiện sai có thể khiến trang web của bạn không thể truy cập được nữa. Để cẩn thận, hãy tạo một bản sao lưu và tiến hành thật thận trọng.
Để bảo mật WordPress tốt hơn, bạn sẽ cần thêm tệp dưới đây vào tệp tin .htaccess của mình để bảo vệ wp-config.php:
<Files wp-config.php>
order allow,deny
deny from all
</Files>
Quá trình trên sẽ ngăn chặn các tập tin bị truy cập bởi người khác. Mã tương tự có thể được sử dụng cho tệp .htaccess của bạn:
<Files .htaccess>
order allow,deny
deny from all
</Files>
Sử dụng khóa bảo mật WordPress để xác thực
bảo mật wordpress – Sử dụng khóa bảo mật WordPress để xác thực(Nguồn: Vinahost)
Phần Authentication Unique Keys và Salts về cơ bản là một tập hợp các biến ngẫu nhiên, và chỉ có duy nhất ở trang web của bạn, giúp cải thiện tính bảo mật (mã hóa) của thông tin trong cookie.
Tệp wp-config.php của bạn được chỉ định ở một khu vực dành riêng, nơi bạn có thể cung cấp các biến của riêng mình (chỉ cần lấy một bộ khóa mới từ đây và dán chúng vào).
Vô hiệu hóa chỉnh sửa tập tin
Nếu tin tặc xâm nhập vào trang web của bạn, cách dễ nhất để chúng thay đổi các tệp của bạn là truy cập vào phần “Appearance” => “Editor” trong WordPress. Để cải thiện bảo mật WordPress của bạn, bạn có thể vô hiệu hóa việc chỉnh sửa các tệp này thông qua trình chỉnh sửa đó. Ngoài ra, bạn có thể làm tương tự với bên trong tệp wp-config.php của mình bằng cách thêm dòng mã này:
define(‘DISALLOW_FILE_EDIT’, true);
Bạn vẫn có thể chỉnh sửa các mẫu của mình thông qua ứng dụng (S)FTP yêu thích của bạn. Lưu ý rằng bạn không thể chỉnh sửa thông qua chính WordPress.
Ẩn đăng nhập của bạn và giới hạn các lần thử đăng nhập
bảo mật wordpress – Ẩn đăng nhập của bạn và giới hạn các lần thử đăng nhập (Nguồn: Code Tốt)
Các cuộc tấn công Brute-force thường nhắm mục tiêu là các hình thức đăng nhập của bạn. Vì vậy, việc thay đổi nơi sống có thể khiến kẻ tấn công khó xâm nhập hơn. Plugin All in One WP Security & Firewall có một tùy chọn đơn giản là chỉ cần thay đổi URL mặc định – từ /wp-admin/ sang thứ gì đó an toàn hơn.
Bên cạnh đó, bạn cũng có thể giới hạn số lần thử đăng nhập từ một địa chỉ IP nhất định. Có một số plugin WordPress để giúp bạn bảo vệ biểu mẫu đăng nhập của mình khỏi các địa chỉ IP có khả năng kích hoạt vô số lần đăng nhập theo cách của bạn.
Hãy sử dụng chọn lọc với XML-RPC
XML-RPC là một API (giao diện chương trình ứng dụng) đã được nhiều người sử dụng trong một thời gian khá lâu. Nó được sử dụng bởi một số plugin và themes, vì vậy chúng tôi muốn cảnh báo một số người không có nhiều kiến thức về kỹ thuật nên chú ý đến cách họ thực hiện các mẹo tăng cường này.
Chúng tôi không khuyên bạn nên vô hiệu hóa mọi thứ. Thay vì đó, hãy chọn lọc hơn về cách thức và những gì bạn cho phép truy cập. Trong WordPress, nếu bạn sử dụng Jetpack, bạn sẽ phải cẩn thận hơn ở bước này.
Có một số plugin sẽ giúp bạn chọn lọc theo cách triển khai và vô hiệu hóa XML-RPC theo mặc định.
Bảo mật Hosting & WordPress
Ngay cả khi bạn có ý thức đề cao vấn đề bảo mật của trang web nhưng công ty host trang web của bạn không hề quan tâm đến điều đó thì bạn cũng không thể làm gì cả.
Nếu kẻ tấn công có thể truy cập vào trang web của bạn, họ có thể kiểm soát hoàn toàn mọi thứ. Điều đó có nghĩa là việc bạn chọn (hoặc chuyển đến dùng) một máy chủ có khả năng lưu trữ cao là vô cùng quan trọng. Các tùy chọn lưu trữ rẻ hơn thường không kèm theo bảo mật hoặc sao lưu tốt, hoặc có thể sẽ không cung cấp tính năng hỗ trợ để giúp bạn dọn dẹp một trang web bị tấn công.
Lưu trữ chia sẻ (shared hosting), thường phổ biến với các gói giá rẻ, đi kèm với nhiều rủi ro, bởi những kẻ tấn công có thể truy cập vào trang web của bạn thông qua một trang web bị xâm nhập khác trên cùng hệ thống. Đó là lý do tại sao chúng tôi luôn khuyên người dùng nên dành thời gian tìm hiểu và lựa chọn sử dụng cho mình một công ty có uy tín cao về vấn đề lưu trữ WordPress chuyên dụng (ví dụ: GoDaddy hoặc WP Engine). Bạn có thể tìm hiểu thêm về hosting là gì và những kiến thức cơ bản về hosting.
Luôn cập nhật các tính năng mới
Việc cập nhật liên tục các tính năng mới nghe thì có vẻ dễ nhưng thực tế lại rất khó khăn đối với các chủ sở hữu trang web nếu họ muốn thực hiện mỗi ngày. Nếu như trang web của bạn quá phức tạp và có nhiều việc khác nhau xảy ra tại bất kỳ thời điểm nào, thì khá khó khăn để áp dụng các thay đổi ấy một cách nhanh chóng. Đó là lý do tại sao không hiếm các trang web phải dừng lại vì chạy mã lỗi thời cả trong plugin và phần mềm chính của họ.
Điều quan trọng bạn phải nhớ là việc cập nhật các themes, phần mềm, plugin và các thành phần khác của bạn là một việc phải được thực hiện liên tục như một thói quen. Nếu không, trang web của bạn sẽ trở thành “miếng mồi” quá dễ dàng cho những kẻ tấn công.
Đặt nhiều lớp bảo mật hơn
Đây là các giải pháp bảo mật tốt nhất giúp ngăn chặn những kẻ tấn công đến bất cứ nơi nào gần trang web của bạn. Đó là lý do tại sao chúng tôi khuyên các bạn nên chạy một số plugin tường lửa WordPress. Các plugin này tìm kiếm những kẻ tấn công và các kiểu tấn công phổ biến và ngăn chặn chúng trước khi chúng có cơ hội đột nhập vào trang web của bạn.
Việc sử dụng Hệ thống phân phối nội dung hiện bao gồm chức năng tường lửa cũng đáng để xem xét; kết hợp tối ưu hóa hiệu suất với khả năng bảo vệ. Cloudflare, đặc biệt có tác dụng tuyệt vời trong việc ngăn chặn các traffic xấu và thậm chí có các quy tắc và khả năng quét giúp phát triển đặc biệt nhằm bảo vệ các trang web WordPress.
Các plugin và themes bảo mật tốt nhất
Hầu hết người dùng WordPress có xu hướng sử dụng các themes và plugin cho trang web của họ theo ý họ muốn. Chúng tôi khuyên bạn nên chú ý kiểm tra từng loại themes miễn phí hoặc bản quyền hoặc plugin khác nhau, đặc biệt là nếu bạn không sử dụng máy chủ thử nghiệm. Hầu hết các plugin và themes đều miễn phí và trừ khi nhà phát triển sở hữu mô hình kinh doanh vững chắc để đi kèm với các quà tặng miễn phí thì tính năng bảo mật có thể không phải là yếu tố được ưu tiên cao nhất trong quá trình phát triển. Nói cách khác, nếu nhà phát triển đang duy trì một plugin không vì một mục đích cần thiết, thì rất có thể họ đã không dành thời gian để kiểm tra tính năng bảo mật thích hợp.
Đừng quên nhật ký đăng nhập và hệ thống giám sát (Logs & Monitoring)
Trong bài viết này, chúng tôi đã cho các bạn thấy các cách bảo mật một trang web WordPress. Tuy nhiên, vì việc bảo mật WordPress chỉ là một vấn đề tương đối (do các trang web luôn phát triển bằng cách thay đổi chức năng và người dùng) nên sẽ tồn tại một khía cạnh khác đối với bảo mật WordPress: đó là bản ghi nhật ký hoạt động và hệ thống giám sát. Nhật ký kiểm tra (audit logs) hay nhật ký hoạt động (active logs) là một bản ghi các sự kiện và thay đổi đã xảy ra trên trang web của bạn theo thời gian. Trong audit logs, bạn có thể tìm thấy thông tin về người đã đăng nhập vào trang web của mình, cài đặt hoặc cập nhật plugin, thay đổi nội dung, thay đổi cài đặt của trang web, v.v.
Nhận ra các cuộc tấn công trước khi chúng xảy ra
Bằng cách giữ audit logs trên trang web WordPress của bạn, bạn có thể đảm bảo trách nhiệm của người dùng, dễ dàng khắc phục sự cố kỹ thuật và phát hiện các cuộc tấn công trước hoặc khi chúng xảy ra, cho phép bạn thực hiện hành động phòng tránh để ngăn chặn chúng. Audit logs cũng được sử dụng cho hoạt động pháp y, để tìm hiểu những gì đã xảy ra trong trường hợp không may của một vụ hack thành công. Để giữ audit logs trên trang web WordPress của bạn, bạn cần cài đặt một plugin ví dụ như WP Security Audit Log.
Tạm kết
Nếu bạn đã đọc hết bài viết này, thì còn chần chừ gì mà không cải thiện ngay tính năng bảo mật cho trang web WordPress của mình. Tựa như việc phải luôn cập nhật các bài viết và fanpages, kiểm tra bảo mật của WordPress nên nằm trong thói quen của mỗi chủ sở hữu trang web. Mặc dù trên đây không phải là tất cả những gì bạn có thể làm để tăng tính bảo mật cho trang web của mình, như việc người ta hay tạo các bản sao lưu thường xuyên để bảo mật trang web cho mình, nhưng chắc chắn bài viết này sẽ cung cấp cho bạn một danh sách thực tế về những điều bạn có thể và nên làm để bảo mật cho trang web – ít nhất là lớp bảo vệ đầu tiên của trang web. Hãy nhớ rằng, bảo mật WordPress không phải là một điều tuyệt đối, mà nó sẽ chỉ là việc bạn làm cho công cuộc tấn công của các tin tặc trở nên ngày càng khó khăn hơn mà thôi!