> TeamDevDesign
Bạn đang tìm kiếm gì?

Khám phá dịch vụ của chúng tôi và tìm hiểu cách chúng tôi có thể giúp bạn đạt được mục tiêu

Bảo mật đăng nhập WordPress: chống brute force 2026
  1. Trang chủ

  2. Bảo mật Website

  3. Bảo Mật Đăng Nhập WordPress: Chống Brute Force, Bật 2FA (2026)

Bảo Mật Đăng Nhập WordPress: Chống Brute Force, Bật 2FA (2026)

Hướng dẫn bảo mật đăng nhập WordPress 2026: chống brute force, xác thực 2 lớp, passkey, chặn XML-RPC, ẩn user, bảo vệ wp-admin kèm cấu hình mẫu.

Team Dev Design
Team Dev Design

29 phút để đọc
Bảo Mật Đăng Nhập WordPress: Chống Brute Force, Bật 2FA (2026)
Nội dung

Mở nhật ký truy cập của một website WordPress bất kỳ, bạn thường sẽ thấy hàng loạt yêu cầu POST /wp-login.php và POST /xmlrpc.php từ những địa chỉ IP lạ, kể cả khi website rất nhỏ. Đó là bot tự động đang dò mật khẩu. Chỉ cần một tài khoản quản trị bị đoán trúng, kẻ xấu có thể cài plugin chứa mã độc, chèn link rác hoặc khóa bạn khỏi chính website của mình. Vì vậy bảo mật đăng nhập WordPress là lớp phòng thủ nên làm đầu tiên, trước cả việc tối ưu tốc độ hay SEO.

Bài viết này của TeamDevDesign đi từ cách kẻ tấn công vượt qua trang đăng nhập (brute force, credential stuffing, XML-RPC, liệt kê tên người dùng) đến từng biện pháp phòng tránh cụ thể, có cấu hình mẫu cho Apache, Nginx và functions.php. Nội dung được cập nhật theo tài liệu chính thức của WordPress năm 2025–2026.

Mục lục


1. Vì sao bảo mật đăng nhập WordPress quan trọng?

WordPress dùng đường dẫn đăng nhập cố định: /wp-login.php và /wp-admin/. Ai cũng biết hai địa chỉ này, nên bot không cần tìm kiếm gì thêm. Chúng chỉ việc gửi yêu cầu đăng nhập liên tục với danh sách tên người dùng và mật khẩu có sẵn.

Nhiều chủ website nghĩ rằng "site nhỏ, ai thèm hack". Thực tế, phần lớn các đợt tấn công đăng nhập không nhắm vào bạn cụ thể. Bot quét hàng loạt địa chỉ IP và tên miền, website nào yếu thì bị chiếm. Website bị chiếm thường được dùng để phát tán spam, chuyển hướng sang trang lừa đảo hoặc làm bàn đạp tấn công nơi khác.

Tài liệu Brute Force Attacks trên developer.wordpress.org khuyến nghị kết hợp nhiều lớp: mật khẩu mạnh, xác thực 2 lớp, giới hạn tốc độ đăng nhập, bảo vệ XML-RPC, giám sát nhật ký và sao lưu. Không có một plugin hay một dòng cấu hình nào tự nó đủ an toàn. Bài này đi theo đúng tinh thần đó.

Lưu ý: Bảo mật đăng nhập chỉ là một phần. Nếu bạn muốn nhìn toàn cảnh, hãy đọc thêm bài các lỗ hổng bảo mật WordPress thường gặp.


2. 4 hình thức tấn công đăng nhập WordPress phổ biến

Hiểu cách kẻ tấn công làm việc giúp bạn chọn đúng biện pháp, thay vì cài thêm plugin một cách cảm tính.

2.1. Brute force (dò mật khẩu)

Bot thử lần lượt rất nhiều mật khẩu cho một tên người dùng, thường bắt đầu từ các mật khẩu phổ biến như 123456, admin@123, tên miền + năm sinh. Mật khẩu ngắn hoặc dễ đoán sẽ bị phá rất nhanh. Mỗi lần thử còn khiến PHP và cơ sở dữ liệu phải xử lý, nên website có thể chậm hẳn khi bị dò liên tục.

