Trong số các nền tảng quản lý nội dung (CMS) phổ biến, WordPress đã chiếm lĩnh vị trí quan trọng với gần 40% tổng số trang web hoạt động trên internet. Tuy nhiên, sự phổ biến cũng đi đôi với những thách thức về bảo mật.

Bảo vệ website WordPress của bạn khỏi các mối nguy hiểm trực tế và các cuộc tấn công trực tế là một nhiệm vụ quan trọng, đặc biệt khi dữ liệu của bạn và uy tín của bạn đang được đặt ở tầm ngắm. Trong bài viết này, chúng ta sẽ đưa ra một loạt các hướng dẫn chi tiết để giúp bạn duy trì sự an toàn cho website WordPress của mình. Từ việc cài đặt cơ bản cho đến các biện pháp bảo mật nâng cao, bạn sẽ được trang bị những kiến thức cần thiết để tự tin tiến xa trên con đường trực tuyến mà không phải lo lắng về sự an toàn.

Qua những bài hướng dẫn cụ thể và các giải pháp hiệu quả, bạn sẽ hiểu rõ hơn về các nguy cơ thường gặp và cách tối ưu hóa website WordPress của mình. Bằng cách áp dụng những biện pháp bảo mật này, bạn sẽ giảm thiểu nguy cơ bị tấn công, mất dữ liệu quan trọng và duy trì môi trường trực tuyến an toàn cho cả bạn và khách hàng của mình.

Hãy cùng chúng tôi bắt đầu khám phá những cách thức đảm bảo an toàn cho website WordPress của bạn trong bài viết dưới đây.

1. Sử dụng Theme và Plugin

image 52
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 28

Đối với cá nhân tôi thì thà dùng bản free còn hơn bản null/crack. Thực tế đúng như vây, bạn sử dụng bản null thì đâu đó trong các bản này bạn còn được “Khuyến mãi” cả mã độc vào.

Bằng chứng là trong quá trình làm việc tại đơn vị cung cấp server/hosting với vai trò kỹ thuật thì một ngày tôi nhận được cả vài chục web bị nhiễm mã độc. Và điểm chung là các web đều dùng các theme, plugin nuller. Một số sản phẩm bản quyền có giá cực cao nhưng bạn được mua với giá rất rẻ như (59k, 99k) chẳng hạn.

Một số sản phẩm “bản quyền” mà các người dùng WordPress ở VN thường dùng nhất là

  • elementor pro
  • flatsome
  • advanced custom fields pro
  • Yoast SEO Premium

Để dẫn chứng tôi đã tải một bản elementor pro trên mạng về sau đó dùng virustotal để quét và kết quả như bên dưới. Nó thật sự không an toàn các bạn à.

image 56
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 29

Như vậy việc sử dụng Theme và Plugin bản quyền hoàn toàn thì có bị nhiễm mã độc hay không. Tôi khẳng định với bạn là có. Tại thời điểm bạn cài thì website bạn sẽ an toàn, nhưng sẽ không an toàn trong thời gian sử dụng nếu việc bảo mật website của bạn lỏng lẻo.

Mặc dù việc sử dụng theme và plugin bản quyền không đảm bảo hoàn toàn tránh được mã độc, nhưng nó là một biện pháp tốt để giảm nguy cơ. Luôn luôn duy trì sự cảnh giác và thực hiện các biện pháp bảo mật cần thiết để bảo vệ trang web WordPress của bạn.

2. Quy tắc đặt mật khẩu

Nhiều bạn luôn cho rằng mật khẩu đặt sao cũng được “Ai mà biết”, nhưng không nhé. Không phải người ta scan bằng cơm đâu mà bot sẽ làm việc này. Việc đặt mật khẩu nó rất quan trọng, quan trọng mức nào thì qua ảnh bên dưới sẽ giúp bạn sẽ hiểu rõ hơn.

image 53
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 30

Đối với mật khẩu bạn nên đặt 8 ký tự trở lên bao gồm: Chữ in Hoa + Chữ Thường + Số + Ký tự đặc biệt

Ví dụ đây là một chuổi mật khẩu có độ phức tạp cao. Tạo mật khẩu ngẫu nhiên tại đây

K0QY$mdUxOsmhE8
image 54
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 31

3. Thường xuyên Update Core, Theme, Plugin WordPress

