Nếu bạn đang cố gắng kết nối đến máy chủ CA được cấu hình với HTTPS qua Chrome và nhận được lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY tại mọi lần thử, bạn đang gặp vấn đề về cài đặt bảo mật. Vấn đề này phổ biến trên các cài đặt Windows Server.
Sau khi điều tra kỹ, chúng tôi nhận ra có nhiều nguyên nhân có thể gây ra lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY.
Dưới đây là danh sách các nguyên nhân tiềm ẩn có thể kích hoạt lỗi này trên Windows hoặc Windows Server:
- Phiên bản Chrome cũ - Trong hầu hết các trường hợp có tài liệu, lỗi xảy ra do bạn dùng Chrome cũ thiếu các cơ chế bảo mật cần thiết để kết nối CA. Cần buộc trình duyệt cài đặt bản dựng mới nhất.
- Cookie trình duyệt can thiệp - Một số cookie Chrome có thể gây ra hành vi này khi kết nối máy chủ CA qua HTTPS. Thường xóa tất cả cookie hoặc dùng chế độ ẩn danh sẽ khắc phục.
- Windows Server dùng bộ mã hóa yếu - Lý do phổ biến khiến Chrome ném lỗi này là Windows Server dùng bộ mã hóa yếu. Cần dùng tiện ích như IISCrypto để xử lý các giao thức không an toàn và bộ mã hóa yếu hơn.
- HTTP/2 được bật - Mặc dù HTTP/2 tốt cho bảo mật, nhưng nó đòi hỏi yêu cầu khắt khe hơn. Nếu dùng Windows Server 2016, hệ điều hành có thể quay lại HTTP/1.1 bất kể, gây lỗi trong Chrome. Giải pháp là tắt hoàn toàn HTTP/2.
Sau khi xem qua mọi nguyên nhân tiềm ẩn, đây là danh sách các phương pháp sửa lỗi đã được kiểm chứng bởi người dùng khác:
Xóa Cookie của Chrome
Cookie lưu trữ không đúng có thể gây ra lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY. Không hiếm khi thấy thông báo này khi kết nối máy chủ CA qua HTTPS trên Windows Server.
Có cách dễ dàng kiểm tra xem cookie xấu có phải nguyên nhân: thực hiện kết nối tương tự trong chế độ ẩn danh.
Để làm điều này, mở Google Chrome, nhấp nút hành động (góc trên bên phải), chọn Cửa sổ ẩn danh mới.
Sau khi mở cửa sổ ẩn danh, thử kết nối lại và xem lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY có được khắc phục không.
Nếu lỗi không tái diễn, bạn đã xác nhận đây là vấn đề cookie. Làm theo hướng dẫn dưới để xóa cookie chuyên dụng và khắc phục lỗi:
Lưu ý: Nếu lỗi vẫn xuất hiện ngay cả trong chế độ ẩn danh, bỏ qua các bước dưới và chuyển sang phương pháp tiếp theo.
- Mở Google Chrome, dùng thanh điều hướng để tải trang gây lỗi.
- Khi gặp lỗi, nhấp vào biểu tượng khóa trong thanh điều hướng.

- Sau khi nhấp vào khóa, menu mới xuất hiện, nhấp vào Cookie.

- Tại menu cookie chuyên dụng, chọn tab Được phép, chọn từng cookie từ danh sách và nhấp Xóa.

- Sau khi xóa mọi cookie có thể bị hỏng, khởi động lại trình duyệt và kiểm tra xem vấn đề đã được khắc phục chưa.
Nếu vấn đề ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY vẫn xảy ra, chuyển sang phương pháp tiếp theo.
Cập nhật Google Chrome lên phiên bản mới nhất
Trước tiên, đảm bảo bạn đang dùng bản phát hành công khai mới nhất của Google Chrome.
Điều này đặc biệt quan trọng nếu gặp sự cố trên Windows Server khi kết nối máy chủ CA cấu hình HTTPS.
Lý do bạn thấy lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY có thể do một số cơ chế bảo mật chưa được triển khai trong phiên bản Chrome của bạn.
Một số người dùng bị ảnh hưởng xác nhận vấn đề được khắc phục hoàn toàn sau khi cập nhật Chrome lên phiên bản mới nhất.
Tuy nhiên, vì chức năng tự động cập nhật không ổn định trên Windows Server, khuyến nghị gỡ cài đặt Chrome, xóa các tệp còn lại trước khi cài đặt bản dựng công khai mới nhất từ đầu.
Các bước thực hiện:
- Mở hộp thoại Run bằng Windows key + R. Nhập 'appwiz.cpl' và nhấn Enter để mở cửa sổ Chương trình và Tính năng.

- Trong menu Chương trình và Tính năng, chuột phải vào Chrome, chọn Gỡ cài đặt.