2.2. Credential stuffing (nhồi thông tin đăng nhập bị lộ)

Kẻ tấn công lấy cặp email/mật khẩu bị lộ từ các vụ rò rỉ dữ liệu ở dịch vụ khác, rồi thử trên website của bạn. Nếu bạn dùng lại mật khẩu cũ ở nhiều nơi, mật khẩu dài đến mấy cũng không giúp được. Theo OWASP Credential Stuffing Prevention Cheat Sheet, xác thực nhiều lớp là cách phòng chống hiệu quả nhất với kiểu tấn công này.

2.3. Tấn công qua XML-RPC (xmlrpc.php và system.multicall)

xmlrpc.php là giao diện lập trình cũ để ứng dụng bên ngoài đăng bài, nhận pingback. Nó cũng nhận tên người dùng và mật khẩu, nên là mục tiêu dò mật khẩu quen thuộc. Tài liệu chính thức của WordPress nêu rõ phương thức system.multicall từng bị lạm dụng để gói nhiều lần thử đăng nhập vào một yêu cầu HTTP duy nhất, qua mặt các công cụ chỉ đếm số yêu cầu.

Các bản WordPress hiện nay đã có cờ auth_failed trong wp_xmlrpc_server::login(): sau một lần đăng nhập sai, các lần thử tiếp theo trong cùng yêu cầu bị từ chối. Tuy vậy, bot vẫn gửi hàng loạt yêu cầu riêng lẻ tới xmlrpc.php, nên nếu không dùng thì vẫn nên chặn.

2.4. Liệt kê tên người dùng (user enumeration)

Để dò mật khẩu, bot cần biết tên đăng nhập. WordPress vô tình để lộ thông tin này qua hai đường:

  • Trang tác giả: truy cập /?author=1 sẽ được chuyển hướng tới /author/ten-tac-gia/. Phần "ten-tac-gia" (slug) thường được tạo từ tên đăng nhập.
  • REST API: đường dẫn /wp-json/wp/v2/users trả về danh sách tác giả có bài viết công khai, kèm id, name và slug (xem tài liệu REST API Users).

Lộ tên người dùng không phải là lỗ hổng nghiêm trọng nếu mật khẩu mạnh và có 2FA. Nhưng nó giúp bot bỏ qua một nửa bài toán, nên đáng để chặn.


3. Lớp 1: Tài khoản, mật khẩu và phân quyền

3.1. Mật khẩu mạnh và trình quản lý mật khẩu

Mật khẩu tốt có ba đặc điểm: dài (nên từ 16 ký tự trở lên), ngẫu nhiên và không dùng lại ở nơi khác. Cách dễ nhất là dùng trình quản lý mật khẩu (Bitwarden, 1Password, KeePassXC hoặc trình quản lý tích hợp trong trình duyệt) để tạo và lưu mật khẩu. Bạn chỉ cần nhớ một mật khẩu chính thật mạnh.

Tránh các mẫu như tên website + năm, số điện thoại, ngày sinh. Bot đã có sẵn từ điển cho những kiểu này. Trình đo độ mạnh mật khẩu trong trang hồ sơ WordPress là công cụ tham khảo hữu ích khi đổi mật khẩu.

3.2. Không dùng tên đăng nhập "admin"

admin, administrator, webmaster hay chính tên miền là những tên bot thử đầu tiên. Nếu tài khoản quản trị của bạn đang dùng tên này, cách an toàn nhất là:

  1. Tạo một tài khoản Quản trị viên mới với tên đăng nhập khó đoán.
  2. Đăng nhập bằng tài khoản mới, kiểm tra mọi thứ hoạt động.
  3. Xóa tài khoản admin cũ và chọn "gán toàn bộ nội dung cho" tài khoản mới để không mất bài viết.

Ngoài ra, hãy đặt Tên hiển thị công khai (trong Hồ sơ) khác với tên đăng nhập để tên đăng nhập không xuất hiện dưới mỗi bài viết.

3.3. Phân quyền vai trò tối thiểu

Mỗi tài khoản Quản trị viên là một "cửa chính" vào website. Càng nhiều cửa, càng nhiều rủi ro. Nguyên tắc là chỉ cấp quyền vừa đủ cho công việc:

Vai tròPhù hợp choGhi chú
Quản trị viên (Administrator)Chủ website, người kỹ thuật chínhGiữ 1–2 tài khoản, bắt buộc 2FA
Biên tập viên (Editor)Người duyệt và quản lý nội dungKhông cài được plugin, theme
Tác giả (Author)Người viết bài tự đăngChỉ quản lý bài của mình
Cộng tác viên (Contributor)Người viết cần duyệtKhông tự đăng, không tải tệp

Định kỳ rà soát danh sách người dùng: xóa tài khoản của nhân viên đã nghỉ, đơn vị làm web cũ, tài khoản lạ không rõ ai tạo. Một tài khoản quản trị lạ thường là dấu hiệu website đã bị xâm nhập, khi đó hãy xem bài xử lý website WordPress bị hack.

Nên thêm dòng sau vào wp-config.php để tắt trình sửa file theme/plugin trong trang quản trị. Nếu chẳng may tài khoản bị chiếm, kẻ xấu cũng khó chèn mã PHP trực tiếp hơn (theo tài liệu Hardening WordPress):

define( 'DISALLOW_FILE_EDIT', true );

4. Lớp 2: Xác thực 2 lớp WordPress và passkey

Xác thực 2 lớp (2FA) yêu cầu thêm một yếu tố ngoài mật khẩu, ví dụ mã 6 số trên điện thoại. Kể cả khi mật khẩu bị lộ, kẻ tấn công vẫn không đăng nhập được nếu không có yếu tố thứ hai. Đây là biện pháp hiệu quả nhất trước cả brute force lẫn credential stuffing.

WordPress core chưa tích hợp sẵn 2FA, nên bạn cần plugin. Plugin Two Factor trên kho WordPress.org hỗ trợ ứng dụng xác thực (TOTP), mã qua email và mã dự phòng. Muốn dùng passkey hoặc khóa bảo mật phần cứng, có thể cài thêm WebAuthn Provider for Two Factor. Nhiều plugin bảo mật tổng hợp cũng có tính năng 2FA.

Phương thứcMức an toànƯu điểmHạn chế
Mã qua emailThấp–trung bìnhDễ dùng, không cần cài appEmail bị chiếm thì 2FA mất tác dụng
Mã qua SMSTrung bìnhQuen thuộcCó rủi ro chiếm SIM, phụ thuộc nhà mạng
Ứng dụng xác thực (TOTP)CaoMiễn phí, hoạt động offlineMất điện thoại cần mã dự phòng
Passkey / khóa bảo mật (WebAuthn)Rất caoChống được trang đăng nhập giả mạoCần thiết bị hỗ trợ, cấu hình ban đầu phức tạp hơn

Lời khuyên thực tế: bắt buộc 2FA cho mọi tài khoản Quản trị viên và Biên tập viên, ưu tiên ứng dụng xác thực hoặc passkey. Hãy in hoặc lưu mã dự phòng vào trình quản lý mật khẩu, tránh tự khóa mình khỏi website.


5. Lớp 3: Chống brute force WordPress bằng giới hạn đăng nhập

Mặc định, WordPress cho phép thử mật khẩu không giới hạn. Mục tiêu của lớp này là làm chậm hoặc chặn những IP thử sai quá nhiều lần. Có ba mức, chọn theo loại hosting bạn đang dùng.

5.1. Dùng plugin giới hạn đăng nhập sai

Phù hợp với hosting chia sẻ, nơi bạn không sửa được cấu hình máy chủ. Các plugin như Limit Login Attempts Reloaded, Wordfence, Solid Security hay All-In-One Security đều có tính năng khóa IP sau vài lần đăng nhập sai. Một cấu hình hợp lý: cho phép 4–5 lần thử, khóa 20–30 phút, khóa dài hơn nếu tái phạm.

Hạn chế của plugin là mỗi lần thử vẫn phải chạy PHP và WordPress. Khi bị dò với lưu lượng lớn, máy chủ vẫn tốn tài nguyên. Vì vậy nếu dùng VPS, nên chặn sớm hơn ở tầng máy chủ.