Câu hỏi mà tôi gặp hằng ngày nhiều nhất sau khi web bị mã độc là “Web tôi cả năm nay không làm gì cả tại sao lại bị mã độc“. Một câu hỏi rất vô tri. Bạn có thể hình dung một căn nhà nếu ở vài năm không bảo trì, chăm sóc liệu nó có xuống cấp hay không. Website cũng như vậy, bạn cần phải thường xuyên cập nhật khi có thông báo, vì các bản cũ có bug thì nhà phát triển họ mới ra bản cập nhật.

Vì vậy đừng ngần ngại khi có thông báo cập nhật. Và để an toàn hơn bạn cứ sao lưu trước khi làm việc đó.

image 55
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 32

4. Thay đổi các thông tin mặc định của WordPress

Mặc định khi cài WordPress sẽ sử dụng các thông tin mặc định của WordPress, ai cũng biết điều này và hiển nhiên hacker cũng biết. Sau đây là một số thông tin mặc định mà bạn nên thay đổi ngay:

  • User: mặc định user có tên admin và bạn hãy thay đổi nó.
  • prefix database: Mặc định prefix sẽ là wp_và bạn hãy thay đổi nó.
  • Đường dẫn đăng nhập: wp-adminwp-login.php.
bảo vệ website WordPress bạn luôn an toàn
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 33

5. Chọn nhà cung cấp Server Hosting uy tín

Việc chọn Hosting rất quan trọng, hosting giúp website vận hành tốt, và tất nhiên việc bảo mật phải đặt lên hàng đầu, vì đâu biết rằng Website bạn rất nhiều thông tin quan trọng.

Hiện tại ở Việt Nam có rất nhiều nhà cung cấp dịch vụ Server Hosting, rất khó để bạn lựa chọn và mình có sẵn một bài viết Top các nhà hosting tốt nhất năm 2022. Mời các bạn xem qua và lựa chọn

  • TOP 10 hosting tốt nhất 2022
top 10 nha cung cap hosting viet nam
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 34

5. Phân quyền, bảo vệ file và thư mục với htaccess

image 57
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 35

File .htaccess được dùng để cấu hình cho các liên kết WordPress được hoạt động. Không có các lệnh đúng trong .htaccess bạn sẽ gặp rất nhiều lỗi 404.

Rất nhiều người không biết .htaccess có thể tăng tính bảo mật website WordPress. Ví dụ, với .htaccess, bạn có chặn truy cập hoặc vô hiệu việc thực thi PHP trên một thư mục được chỉ định. Bên dưới là cách giúp bạn làm thế nào để dùng .htaccess để tăng tính bảo mật của WordPress.

5.1 Vô hiệu hóa thực thi PHP trong thư mục /wp-content/uploads

RewriteRule ^wp\-content/uploads/.*\.(?:php[1-7]?|pht|phtml?|phps|js)$ - [NC,F]

5.2. Bảo vệ wp-config.php


order allow,deny
deny from all

5.3 Bảo vệ .htaccess khỏi truy cập trái phép


order allow,deny
deny from all
satisfy all

5.4 Chặn cross-site scripting (XSS)

# Blocks some XSS attacks

RewriteCond %{QUERY_STRING} (\|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F,L]

5.5 Hạn chế quyền truy cập vào wp-includes

# Blocks all wp-includes folders and files

RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]

5.6 Hạn chế quyền truy cập trực tiếp vào các file PHP của Plugins & Themes

RewriteRule ^wp\-content/plugins/.*\.(?:php[1-7]?|pht|phtml?|phps)$ - [NC,F]
RewriteRule ^wp\-content/themes/.*\.(?:php[1-7]?|pht|phtml?|phps)$ - [NC,F]

5.6 Bảo vệ file xmlrpc.php


order allow,deny
deny from all

5.7 Giới hạn truy cập wp-admin

order deny,allow
allow from địa-chỉ-ip-của-bạn
deny from all

Tóm tắt lại sau đây là file .htaccess mẫu của tôi. Bạn có thể copy và sử dụng ngay


	RewriteEngine On
	RewriteBase /
	RewriteRule ^index\.php$ - [L]
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule . /index.php [L]


# Blocks all wp-includes folders and files

RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]


# Blocks some XSS attacks

