Vì một số lý do, tôi không thể mở một số trang web HTTPS (không phải tất cả chúng!) Trên máy tính xách tay Windows 10 của mình. Khi cố gắng mở một trang web như vậy trong trình duyệt, nó hiển thị lỗi:“This site can’t provide a secure connection
”. Các trang web không được hiển thị trong các trình duyệt dựa trên Google Chrome, Opera và Chromium. Nếu không có HTTPS, tôi chỉ có thể mở một số trang có trang của họ khả dụng cả qua giao thức HTTPS và HTTP. Nếu tôi cố gắng mở một trang web HTTPS gặp sự cố trong Google Chrome, thì lỗi sẽ xảy ra như sau:
This site can’t provide a secure connection. sitename.com sent an invalid response. ERR_SSL_PROTOCOL_ERROR
Hoặc như thế này:
This site can’t provide a secure connection. sitename.com uses an unsupported protocol. ERR_SSL_VERSION_OR_CIPHER_MISMATCH. The client and server don’t support a common SSL protocol version or cipher suite. This is likely to be caused when the server needs RC4, which is no longer considered secure.
Hoặc trong Mozilla Firefox:
Secure Connection Failed
Trong các trình duyệt dựa trên Opera và Chromium, lỗi trông gần như giống nhau. Làm cách nào để mở các trang web HTTPS này?
Trả lời
Như bạn có thể đã hiểu, sự cố liên quan đến sự cố kết nối SSL giữa trình duyệt của bạn và trang web hỗ trợ HTTPS. Các lý do có thể khác nhau. Trong bài viết này, tôi đã cố gắng thu thập tất cả các phương pháp sửa lỗi “This site can’t provide a secure connection, ERR_SSL_PROTOCOL_ERROR
”Trong các trình duyệt phổ biến.
Tôi muốn lưu ý rằng mặc dù các trình duyệt dựa trên Google Chrome, Opera và Chromium được phát hành bởi các công ty khác nhau, chúng đang sử dụng cùng một WebKit ( Chromium ) và vấn đề mở các trang HTTPS được giải quyết theo cách giống nhau cho tất cả chúng.
Trước hết, hãy đảm bảo rằng đó không phải là vấn đề của chính trang web HTTPS. Cố gắng mở từ các thiết bị khác (điện thoại thông minh, máy tính bảng, PC tại nhà / cơ quan, v.v.). Ngoài ra, hãy kiểm tra xem bạn có thể mở một trang web gặp sự cố trong các trình duyệt khác:IE / Edge hoặc Mozilla Firefox hay không.
Xóa Bộ nhớ cache của Trình duyệt, Cookie và Đặt lại Bộ nhớ cache SSL
Bộ nhớ cache và cookie của trình duyệt thường gây ra sự cố chứng chỉ SSL. Chúng tôi khuyên bạn nên xóa bộ nhớ cache và cookie trong trình duyệt của mình trước. Trong Chrome, nhấn Ctrl + Shift + Delete (hoặc truy cập địa chỉ chrome://settings/clearBrowserData
) , chọn phạm vi thời gian ( Mọi lúc ) và nhấp vào Xóa dữ liệu .
Để xóa bộ nhớ cache SSL trong Windows 10 hoặc 11:
- Đi tới Bảng điều khiển -> Tùy chọn Internet ;
- Nhấp vào Nội dung tab;
- Nhấp vào Xóa trạng thái SSL nút;
- Thông báo “
The SSL cache was successfully cleared
”Sẽ xuất hiện; - Khởi động lại trình duyệt của bạn và kiểm tra xem lỗi ERR_SSL_PROTOCOL_ERROR vẫn còn.
Tắt Tiện ích mở rộng trình duyệt của Bên thứ ba
Chúng tôi khuyên bạn nên tắt (xóa) tiện ích mở rộng trình duyệt của bên thứ ba, đặc biệt là trình ẩn danh, proxy, VPN, tiện ích mở rộng chống vi-rút và các tiện ích bổ sung tương tự khác có thể cản trở lưu lượng truy cập vào trang web mục tiêu. Bạn có thể xem danh sách các tiện ích mở rộng Chrome đã bật trong Cài đặt -> Công cụ khác -> Tiện ích mở rộng hoặc truy cập chrome://extensions/
. Tắt tất cả các tiện ích mở rộng đáng ngờ.
Kiểm tra Cài đặt Tường lửa và Chống Vi-rút
Nếu bạn đã cài đặt chương trình chống vi-rút hoặc tường lửa (nó thường được tích hợp sẵn trong chương trình chống vi-rút dưới dạng mô-đun) trên máy tính của bạn, chúng có thể chặn quyền truy cập vào các trang web. Để biết liệu chương trình chống vi-rút hoặc tường lửa của bạn có chặn quyền truy cập vào một trang web hay không, hãy thử tạm dừng chúng một lúc.
Rất nhiều phần mềm chống vi-rút có mô-đun tích hợp để kiểm tra chứng chỉ SSL / TLS của các trang web. Nếu phần mềm chống vi-rút phát hiện thấy trang web đang sử dụng chứng chỉ không an toàn (hoặc tự ký) hoặc phiên bản giao thức SSL kế thừa (SSL 3.0 hoặc TLS 1.0), thì chương trình chống vi-rút có thể chặn quyền truy cập của người dùng vào trang web đó. Thử tắt tính năng quét lưu lượng HTTP / HTTPS và chứng chỉ SSL. Trong các loại thuốc chống vi rút khác nhau, tùy chọn này có thể được gọi khác nhau. Ví dụ:
- Tắt tính năng “
Enable SSL/TLS protocol filtering
”Trong ESET NOD32 Antivirus; - Trong Avast, tùy chọn được gọi là “
Enable HTTPS scanning
”(Nó nằm trong Cài đặt -> Bảo vệ Chủ động -> Lá chắn Web -> Tùy chỉnh -> Cài đặt Chính); - Tường lửa tích hợp sẵn (
Spider Gate
) có thể chặn các trang web trong phần mềm diệt vi-rút Dr.Web; - Trong Kaspersky Internet Security Antivirus, đi tới Cài đặt -> Nâng cao -> Mạng -> thêm trang web vào mục loại trừ hoặc chọn tùy chọn Không quét các kết nối được mã hóa Lựa chọn.
Kiểm tra Cài đặt Ngày &Giờ
Ngày, giờ (hoặc múi giờ) không chính xác trên máy tính của bạn cũng có thể gây ra lỗi kết nối an toàn cho các trang web HTTPS. Trong quá trình xác thực, hệ điều hành của bạn sẽ kiểm tra ngày mà chứng chỉ trang web được tạo, khi nào chứng chỉ đó hết hạn và khi nào chứng chỉ của cơ quan cấp chứng chỉ sẽ hết hạn.
Đảm bảo rằng bạn đã đặt thời gian và múi giờ chính xác. Nếu thời gian được đặt lại liên tục, hãy xem bài viết “Windows hiển thị sai thời gian sau khi khởi động lại”.
Cập nhật Chứng chỉ gốc của Windows
Nếu máy tính của bạn nằm trong một phân đoạn mạng bị cô lập, không được cập nhật trong một thời gian dài hoặc đã tắt cập nhật tự động, nó có thể không có chứng chỉ gốc đáng tin cậy mới (TrustedRootCA). Chúng tôi khuyên bạn nên luôn cài đặt các bản cập nhật bảo mật mới nhất trong Windows.
Bạn có thể cập nhật thủ công chứng chỉ gốc đáng tin cậy sau bài viết “Cập nhật danh sách chứng chỉ gốc đáng tin cậy trong Windows”. Ngoài ra, bạn nên kiểm tra máy tính của mình để tìm các chứng chỉ đáng ngờ hoặc không đáng tin cậy bằng SigCheck. Nó có thể giúp ngăn chặn lưu lượng truy cập HTTPS của bạn và một số vấn đề khác.
Tắt hỗ trợ giao thức QUIC
Đảm bảo sự hỗ trợ của QUIC Giao thức (Kết nối Internet UDP nhanh) được bật trong Chrome. QUIC cho phép thiết lập kết nối nhanh hơn và thương lượng tất cả các tham số TLS (HTTPS) khi kết nối với một trang web. Tuy nhiên, trong một số trường hợp, nó có thể gây ra sự cố với kết nối SSL. Cố gắng tắt QUIC:
- Truy cập
chrome://flags/#enable-quic
; - Tìm Giao thức QUIC thử nghiệm tùy chọn;
- Thay đổi giá trị của nó từ Mặc định thành Đã tắt ;
- Khởi động lại Chrome.
Kiểm tra các giao thức TLS / SSL được trình duyệt và máy chủ web của bạn hỗ trợ
Kiểm tra phiên bản giao thức TLS / SSL và phương pháp mã hóa (bộ mật mã) nào được trình duyệt của bạn hỗ trợ. Để thực hiện việc này, chỉ cần truy cập trang web https://clienttest.ssllabs.com:8443/ssltest/viewMyClient.html
Dịch vụ trực tuyến SSL Labs sẽ trả về danh sách các giao thức và bộ mật mã mà trình duyệt của bạn hỗ trợ. Trong ví dụ của tôi, Chrome chỉ hỗ trợ TLS 1.3 và TLS 1.2 . Tất cả các giao thức khác (TLS 1.1, TLS 1.0, SSL3 và SSL 2) đều bị vô hiệu hóa. Dưới đây là danh sách các phương pháp mã hóa được hỗ trợ.
Bộ mật mã (theo thứ tự ưu tiên)
- TLS_AES_128_GCM_SHA256
- TLS_CHACHA20_POLY1305_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
- TLS_RSA_WITH_AES_128_GCM_SHA256
- TLS_RSA_WITH_AES_256_GCM_SHA384
- TLS_RSA_WITH_AES_128_CBC_SHA
- TLS_RSA_WITH_AES_256_CBC_SHA
Bạn có thể xem danh sách đầy đủ các bộ mật mã được bật trong Windows bằng PowerShell:
Get-TlsCipherSuite | Format-Table -Property CipherSuite, Name
Sau đó, kiểm tra danh sách các giao thức TLS / SSL được trang web hỗ trợ. Để thực hiện việc này, hãy sử dụng dịch vụ kiểm tra SSL trực tuyến https://www.ssllabs.com/ssltest/analyze.html?d=domain.com
(thay thế domain.com
với địa chỉ của trang web bạn muốn kiểm tra).
Kiểm tra xem tất cả các phiên bản TLS / SSL được trang web hỗ trợ có khả dụng trong trình duyệt của bạn hay không.
Trong ví dụ này, bạn có thể thấy rằng trang web không hỗ trợ TLS 3.1, SSL 3.0 và SSL 2.0. Ngoài ra, hãy so sánh danh sách Bộ mật mã.
Nếu phương pháp mã hóa không được trình duyệt của bạn hỗ trợ, bạn có thể phải bật nó trong Windows.
Nếu trang web không hỗ trợ các giao thức SSL mà khách hàng yêu cầu, bạn sẽ thấy lỗi “This site can’t provide a secure connection
”Trong trình duyệt của bạn khi kết nối với trang web hỗ trợ HTTPS.
Bật Hỗ trợ các Giao thức TLS / SSL Kế thừa
Và điều cuối cùng - có thể xảy ra rằng chỉ cần kích hoạt hỗ trợ giao thức TLS và SSL kế thừa để giải quyết vấn đề là đủ. Trong hầu hết các trường hợp, nó là hiệu quả nhất, nhưng tôi đã cố tình chuyển mục này xuống cuối bài viết. Tôi sẽ giải thích tại sao.
Các phiên bản giao thức TLS và SSL lỗi thời bị vô hiệu hóa không chỉ vì các nhà phát triển muốn nó. Đó là do một số lượng lớn các lỗ hổng cho phép tin tặc lấy dữ liệu của bạn trong lưu lượng HTTPS hoặc thậm chí sửa đổi chúng. Việc kích hoạt các giao thức cũ này một cách thiếu suy nghĩ sẽ ảnh hưởng đến bảo mật của bạn trên Internet, vì vậy bạn không nên sử dụng phương pháp này trừ khi bất kỳ điều gì khác có thể giúp ích.
Trên các trình duyệt và hệ điều hành hiện đại, các giao thức SSL / TLS cũ và dễ bị tấn công bị tắt theo mặc định (SSL 2.0, SSL 3.0 và TLS 1.1). Hiện tại, bạn chỉ nên sử dụng TLS 1.2 hoặc TLS 1.3 cho các kết nối SSL.
Nếu máy chủ web (trang web) sử dụng phiên bản cũ hơn của giao thức SSL / TLS được ứng dụng khách (trình duyệt) của bạn hỗ trợ, người dùng sẽ gặp lỗi khi thiết lập kết nối an toàn ERR_SSL_VERSION_OR_CIPHER_MISMATCH
. Lỗi này xuất hiện nếu ứng dụng khách trong giai đoạn Bắt tay TLS đã phát hiện thấy trang web sử dụng giao thức mã hóa hoặc độ dài khóa không được trình duyệt của bạn hỗ trợ. Ở trên, chúng tôi đã trình bày cách xác định tập hợp các giao thức và mật mã được máy chủ hỗ trợ.
Để cho phép các phiên bản cũ của giao thức SSL / TLS được sử dụng trên Windows (xin lưu ý rằng nó không an toàn!):
- Mở Bảng Điều khiển -> Tùy chọn Internet ;
- Đi tới Nâng cao tab;
- Bật TLS 1.0 , TLS 1.1 và TLS 1.2 (nếu không hữu ích, hãy bật SSL 3.0 , 2.0 cũng);
- Khởi động lại trình duyệt của bạn.
Nếu cả hai phương pháp này đều không giúp loại bỏ được lỗi “Trang web này không thể cung cấp kết nối an toàn”, hãy thử cách sau:
- Đảm bảo rằng không có bản ghi tĩnh nào trong tệp
C:\Windows\System32\drivers\etc\host
Tệp máy chủ có thể được sử dụng trong Windows, trong số những thứ khác, để chặn quyền truy cập vào các miền và trang web:Get-Content $env:SystemRoot\System32\Drivers\etc\hosts
; - Thử sử dụng máy chủ DNS công cộng, chẳng hạn như máy chủ DNS của Google. Trong cài đặt kết nối mạng, chỉ định địa chỉ IP 8.8.8.8 làm địa chỉ máy chủ DNS ưa thích;
- Trong Bảng Điều khiển -> Tùy chọn Internet, đảm bảo rằng mức độ bảo mật cho vùng Internet là Trung bình-cao hoặc Trung bình . Nếu Cao được chọn, một số kết nối SSL có thể bị trình duyệt của bạn chặn;
- Có lẽ sự cố liên quan đến chứng chỉ trang web. Kiểm tra bằng cách sử dụng Trình kiểm tra SSL trực tuyến;
- Nếu máy tính của bạn đang sử dụng VPN hoặc máy chủ proxy được định cấu hình trong cài đặt Windows, hãy thử tắt chúng;
- Đảm bảo TLS 1.3 được bật trong Chrome. Đi tới phần cài đặt (
chrome://flags
) trên thanh địa chỉ. Tìm kiếm TLS 1.3 Lựa chọn. Đảm bảo rằng nó được đặt thành Đã bật hoặc Mặc định . Nếu nó bị vô hiệu hóa, hãy kích hoạt nó; - Nếu bạn đang sử dụng một trong các phiên bản HĐH kế thừa (Windows XP hoặc Windows 7), hãy cài đặt Mozilla Firefox trình duyệt thay vì Chrome. Không giống như các công cụ dựa trên Chromium, Firefox sử dụng các mô-đun triển khai của riêng mình cho các giao thức mã hóa SSL / TLS thay vì các giao thức được tích hợp trong Windows.