5.2. Giới hạn tốc độ ở Nginx

Nếu website chạy trên VPS với Nginx (ví dụ khi bạn cài WordPress trên VPS bằng aaPanel), có thể giới hạn số yêu cầu tới wp-login.php ngay ở web server:

# Trong khối http {}
limit_req_zone $binary_remote_addr zone=wplogin:10m rate=10r/m;

# Trong khối server {} của website
location = /wp-login.php {
    limit_req zone=wplogin burst=5 nodelay;
    limit_req_status 429;
    # Giữ nguyên các dòng chuyển tới PHP-FPM như cấu hình hiện có
}

Cấu hình này cho mỗi IP khoảng 10 yêu cầu mỗi phút tới trang đăng nhập, vượt quá sẽ nhận mã 429. Người dùng thật gần như không bị ảnh hưởng.

Lưu ý khi dùng Cloudflare: nếu website đi qua proxy Cloudflare, Nginx sẽ thấy IP của Cloudflare chứ không phải IP thật của khách. Cần cấu hình module real_ip (set_real_ip_from + real_ip_header CF-Connecting-IP) trước, nếu không bạn có thể chặn nhầm cả Cloudflare.

5.3. Chặn IP bằng Fail2Ban ở mức máy chủ

Fail2Ban đọc file log, phát hiện IP gửi quá nhiều yêu cầu đăng nhập rồi chặn IP đó bằng tường lửa. Ưu điểm là IP bị chặn trước khi chạm tới PHP. Một bộ lọc đơn giản dựa trên access log:

# /etc/fail2ban/filter.d/wordpress-login.conf
[Definition]
failregex = ^<HOST> .*"POST /(wp-login|xmlrpc)\.php
ignoreregex =

# /etc/fail2ban/jail.local
[wordpress-login]
enabled  = true
port     = http,https
filter   = wordpress-login
logpath  = /var/log/nginx/access.log
maxretry = 6
findtime = 600
bantime  = 3600

Đổi logpath cho đúng đường dẫn log website của bạn (trên aaPanel thường nằm trong /www/wwwlogs/). Cách cài đặt Fail2Ban, cấu hình jail cho SSH và tường lửa UFW được hướng dẫn chi tiết trong bài bảo mật VPS Linux. Hãy thêm IP của bạn vào ignoreip để tránh tự chặn mình.


6. Tắt hoặc giới hạn XML-RPC

Trước khi tắt, hãy kiểm tra bạn có đang dùng XML-RPC không. Một số trường hợp cần nó: ứng dụng WordPress trên điện thoại kết nối kiểu cũ, công cụ đăng bài từ xa, một số tính năng của Jetpack. Nếu không dùng, chặn hẳn ở web server là cách gọn nhất.

Apache (.htaccess):

<Files "xmlrpc.php">
    Require all denied
</Files>

Nginx:

location = /xmlrpc.php {
    deny all;
    access_log off;
    log_not_found off;
}

Nếu không sửa được cấu hình máy chủ, có thể dùng filter trong functions.php. Cần biết rằng theo tài liệu filter xmlrpc_enabled, filter này chỉ tắt các phương thức XML-RPC cần đăng nhập, không tắt toàn bộ file (pingback vẫn hoạt động):

add_filter( 'xmlrpc_enabled', '__return_false' );

Với website cần giữ XML-RPC, hãy giới hạn tốc độ hoặc chỉ cho phép dải IP của dịch vụ cần dùng, đồng thời bật 2FA cho tài khoản quản trị.


7. Chặn liệt kê tên người dùng

Đoạn mã sau chặn dò tìm tên qua ?author= và ẩn endpoint người dùng của REST API với khách chưa đăng nhập. Nên đặt trong functions.php của child theme hoặc một plugin riêng (mu-plugin) để không mất khi cập nhật theme:

// Chặn dò tên người dùng qua ?author=
add_action( 'template_redirect', function () {
    if ( isset( $_GET['author'] ) && ! is_user_logged_in() ) {
        wp_safe_redirect( home_url( '/' ), 301 );
        exit;
    }
}, 1 );

