ERR_CERT_AUTHORITY_INVALID: cách khắc phục (Chrome, Android)
Điểm chính
NET::ERR_CERT_AUTHORITY_INVALID (lỗi -202 của Chrome) nghĩa là trình duyệt không thể truy ngược chứng chỉ của trang web về một tổ chức cấp chứng chỉ mà nó tin tưởng: chứng chỉ tự ký, đến từ CA riêng, thiếu chứng chỉ trung gian, hoặc có thứ gì đó trong mạng của bạn đang thay chứng chỉ. Nếu chỉ một trang hiện lỗi, trang đó phải tự sửa. Nếu mọi trang HTTPS đều hiện lỗi, hãy kiểm tra trang đăng nhập Wi-Fi, tính năng quét HTTPS của phần mềm diệt virus, mạng cơ quan hoặc thiết bị đã cũ. Đừng nhập mật khẩu khi còn thấy cảnh báo này.
Kiểm tra ngay

Bắt đầu đọc
- NET::ERR_
CERT_ AUTHORITY_ INVALID là gì? - ERR_
CERT_ AUTHORITY_ INVALID trông như thế nào trên mỗi trình duyệt - Cơ chế tin tưởng chứng chỉ SSL hoạt động như thế nào (chuỗi tin cậy)
- Nguyên nhân gây ra NET::ERR_
CERT_ AUTHORITY_ INVALID - Cách khắc phục cho người truy cập (phía máy khách)
- Cách 1: đăng nhập Wi-Fi hoặc thử mạng khác
- Cách 2: kiểm tra tính năng quét HTTPS của phần mềm diệt virus
- Cách 3: cập nhật trình duyệt và hệ điều hành
- Cách 4: kiểm tra ngày và giờ
- Cách 5: thử chế độ ẩn danh, rồi khởi động lại trình duyệt
- Cách 6: trên Android
- Cách khắc phục cho chủ sở hữu trang web (phía máy chủ)
- Cách 1: cài đặt chứng chỉ từ CA đáng tin cậy
- Cách 2: gửi đầy đủ chuỗi chứng chỉ
- Cách 3: gia hạn chứng chỉ hết hạn
- Cách 4: bao phủ mọi tên mà khách truy cập dùng
- Cách 5: dùng CA riêng hoặc CA của công ty
- ERR_
CERT_ AUTHORITY_ INVALID trên localhost (dành cho lập trình viên) - Các lỗi chứng chỉ SSL liên quan
- Câu hỏi thường gặp
NET::ERR_CERT_AUTHORITY_INVALID là gì?
NET::ERR_CERT_AUTHORITY_INVALID nghĩa là trình duyệt không tin tưởng đơn vị đã cấp chứng chỉ của trang web. Chrome hiện “Kết nối của bạn không phải là kết nối riêng tư” và trong mục Nâng cao, Chrome nói máy chủ “không chứng minh được rằng đó là example.com” vì chứng chỉ bảo mật của nó không được tin cậy, điều này “có thể do định cấu hình sai hoặc có kẻ tấn công chặn kết nối của bạn”. Chromium liệt kê đây là lỗi -202 (net_error_list.h).
Kết nối đã được thiết lập, máy chủ đã gửi chứng chỉ, nhưng trình duyệt không thể liên kết nó với một tổ chức cấp chứng chỉ (CA) mà nó tin tưởng. Ghi chú của chính Chromium nêu ba lý do: kẻ tấn công đã thay chứng chỉ, trang web dùng một CA mà trình duyệt không biết, hoặc chứng chỉ là chứng chỉ tự ký.
Nếu một chứng chỉ có nhiều vấn đề, Chrome chỉ hiện vấn đề nghiêm trọng nhất, và đơn vị cấp không đáng tin được ưu tiên hơn tên sai hoặc ngày hết hạn. Vì vậy một chứng chỉ tự ký đã hết hạn sẽ hiện mã này, chứ không phải ERR_CERT_DATE_INVALID.
Chứng chỉ của trang web có đáng tin cậy không? Kiểm tra ngay
ERR_CERT_AUTHORITY_INVALID trông như thế nào trên mỗi trình duyệt
Mỗi trình duyệt diễn đạt lỗi này một cách khác nhau. Hãy tìm các thông báo sau:
| Trình duyệt | Tiêu đề trang | Mã lỗi |
|---|---|---|
| Chrome, Brave, Opera | Kết nối của bạn không phải là kết nối riêng tư | NET::ERR_CERT_AUTHORITY_INVALID |
| Edge | Your connection isn't private | NET::ERR_CERT_AUTHORITY_INVALID |
| Firefox | Hãy cẩn thận. Có điều gì đó không ổn. (tab: Cảnh báo: Rủi ro bảo mật) | SEC_ERROR_UNKNOWN_ISSUER hoặc MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT |
| Safari | Kết nối này không có tính riêng tư | Không hiển thị |
| Bảng điều khiển DevTools, ứng dụng dựa trên Chromium | (trang không tải được) | net::ERR_CERT_AUTHORITY_INVALID |
Cơ chế tin tưởng chứng chỉ SSL hoạt động như thế nào (chuỗi tin cậy)
Mọi chứng chỉ đều nằm trong một chuỗi tin cậy kết thúc ở chứng chỉ gốc của một tổ chức cấp chứng chỉ mà trình duyệt đã tin tưởng.
Khi bạn kết nối, máy chủ gửi chứng chỉ của chính nó cùng một hoặc nhiều chứng chỉ trung gian. Trình duyệt kiểm tra chứng chỉ của trang web có được chứng chỉ trung gian ký hay không, và chứng chỉ trung gian có được một chứng chỉ gốc trong danh sách của nó ký hay không. Chrome không còn dùng danh sách của hệ điều hành cho việc này: nó có danh sách riêng, Chrome Root Store, trên Windows và macOS từ Chrome 108 và trên Android từ Chrome 115 (không áp dụng cho iPhone và iPad, nơi bắt buộc dùng danh sách của Apple). Danh sách đó có khoảng 100 chứng chỉ gốc và được cập nhật ngầm (Chrome Root Store). Trên Windows và macOS, Edge dùng danh sách của Microsoft; Firefox dùng danh sách của Mozilla; và tất cả đều tin cả những chứng chỉ gốc mà bạn hoặc công ty bạn thêm vào máy tính.
Nếu thiếu hoặc không nhận ra bất kỳ mắt xích nào, bạn sẽ gặp lỗi này (xem thêm chuỗi chứng chỉ SSL là gì). Chuỗi gồm bốn phần:
- CA gốc — tự ký và được tích hợp sẵn trong danh sách chứng chỉ gốc của trình duyệt
- CA trung gian — do CA gốc ký; máy chủ phải gửi nó. Chrome tải chứng chỉ trung gian bị thiếu từ địa chỉ ghi trong chứng chỉ, nhưng curl, ứng dụng và nhiều ứng dụng khách khác thì không
- Chứng chỉ của trang web — do CA trung gian ký, cho các tên trong danh sách Tên thay thế đối tượng (Subject Alternative Name)
- Xác thực — trình duyệt đi từ chứng chỉ của trang web lên một chứng chỉ gốc đáng tin cậy; mọi chữ ký đều phải hợp lệ
Nguyên nhân gây ra NET::ERR_CERT_AUTHORITY_INVALID
Nơi bạn thấy lỗi giúp thu hẹp nguyên nhân: một trang web nghĩa là vấn đề hầu như luôn nằm ở chứng chỉ của trang đó. Mọi trang HTTPS nghĩa là vấn đề ở thiết bị hoặc mạng của bạn.
| Nguyên nhân | Phía nào | Bạn thấy lỗi ở đâu | Cách kiểm tra nhanh |
|---|---|---|---|
| Chứng chỉ tự ký | Trang web | Một trang web | Đơn vị cấp chứng chỉ chính là trang web đó |
| CA riêng hoặc CA của công ty | Trang web | Một trang web, hoặc các trang nội bộ | SSL Checker: không kho chứng chỉ gốc nào tin tưởng nó |
| Thiếu chứng chỉ trung gian | Trang web | Một trang web, trong một số ứng dụng và thiết bị | SSL Checker: chuỗi chưa đầy đủ |
| Trang quản trị router, NAS hoặc máy in | Thiết bị | Địa chỉ 192.168.x.x hoặc .local | Bình thường: chúng dùng chứng chỉ tự ký |
| Trang đăng nhập Wi-Fi công cộng | Mạng | Mọi trang web cho đến khi bạn đăng nhập | Mở một trang http:// bất kỳ để hiện màn hình đăng nhập |
| Quét HTTPS của phần mềm diệt virus | Thiết bị của bạn | Mọi trang HTTPS | Tạm dừng lá chắn web rồi tải lại |
| Kiểm tra SSL của công ty hoặc trường học | Mạng | Mọi trang web trên mạng đó | Hoạt động bình thường khi dùng dữ liệu di động |
| Thiết bị hoặc trình duyệt đã cũ | Thiết bị của bạn | Một số trang web, thường là trang dùng Let's Encrypt | Cập nhật hệ điều hành và trình duyệt |
Cách khắc phục cho người truy cập (phía máy khách)
Nếu bạn thấy lỗi trên một trang web không phải của bạn, hãy thử lần lượt các cách sau. Đừng bao giờ nhập mật khẩu hay số thẻ trên trang đang hiện cảnh báo này.
Cách 1: đăng nhập Wi-Fi hoặc thử mạng khác
Wi-Fi ở khách sạn, sân bay và quán cà phê thường chặn những kết nối đầu tiên của bạn để hiện trang đăng nhập, và khi đó một trang HTTPS nhận được chứng chỉ của mạng thay vì chứng chỉ của chính nó. Phần trợ giúp của Chrome nói các mạng này yêu cầu bạn đăng nhập, và mở một trang dùng http:// sẽ đưa ra trang đăng nhập; Chrome cũng có thể hiện trang “Kết nối Wi-Fi” thay cho lỗi này. Hãy chấp nhận đăng nhập rồi tải lại trang.
Mạng công ty và trường học cũng có thể kiểm tra HTTPS bằng chứng chỉ riêng. Nếu lỗi biến mất khi dùng dữ liệu di động, hãy hỏi bộ phận IT của mạng đó: các thiết bị do họ quản lý thường đã cài chứng chỉ gốc của họ, còn thiết bị của bạn có thể chưa có.
Cách 2: kiểm tra tính năng quét HTTPS của phần mềm diệt virus
Các bộ diệt virus như Kaspersky, Avast, ESET và Bitdefender có thể quét HTTPS bằng cách giải mã nó với chứng chỉ riêng rồi mã hóa lại. Nếu trình duyệt không tin chứng chỉ gốc của họ, hoặc tính năng này hỏng sau một bản cập nhật, mọi trang HTTPS sẽ cùng hiện lỗi này.
Để kiểm tra, hãy tạm dừng riêng tính năng quét HTTPS hoặc quét web rồi tải lại. Nếu lỗi biến mất, hãy sửa chữa hoặc cập nhật phần mềm diệt virus để nó cài lại chứng chỉ, hoặc để tắt tính năng quét HTTPS.
Cách 3: cập nhật trình duyệt và hệ điều hành
Trình duyệt và hệ điều hành cập nhật danh sách chứng chỉ gốc thường xuyên (Chrome qua các bản cập nhật thành phần chạy ngầm), còn hệ thống cũ thì thiếu các chứng chỉ gốc mới. Chẳng hạn Android trước phiên bản 7.1.1 không tin ISRG Root X1, nên các trang dùng Let's Encrypt bị lỗi ở đó trên các trình duyệt và ứng dụng dựa vào danh sách của hệ thống.
Hãy cập nhật trình duyệt trước: Chrome và Edge có danh sách chứng chỉ gốc riêng trên Windows và macOS, còn Chrome cũng có trên Android từ phiên bản 115. Sau đó mới cập nhật hệ điều hành.
Cách 4: kiểm tra ngày và giờ
Đồng hồ lệch nhiều tháng hoặc nhiều năm khiến chứng chỉ trông như chưa có hiệu lực hoặc đã hết hạn. Chrome thường hiện một cảnh báo riêng cho việc này (“Đồng hồ của bạn chạy chậm” hoặc ERR_CERT_DATE_INVALID), nhưng một chiếc đồng hồ sai nặng sau khi pin CMOS hết hoặc sau khi khôi phục máy ảo cũng có thể làm hỏng bước kiểm tra tin cậy. Loại trừ nguyên nhân này chỉ mất mười giây.
Windows: Cài đặt → Thời gian & ngôn ngữ → Ngày & giờ → bật Đặt thời gian tự động. macOS: Cài đặt hệ thống → Cài đặt chung → Ngày & Giờ → Đặt giờ và ngày tự động. Android: Cài đặt → Hệ thống → Ngày và giờ → Tự động đặt giờ (trên Android 16 tên là Ngày và giờ tự động).
Cách 5: thử chế độ ẩn danh, rồi khởi động lại trình duyệt
Cửa sổ ẩn danh (Ctrl+Shift+N trong Chrome và Edge, Ctrl+Shift+P cho cửa sổ riêng tư trong Firefox) chạy không có các tiện ích mở rộng của bạn trừ khi bạn đã cho phép chúng. Tiện ích VPN và proxy có thể định tuyến lưu lượng của bạn qua một máy chủ xuất trình chứng chỉ riêng; nếu trang web chạy được ở chế độ ẩn danh, hãy tắt các tiện ích tại chrome://extensions rồi bật lại từng cái một.
Nếu trang web vừa sửa chứng chỉ, hãy đóng mọi cửa sổ trình duyệt rồi mở lại, để trình duyệt kiểm tra chứng chỉ mới từ đầu.
Cách 6: trên Android
Android có thêm một vài bước kiểm tra riêng:
- Đặt ngày giờ tự động: Cài đặt → Hệ thống → Ngày và giờ.
- Cập nhật Chrome và Android System WebView từ Play Store. Các ứng dụng hiển thị trang web qua WebView kiểm tra chứng chỉ theo danh sách chứng chỉ gốc riêng của Android, nên phiên bản Android cũ vẫn có thể lỗi ở đó.
- Tắt các ứng dụng VPN, chặn quảng cáo hoặc “duyệt web an toàn” có lọc HTTPS; chúng hiện biểu tượng chìa khóa hoặc VPN trên thanh trạng thái.
- Đăng nhập Wi-Fi: mạng công cộng hiện lỗi cho đến khi bạn chấp nhận trang đăng nhập của họ.
- Trên Android trước phiên bản 7.1.1, chứng chỉ gốc của Let's Encrypt không có trong danh sách của hệ thống, nên các ứng dụng và trình duyệt dựa vào danh sách đó không thể xác minh những trang này. Dùng trình duyệt có danh sách chứng chỉ gốc riêng là cách duy nhất.
Cách khắc phục cho chủ sở hữu trang web (phía máy chủ)
Nếu khách truy cập báo NET::ERR_CERT_AUTHORITY_INVALID trên trang của bạn, chứng chỉ bạn đang phục vụ thường không liên kết được tới chứng chỉ gốc công khai. Hãy kiểm tra trước bằng SSL Checker, rồi sửa những gì nó tìm thấy. Nếu nó hiện một chứng chỉ khác với chứng chỉ bạn đã cài, hãy xác nhận bằng DNS Lookup rằng tên miền trỏ đúng máy chủ bạn nghĩ, và bằng HTTP Header Checker xem máy chủ nào đang phản hồi.
Cách 1: cài đặt chứng chỉ từ CA đáng tin cậy
Trình duyệt của khách truy cập sẽ không bao giờ tin chứng chỉ tự ký, hay chứng chỉ từ CA riêng của bạn: bên ký không nằm trong danh sách chứng chỉ gốc công khai nào.
Hãy cài chứng chỉ từ một CA được công chúng tin cậy. Let's Encrypt cấp chứng chỉ miễn phí, tự động mà mọi trình duyệt lớn đều tin; DigiCert, Sectigo và GlobalSign bán chứng chỉ có xác thực tổ chức và hỗ trợ.
# Install Let's Encrypt certificate with Certbot (Nginx)
sudo certbot --nginx -d example.com -d www.example.com
# Install Let's Encrypt certificate with Certbot (Apache)
sudo certbot --apache -d example.com -d www.example.com
# Verify the installed certificate
sudo certbot certificatesCách 2: gửi đầy đủ chuỗi chứng chỉ
Chứng chỉ của bạn có thể hoàn toàn hợp lệ nhưng máy chủ quên gửi chứng chỉ trung gian. Chrome thường che giấu lỗi này bằng cách tự tải chứng chỉ trung gian bị thiếu, nên trang chạy được trên Chrome nhưng lỗi trên curl, ứng dụng, callback thanh toán và một số điện thoại.
Hãy cho trang chạy qua SSL Checker của DNS Robot: công cụ cho thấy chuỗi mà máy chủ của bạn gửi và Mozilla, Chrome, Apple, Microsoft có tin tưởng nó hay không. Hoặc kiểm tra từ terminal:
# List each certificate the server sends (s: subject, i: issuer)
openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/null 2>/dev/null | grep -E ' [si]:'
# letsencrypt.org on 26 Oct 2026, a complete chain:
# 0 s:CN=letsencrypt.org
# i:C=US, O=Let's Encrypt, CN=YE2
# 1 s:C=US, O=Let's Encrypt, CN=YE2
# i:C=US, O=ISRG, CN=Root YE
# 2 s:C=US, O=ISRG, CN=Root YE
# i:C=US, O=Internet Security Research Group, CN=ISRG Root X2
# 3 s:C=US, O=Internet Security Research Group, CN=ISRG Root X2
# i:C=US, O=Internet Security Research Group, CN=ISRG Root X1
# Only certificate 0 listed = the intermediate is missing.
# nginx: point ssl_certificate at the full chain, not the leaf alone
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
# Apache 2.4.8+
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pemCách 3: gia hạn chứng chỉ hết hạn
Chứng chỉ hết hạn của một CA đáng tin cậy sẽ hiện ERR_CERT_DATE_INVALID, không phải lỗi này. Bạn chỉ thấy ERR_CERT_AUTHORITY_INVALID nếu chuỗi cũng không đáng tin, vì Chrome báo vấn đề nghiêm trọng hơn. Dù sao, hãy kiểm tra ngày và gia hạn:
# Check the certificate's dates
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -dates
# notBefore=Sep 30 12:00:00 2026 GMT
# notAfter=Dec 29 11:59:59 2026 GMT
# Renew now with Certbot, then reload the web server
sudo certbot renew --force-renewal
sudo systemctl reload nginx # or apache2Cách 4: bao phủ mọi tên mà khách truy cập dùng
Một chứng chỉ đáng tin cậy nhưng không liệt kê tên trên thanh địa chỉ sẽ hiện ERR_CERT_COMMON_NAME_INVALID. Nó chỉ trở thành lỗi này khi chứng chỉ cũng không đáng tin, nên hãy sửa độ tin cậy trước, rồi mới đến các tên.
Trình duyệt chỉ kiểm tra danh sách Tên thay thế đối tượng (Subject Alternative Name), không kiểm tra Common Name cũ. Chứng chỉ wildcard (*.example.com) bao phủ một cấp tên miền phụ nhưng không bao phủ chính example.com, nên hãy liệt kê cả hai khi yêu cầu cấp. SSL Checker hiển thị toàn bộ danh sách tên của chứng chỉ.
Cách 5: dùng CA riêng hoặc CA của công ty
Các trang nội bộ thường dùng CA của công ty có chủ đích. Cách này chỉ hoạt động trên các thiết bị đã cài chứng chỉ gốc của công ty, và Chrome cùng Edge tin chứng chỉ gốc được thêm vào Windows hoặc macOS (Chrome Root Store FAQ). Hãy triển khai bằng Group Policy hoặc công cụ quản lý thiết bị, hoặc thêm thủ công:
# Windows (Command Prompt as Administrator): trust for all users
certutil -addstore -f Root company-root.crt
# macOS: trust in the System keychain
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain company-root.crtERR_CERT_AUTHORITY_INVALID trên localhost (dành cho lập trình viên)
Máy chủ HTTPS cục bộ dùng chứng chỉ tự ký sẽ hiện lỗi này theo thiết kế. Thay vì bấm bỏ qua, hãy làm cho chứng chỉ được tin cậy trên chính máy của bạn:
- mkcert —
mkcert -installtạo một CA cục bộ và thêm vào kho tin cậy của hệ thống (và của Firefox, sau khi càicertutilcủa NSS); sau đómkcert localhost 127.0.0.1 ::1tạo chứng chỉ mà Chrome, Edge và Firefox tin tưởng - Next.js —
next dev --experimental-httpstự tạo chứng chỉ được tin cậy cục bộ bằng mkcert cho bạn - Vite —
@vitejs/plugin-basic-ssltạo chứng chỉ không được tin cậy, nên bạn vẫn thấy lỗi này; hãy trỏserver.httpstới các tệp của mkcert - Mẹo cũ không còn hiệu quả — công tắc
chrome://flags/#allow-insecure-localhostđã hết hạn sau Chrome 130 và không còn trong chrome://flags
# Install mkcert (macOS)
brew install mkcert
mkcert -install
# Generate localhost certificate
mkcert localhost 127.0.0.1 ::1
# Creates: localhost+2.pem and localhost+2-key.pem
# Use with Node.js
const https = require('https');
const fs = require('fs');
https.createServer({
cert: fs.readFileSync('localhost+2.pem'),
key: fs.readFileSync('localhost+2-key.pem')
}, app).listen(3000);Các lỗi chứng chỉ SSL liên quan
NET::ERR_CERT_AUTHORITY_INVALID là một trong nhiều lỗi chứng chỉ nằm sau trang “Kết nối của bạn không phải là kết nối riêng tư” của Chrome. Mỗi mã chỉ ra một bước kiểm tra khác nhau:
| Mã lỗi | Ý nghĩa | Hướng dẫn của DNS Robot |
|---|---|---|
| NET::ERR_CERT_AUTHORITY_INVALID | Không có CA đáng tin cậy đứng sau chứng chỉ | Bài viết này |
| NET::ERR_CERT_COMMON_NAME_INVALID | Chứng chỉ không bao phủ tên này | Hướng dẫn kết nối không riêng tư |
| NET::ERR_CERT_DATE_INVALID | Hết hạn, chưa có hiệu lực hoặc đồng hồ của bạn sai | Hướng dẫn kết nối không riêng tư |
| NET::ERR_CERT_REVOKED | CA đã thu hồi chứng chỉ | Trang web cần chứng chỉ mới |
| ERR_SSL_PROTOCOL_ERROR | Bắt tay TLS thất bại trước mọi bước kiểm tra chứng chỉ | Hướng dẫn khắc phục |
| ERR_SSL_VERSION_OR_CIPHER_MISMATCH | Không có phiên bản TLS hoặc bộ mã hóa chung | Hướng dẫn khắc phục |
Kiểm tra ngay chuỗi chứng chỉ SSL của bạn
SSL Checker miễn phí của DNS Robot cho biết chuỗi chứng chỉ mà một trang web gửi đi, Mozilla, Chrome, Apple và Microsoft có tin tưởng nó hay không, ngày hết hạn và các tên miền nó bao phủ. Nếu ở đó mọi thứ đều qua, vấn đề nằm ở thiết bị hoặc mạng của bạn.
Nguồn
- net_error_list.h (CERT_AUTHORITY_INVALID -202), Chromium
- Chrome Root Store FAQ, Chromium
- Chains of trust, Let's Encrypt
- Baseline Requirements for TLS server certificates, CA/Browser Forum
- Chrome Root Store, Chromium
- Changes to Microsoft Edge TLS server certificate verification, Microsoft