- Làm theo hướng dẫn trên màn hình để hoàn tất gỡ cài đặt.
- Sau khi gỡ xong, khởi động lại máy và đợi khởi động hoàn tất.
- Mở hộp thoại Run khác (Windows key + R). Nhập "%localappdata%" và nhấn Enter để mở thư mục cục bộ chứa tệp tạm của tài khoản Microsoft đang hoạt động.

- Từ thư mục gốc Local, chuột phải vào Chrome, chọn Xóa để dọn dẹp mọi tệp tạm còn lại từ cài đặt gốc.

- Sau khi xóa thư mục bộ nhớ đệm cục bộ của Chrome, cài đặt bản mới. Truy cập trang tải xuống chính thức của Google Chrome và tải phiên bản mới nhất.

- Khi tệp thực thi tải xong, nhấp đúp vào nó, nhấp Có tại lời nhắc UAC, làm theo hướng dẫn để hoàn tất cài đặt.

- Sau khi cài đặt xong, mở trình duyệt và lặp lại hành động trước đây gây lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY.
Nếu vấn đề vẫn xảy ra, chuyển sang phương pháp tiếp theo.
Tắt HTTP/2 hoặc Tắt bộ mã hóa yếu
Nếu gặp lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY trong Chrome ngay sau khi nâng cấp lên Windows Server từ máy chủ web IIS, có thể do Windows Server bật HTTP/2 mặc định và quay lại HTTP/1.1 nếu HTTP/2 không được hỗ trợ.
Điều này tốt cho bảo mật, nhưng HTTP/2 có yêu cầu khắt khe hơn HTTP/1.1 và Windows Server 2016 thường cố gắng thiết lập phiên HTTP/2 với trình duyệt ngay cả khi máy chủ được cấu hình với bộ mã hóa SSL yếu không được HTTP/2 hỗ trợ.
Nếu bạn ở trường hợp này, có hai con đường:
- Tắt các bộ mã hóa yếu
- Tắt HTTP/2 trên Windows Server
Bất kể con đường nào, chúng tôi đã tạo các hướng dẫn con cho cả hai trường hợp. Làm theo hướng dẫn phù hợp với tình huống của bạn.
Tắt các bộ mã hóa yếu
Bạn có thể tắt thủ công, nhưng không cần phức tạp khi có tiện ích IISCrypto.
Trong IISCrypto phiên bản 3.0, dùng nút Best Practices để tự động tắt mọi giao thức không an toàn cùng bộ mã hóa yếu.
Làm bằng cách chọn Cipher Suites từ menu dọc bên trái, sau đó nhấp Best Practices.
Sau đó, nhấp Áp dụng để thực thi thay đổi, khởi động lại Windows Server để thay đổi có hiệu lực.
Lưu ý: Nếu bạn là người dùng Windows Server nâng cao, cũng có thể tinh chỉnh bộ mã hóa thủ công qua IISCrypto.
Tắt HTTP/2 trên Windows Server
Nếu quyết định tắt HTTP/2 trong IIS trên Windows Server là sự thỏa hiệp đáng giá, bạn có thể làm bằng cách thêm chỉ hai khóa DWORD trong registry.
Việc có nên áp dụng sửa lỗi này hay không tùy thuộc vào tình huống cụ thể và số giao thức bị ảnh hưởng khi tắt HTTP/2.
Cách dễ nhất là tạo tệp .reg qua Notepad với quyền quản trị.
Làm theo hướng dẫn dưới để tạo tệp .REG tắt HTTP/2 trên Windows Server 2016:
- Nhấn Windows key + R mở hộp thoại Run. Nhập 'notepad', sau đó nhấn Ctrl + Shift + Enter mở Notepad với quyền admin.

- Trong cửa sổ Notepad nâng cao, dán mã sau vào khung trống:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters] "EnableHttp2Tls"=dword:00000000 "EnableHttp2Cleartext"=dword:00000000
- Sau khi dán mã, nhấp File từ menu ngữ cảnh trên cùng, chọn Lưu với tên.

- Chọn vị trí lưu tệp .REG, đổi Lưu dưới dạng thành Tất cả các tệp.
- Đặt tên tệp, đảm bảo kết thúc bằng .reg. Nhấp Lưu để tạo tệp .REG tắt HTTP/2.

- Khi tệp .reg tạo thành công, chuột phải vào nó, chọn Chạy với tư cách quản trị viên.
- Trong menu xác nhận, nhấp Có để chạy script .reg vừa tạo tắt HTTP/2.
- Khởi động lại Windows Server để thực thi thay đổi, quay lại Chrome xem lỗi ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY còn không.
Lưu ý: Nếu muốn bật lại HTTP/2 sau này, quay lại vị trí hai khóa registry này, đổi giá trị thành 1 thay vì 0.