// Ẩn /wp/v2/users với khách chưa đăng nhập
add_filter( 'rest_endpoints', function ( $endpoints ) {
    if ( ! is_user_logged_in() ) {
        unset( $endpoints['/wp/v2/users'] );
        unset( $endpoints['/wp/v2/users/(?P<id>[\d]+)'] );
    }
    return $endpoints;
} );

Ưu tiên 1 giúp đoạn mã chạy trước cơ chế chuyển hướng chuẩn của WordPress (vốn sẽ đưa ?author=1 tới trang tác giả và làm lộ slug). Trình soạn thảo khối vẫn hoạt động bình thường vì người dùng đã đăng nhập. Sau khi thêm, hãy thử mở /wp-json/wp/v2/users trong cửa sổ ẩn danh để kiểm tra.

Đoạn mã trên chỉ giảm thông tin lộ ra ngoài. Nó không thay thế mật khẩu mạnh và 2FA. Nếu website có trang tác giả công khai, slug tác giả vẫn hiển thị trong URL, vì vậy tên đăng nhập khó đoán vẫn là điều quan trọng.


8. Bảo mật wp-admin: giới hạn IP, HTTP auth, WAF và đổi URL

8.1. Chỉ cho phép IP của bạn vào trang đăng nhập

Nếu bạn có IP tĩnh (văn phòng, VPN), đây là cách mạnh nhất: mọi IP khác đều không thấy trang đăng nhập. Ví dụ theo tài liệu chính thức của WordPress (thay bằng IP của bạn):

# Apache (.htaccess)
<Files "wp-login.php">
    Require ip 203.0.113.15
</Files>

# Nginx
location = /wp-login.php {
    allow 203.0.113.15;
    deny all;
    # Giữ nguyên các dòng chuyển tới PHP-FPM
}

Với IP động (mạng gia đình ở Việt Nam thường đổi IP), cách này dễ tự khóa mình. Khi đó, HTTP auth hoặc WAF sẽ phù hợp hơn.

8.2. Thêm một lớp mật khẩu bằng HTTP Basic Auth

Trình duyệt sẽ hỏi thêm một cặp tên/mật khẩu trước khi hiển thị wp-login.php. Bot không qua được lớp này nên không chạm tới WordPress:

<Files "wp-login.php">
    AuthType Basic
    AuthName "Khu vuc quan tri"
    AuthUserFile /duong-dan-ngoai-web-root/.htpasswd
    Require valid-user
</Files>

Tạo file mật khẩu bằng lệnh htpasswd -c /duong-dan-ngoai-web-root/.htpasswd tencuaban và đặt file ngoài thư mục public. Chỉ nên áp dụng cho wp-login.php. Tài liệu WordPress lưu ý cách cũ là khóa toàn bộ thư mục /wp-admin bằng Basic Auth dễ làm hỏng các tính năng dùng admin-ajax.php ngoài trang chủ.

8.3. Cloudflare và tường lửa ứng dụng web (WAF)

WAF lọc lưu lượng trước khi tới máy chủ của bạn. Với Cloudflare, bạn có thể tạo quy tắc cho /wp-login.php và /xmlrpc.php: hiển thị thử thách (Managed Challenge hoặc Turnstile), giới hạn tốc độ, hoặc chặn theo quốc gia nếu website chỉ phục vụ khách trong nước. Các plugin bảo mật có tường lửa ở mức ứng dụng cũng là một lựa chọn trên hosting chia sẻ.

8.4. Đổi URL đăng nhập: chỉ giảm bot, không phải biện pháp chính

Plugin như WPS Hide Login cho phép đổi /wp-login.php thành một địa chỉ riêng. Cách này giảm đáng kể lưu lượng bot "quét mù" và làm log gọn hơn. Nhưng hãy hiểu đúng: đây là che giấu, không phải bảo vệ. Địa chỉ mới có thể lộ qua plugin khác, email, hoặc người từng biết nó. Ngoài ra, xmlrpc.php vẫn nhận đăng nhập nếu bạn chưa chặn.

Chỉ đổi URL sau khi đã có mật khẩu mạnh, 2FA và giới hạn đăng nhập. Nhớ lưu địa chỉ mới vào trình quản lý mật khẩu.