RewriteCond %{QUERY_STRING} (\|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F,L]



	RewriteEngine On
	
	# Disable PHP in Uploads - Security > Settings > System Tweaks > PHP in Uploads
	RewriteRule ^wp\-content/uploads/.*\.(?:php[1-7]?|pht|phtml?|phps|js)$ - [NC,F]
	
	# Disable PHP in Plugins - Security > Settings > System Tweaks > PHP in Plugins
	RewriteRule ^wp\-content/plugins/.*\.(?:php[1-7]?|pht|phtml?|phps)$ - [NC,F]
	
	# Disable PHP in Themes - Security > Settings > System Tweaks > PHP in Themes
	RewriteRule ^wp\-content/themes/.*\.(?:php[1-7]?|pht|phtml?|phps)$ - [NC,F]


# Bock access xmlrpc.php

	Order deny,allow
	Deny from all


# Bock access wp-config.php

	Order deny,allow
	Deny from all


# Bock access license.txt

	Order deny,allow
	Deny from all


# Bock access readme.html

	Order deny,allow
	Deny from all


# Bock access .htaccess

	order allow,deny
	deny from all
	satisfy all

6. Trang bị thêm Plugin bảo mật

Bạn hãy trang bị thêm Plugin bảo mật để tăng cường bảo mật cho web. Một số Plugin tôi đề xuất như sau

  • WordFence
  • ithemes security
  • Anti-Malware Security

7. Bảo mật ở Server

Bảo mật ở máy chủ (server) là một yếu tố cực kỳ quan trọng trong môi trường công nghệ thông tin và mạng. Dưới đây là một số cách cơ bản để bạn bảo mật.

image 58
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 36

7.1 Thay đổi Port SSH

Mặc định SSH Port là 22 Bạn hãy thay đổi nó ngay lập tức thành một port khác để hacker không scan được. Nếu bạn chưa biết cách đổi port SSH hãy xem hướng dẫn này

7.2 Cấu hình SSH Key và login passwd

SSH Key là một giải pháp khá an toàn để chứng thực cho việc đăng nhập. Khi bạn sử dụng SSH Key và tắt login passwd thì kẻ xấu cho dù có passwd root của không thể đăng nhập vào được

7.3 Cấu hình thêm Firewall

image 59
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 37

Firewall là bức tường lửa để ngăn chặn các cuộc tấn công ở bên ngoài. Từ đó giúp cho máy chủ bạn được an toàn hơn

  • CSF
  • Firewalld
  • UFW
  • fail2ban

7.4 Cài đặt thêm ứng dụng scan mã độc

image 60
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 38

Hiện có rất nhiều ứng dụng scan mã độc, điển hình là cpguard và imunify. Đây là 2 ứng dụng scan mà tôi thấy tốt nhất và có là sản phẩm trả phí. Tuy nhiên đối với Imunify có bản AV là bản miễn phí và bạn có thể cài đặt nó để sử dụng

8. Trang bị SSL cho website

SSL là cái không thể thiếu khi bạn thiết lập website. Hầu hết các Control Panel hay kịch bản script được cài trên Server Hosting đều có sẵn SSL miễn phí. Nếu bạn đang tìm kiếm cách cài hãy xem qua trang Caissl.com nhé. Website chia sẽ về SSL

huong dan cai dat ssl mien phi bao mat website

9. Kiểm tra dữ liệu trước khi upload lên hosting

Bước này khá quan trọng, nếu file bạn vị nhiễm virus, shell thì khi upload file lên hosting đồng nghĩa với virus sẽ theo lên luôn. Vì vậy bạn nên tập thói quen kiểm tra cẩn thận các file trước khi upload lên hosting. Nếu không có kinh nghiệp bạn có thể sử dụng qua công cụ virustotal để scan.

nhung dau hieu cho thay may tinh cua ban dang bi nhiem virus 1
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 39

10. Sao lưu dữ liệu định kỳ

anh 22
Hướng dẫn bảo mật website WordPress bạn luôn an toàn 40

Đây là bước rất quan trọng, việc backup định kỳ giúp bạn có thể bảo vệ toàn bộ website tại thời điểm đó, phòng trướng hợp xấu xãy ra. Mặc định nhà cung cấp luôn backup giúp bạn, tuy nhiên bạn cần backup riêng cho mình 1 vài bản theo tuần hoặc tháng.