9. Application Passwords, phiên đăng nhập và nhật ký

9.1. Quản lý Application Passwords

Từ WordPress 5.6, mỗi người dùng có thể tạo Application Passwords để ứng dụng bên ngoài gọi REST API hoặc XML-RPC. Mật khẩu ứng dụng không dùng được để đăng nhập wp-login.php và mặc định chỉ hoạt động qua HTTPS. Tuy vậy, nó vẫn có quyền như tài khoản chủ.

  • Vào Người dùng → Hồ sơ → Mật khẩu ứng dụng, thu hồi những mật khẩu không còn dùng hoặc không rõ nguồn gốc.
  • Đặt tên rõ ràng cho từng mật khẩu (ví dụ "App đăng bài - 2026") để dễ rà soát.
  • Nếu website không cần tính năng này, có thể tắt hẳn:
add_filter( 'wp_is_application_passwords_available', '__return_false' );

9.2. Đăng xuất các phiên lạ

Trong trang Hồ sơ, mục Phiên đăng nhập có nút Đăng xuất khỏi tất cả các nơi khác. Hãy dùng nút này khi bạn từng đăng nhập trên máy lạ, mất điện thoại, hoặc nghi mật khẩu bị lộ. Quản trị viên cũng có thể đăng xuất phiên của người dùng khác trong trang sửa người dùng. Sau khi nghi bị lộ, hãy đổi mật khẩu trước rồi mới đăng xuất các phiên.

9.3. Bật nhật ký đăng nhập

Bạn không thể phản ứng với điều mình không thấy. Plugin nhật ký hoạt động (ví dụ WP Activity Log, Simple History) ghi lại ai đăng nhập, lúc nào, từ IP nào, ai tạo người dùng mới hay cài plugin. Ở tầng máy chủ, access log cho biết IP nào đang dồn dập gửi POST tới trang đăng nhập.

Những dấu hiệu cần kiểm tra ngay: đăng nhập thành công vào giờ bất thường, từ quốc gia lạ, tài khoản quản trị mới không rõ ai tạo, plugin lạ được cài. Nếu bạn quản lý nhiều plugin, nên đọc thêm bài lỗ hổng plugin WordPress vì một plugin lỗi có thể giúp kẻ xấu bỏ qua cả trang đăng nhập.


10. Checklist bảo mật đăng nhập WordPress

Việc cần làmMức ưu tiênHosting chia sẻVPS
Mật khẩu dài, ngẫu nhiên, lưu trong trình quản lý mật khẩuBắt buộcCóCó
Không dùng tên đăng nhập "admin", tên hiển thị khác tên đăng nhậpBắt buộcCóCó
2FA (TOTP hoặc passkey) cho Quản trị viên, Biên tập viênBắt buộcCóCó
Rà soát vai trò, xóa tài khoản thừaCaoCóCó
Giới hạn đăng nhập sai (plugin)CaoCóCó
Rate limit Nginx / Fail2BanCaoKhôngCó
Chặn xmlrpc.php nếu không dùngCaoCó (.htaccess)Có
Chặn ?author= và /wp/v2/users với kháchTrung bìnhCóCó
Giới hạn IP hoặc HTTP auth cho wp-login.phpTrung bìnhTùy hostingCó
Cloudflare/WAF cho trang đăng nhậpTrung bìnhCóCó
Thu hồi Application Passwords không dùngTrung bìnhCóCó
Bật nhật ký đăng nhập, xem định kỳTrung bìnhCóCó
Đổi URL đăng nhập (tùy chọn, giảm bot)ThấpCóCó

11. Câu hỏi thường gặp

Không. Đổi URL đăng nhập chỉ giảm lượng bot quét tự động. Nếu mật khẩu yếu hoặc bị lộ, kẻ tấn công biết địa chỉ mới vẫn đăng nhập được. Hãy coi đây là lớp phụ, đặt sau mật khẩu mạnh, 2FA và giới hạn đăng nhập.

Phần lớn website không bị ảnh hưởng vì trình soạn thảo khối dùng REST API. Các tính năng cần XML-RPC gồm pingback, một số ứng dụng đăng bài từ xa và một vài tính năng của Jetpack. Hãy kiểm tra trước, chặn sau, và thử lại các tính năng quan trọng.

Plugin Two Factor trên WordPress.org là lựa chọn gọn nhẹ, hỗ trợ ứng dụng xác thực, email và mã dự phòng; muốn dùng passkey có thể thêm WebAuthn Provider for Two Factor. Nếu đã dùng một plugin bảo mật tổng hợp có sẵn 2FA, bạn không cần cài thêm plugin riêng. Quan trọng nhất là bắt buộc 2FA cho tài khoản quản trị.

Dùng mã dự phòng đã lưu. Nếu không còn, người có quyền truy cập hosting có thể tạm vô hiệu plugin 2FA bằng cách đổi tên thư mục plugin qua File Manager/SFTP, đăng nhập rồi thiết lập lại. Đây cũng là lý do mật khẩu hosting và SFTP phải được bảo vệ kỹ như mật khẩu WordPress.

Dấu hiệu thường gặp: website chậm bất thường, CPU tăng cao, access log có rất nhiều yêu cầu POST /wp-login.php hoặc /xmlrpc.php từ nhiều IP, plugin bảo mật báo nhiều lần đăng nhập sai. Khi đó hãy bật giới hạn đăng nhập, chặn XML-RPC và kiểm tra lại các tài khoản quản trị.


12. Kết luận

Bảo mật đăng nhập WordPress không đòi hỏi công cụ đắt tiền. Phần lớn rủi ro được giảm đáng kể chỉ với vài việc: mật khẩu mạnh không dùng lại, bỏ tên "admin", bật xác thực 2 lớp, giới hạn đăng nhập sai và chặn XML-RPC khi không dùng. Các lớp như giới hạn IP, HTTP auth, Cloudflare hay đổi URL đăng nhập giúp giảm thêm lưu lượng bot. Không biện pháp nào an toàn tuyệt đối, nhưng nhiều lớp kết hợp sẽ khiến website của bạn là mục tiêu khó hơn hẳn so với số đông.

Nếu bạn cần người rà soát và cấu hình giúp, TeamDevDesign có dịch vụ bảo trì và quản trị website, bao gồm kiểm tra cấu hình đăng nhập, cập nhật plugin và sao lưu định kỳ. Bạn có thể liên hệ TeamDevDesign để trao đổi về website của mình.

Chia sẻ bài viết này:

Nội dung
Bài Viết Liên Quan
Lỗ Hổng Bảo Mật PHP: 11 Lỗi Phổ Biến Và Cách Phòng Chống (2026)
Bảo mật Website Lỗ Hổng Bảo Mật PHP: 11 Lỗi Phổ Biến Và Cách Phòng Chống (2026)

Các lỗ hổng bảo mật PHP phổ biến 2026: SQL injection, XSS, CSRF, upload file, deserialization, php.i...

Lỗ Hổng Bảo Mật WordPress: 7 Loại Phổ Biến & Checklist Hardening 2026
Bảo mật Website Lỗ Hổng Bảo Mật WordPress: 7 Loại Phổ Biến & Checklist Hardening 2026

Lỗ hổng bảo mật WordPress phổ biến (XSS, SQLi, CSRF, phân quyền sai), số liệu Patchstack 2025 và che...

Lỗ Hổng Plugin WordPress: Cách Kiểm Tra & Phòng Tránh 2026
Bảo mật Website Lỗ Hổng Plugin WordPress: Cách Kiểm Tra & Phòng Tránh 2026

Lỗ hổng plugin WordPress chiếm 91% lỗ hổng mới năm 2025. Xem 5 CVE có thật, rủi ro plugin nulled, cá...

dots Nhận bài viết mới về thiết kế website, SEO và vận hành website.

Đăng ký nhận bản tin của chúng tôi!

Cập nhật xu hướng thiết kế website, mẹo tối ưu SEO và các giải pháp phát triển kinh doanh online mỗi tuần.

icon
icon
Trò chuyện trực tuyến
Trò chuyện trực tuyến Offline

Xin chào! Chúng tôi có thể giúp gì cho bạn hôm nay?

Powered by FOB Live Chat