Lỗi “SSL handshake failed” là gì? 8 cách sửa lỗi “SSL handshake failed”
Thịnh Văn Hạnh 22/02/2023 1407 Lượt xem Chia sẻ bài viết
Hầu như ai cũng biết về SSL khi bắt đầu đăng ký một website. Tuy nhiên có nhiều người chưa biết lỗi “SSL handshake failed” là gì. Vì thế bài viết này sẽ giải thích lỗi là gì, đồng thời chỉ ra 8 cách khắc phục lỗi này.
Tóm Tắt Bài Viết
SSL là gì?
SSL là viết tắt của từ Secure Sockets Layer – tạm dịch lớp các cổng bảo mật. Đây là chứng chỉ bảo mật, tiêu chuẩn an ninh mạng được công nhận trên toàn cầu.
Thông qua việc mã hóa bằng cách tạo ra một liên kết mã hóa bằng công nghệ cao giữa máy chủ lưu trữ web và trình duyệt, SSL đảm bảo cho dữ liệu trao đổi giữa máy chủ web và trình duyệt luôn được an toàn.
Lỗi “SSL handshake failed” là gì?
Handshake SSL/TLS là quá trình xác nhận và giao tiếp giữa máy khách và máy chủ. Quá trình này được thực hiện thông qua đường hầm SSL/ TLS an toàn.
Hệ thống máy khách – máy chủ cũng tương tự như thế. SSL handshake là xảy ra khi hai bên – máy khách và máy chủ gặp nhau lần đầu tiên. Việc “bắt tay” bao gồm một số bước: bắt đầu từ việc xác thực danh tính của bên kia và kết thúc bằng việc tạo ra khóa chung – hay còn gọi là khóa bí mật.
Hiểu đơn giản, SSL handshake là cuộc trò chuyện đầu tiên giữa máy khách và máy chủ. Mục đích của cuộc trò chuyện này là đảm bảo quá trình giao tiếp diễn ra suôn sẻ với sự trợ giúp của mã hóa đối xứng.
Giả sử máy khách và máy chủ là hai người lạ ngoài đời thực, thì SSL handshake được ví như một cái bắt tay chào hỏi nhằm giúp cho cuộc trò chuyện sau đó diễn ra suôn sẻ hơn.
Sau cuộc “gặp gỡ” đầu tiên này, mỗi bit dữ liệu được truyền qua lại giữa máy khách và máy chủ sẽ được mã hóa. Đây được gọi là quá trình handshake SSL/ TLS. Lỗi “SSL handshake failed” thông báo cho người dùng biết được máy khách và máy chủ không bắt tay được với nhau, hay quá trình kết nối giữa máy khách và máy chủ không thành công.
Nguyên nhân và cách khắc phục lỗi “SSL handshake failed” là gì?
Thời gian hệ thống không chính xác
Nguyên nhân lỗi “SSL handshake failed” :
- Thiết bị bên phía người dùng có ngày và giờ không chính xác. Đây là lỗi từ phía máy khách (client).
- Hầu hết các chứng chỉ SSL/ TLS có thời hạn. Nếu qua thời hạn này, chứng chỉ sẽ không hoạt động và không còn giá trị. Nhiều người dùng cố tình đặt thời gian trên hệ thống của họ trở về trước ngày hết hạn để họ vẫn có thể kết nối.
Khắc phục lỗi “SSL handshake failed”: Bạn chỉ cần điều chỉnh giờ trên thiết bị đúng với giờ thực tế.
Man-in-the-Middle
Nguyên nhân lỗi “SSL handshake failed”:
- Một bên thứ ba đang chặn thao tác kết nối. Đây là lỗi có thể đến từ cả hai phía.
- Một hacker nào đó đang cố lấy cắp thông tin hoặc gây hại hệ thống. Hoặc người dùng đang mở một chương trình và thiết bị chặn lưu lượng truy cập để kiểm tra, cân bằng tải,…
Khắc phục lỗi “SSL handshake failed”:
Nếu lỗi đến từ client, bạn nên đưa vào danh sách trắng hoặc tạo ngoại lệ cho trang web muốn truy cập. Tuyệt đối không tắt tường lửa, phần mềm diệt virus chỉ để kết nối với một trang web nào đấy. Ngược lại, nếu lỗi từ máy chủ, hệ thống nên xem lại cấu hình trên thiết bị cạnh.
Lỗi trình duyệt
Nguyên nhân lỗi “SSL handshake failed”:
- Cấu hình trình duyệt đang gây ra lỗi. Đây là lỗi từ phía máy khách.
- Lỗi có thể đến từ trình duyệt của bạn bị định cấu hình sai, ảnh hưởng của plugin, … dẫn đến việc xảy ra sự cố khi kết nối với các trang web hợp pháp khác.
Khắc phục lỗi “SSL handshake failed”: Bạn đặt lại trình duyệt của bạn về cài đặt mặc định và tắt tất cả plugin. Hoặc bạn có thể thử chuyển từ Google Chrome sang trình duyệt gốc của hệ điều hành (Apple Safari, Microsoft Edge, …) hoặc thử trên Mozilla Firefox.
Giao thức không khớp
Nguyên nhân lỗi “SSL handshake failed”:
- Giao thức người dùng sử dụng không được máy chủ hỗ trợ. Đây là lỗi từ cả hai phía.
- Lúc này, máy khách và máy chủ không có hỗ trợ lẫn nhau cho cùng một phiên bản TLS. Ví dụ: Trong khi máy khách hỗ trợ TLS 1.0, TLS 1.1 thì máy chủ hỗ trợ TLS 1.2.
Trường hợp này có thể được khắc phục lỗi “SSL handshake failed” như sau:
- Máy chủ không thay đổi
- Máy khách: nâng cấp trình duyệt. Hoặc trong trường hợp trình duyệt hiện tại, định cấu hình để hỗ trợ các phiên bản TLS mới nhất.
Bộ mã hóa không khớp
Nguyên nhân lỗi “SSL handshake failed”:
Cipher Suite được khách hàng sử dụng không được máy chủ hỗ trợ.
Bản chất SSL/ TLS không phải là một thuật toán xử lý mọi thứ. Đây là một tập hợp các thuật toán với các chức năng khác nhau. Chúng làm việc kết hợp với nhau để tạo nên SSL/ TLS. Thông thường, bộ mã hóa thường có các thuật toán xử lý:
- Mã hóa khóa công khai bất đối xứng
- Mã hóa khóa phiên đối xứng
- Tạo khóa Chữ ký Hashin
Mỗi đơn vị, ngành nghề khác nhau sẽ có các tiêu chuẩn mã hóa khác nhau, đề xuất các bộ mã hóa khác nhau.
Khắc phục lỗi “SSL handshake failed”: Phía máy chủ linh hoạt cập nhật các bộ mã hóa và thuật toán xử lý tương ứng.
Chứng chỉ không chính xác
Nguyên nhân lỗi “SSL handshake failed”: Do thông tin chứng chỉ giữa máy chủ và máy khách không khớp nhau. Cụ thể là:
- Tên máy chủ lưu trữ URL không khớp với tên máy chủ lưu trữ trên chứng chỉ máy chủ.
- Chuỗi chứng chỉ không chính xác: Chuỗi chứng chỉ không đầy đủ thông tin, thiếu trung gian/ không hợp lệ.
- Giấy chứng nhận hết hạn/ thu hồi: Máy chủ xuất trình chứng chỉ đã hết hạn, bị thu hồi hoặc chứng chỉ không đáng tin cậy.
- Thay thế chứng chỉ tự ký trong mạng nội bộ đã gây ra lỗi đường dẫn.
Khắc phục lỗi “SSL handshake failed”: Phía máy chủ liên hệ với máy khách để cập nhật.
Máy chủ kích hoạt SNI
Nguyên nhân lỗi “SSL handshake failed”: máy khách không thể giao tiếp với máy chủ hỗ trợ SNI. Đây là lỗi từ máy chủ.
Về bản chất, đây là vấn đề nội bộ giữa các thiết bị. Nguyên nhân khác là do cấu hình SNI (Chỉ định tên máy chủ) không đúng. SNI cho phép máy chủ lưu trữ nhiều Chứng chỉ TLS cho nhiều trang web, tất cả đều dưới một địa chỉ IP duy nhất. Nếu SNI không được hỗ trợ hoặc cấu hình sẽ khiến lỗi này xảy ra.
Khắc phục lỗi “SSL handshake failed”: xác định tên máy chủ và số cổng của máy chủ được đề cập và kích hoạt SNI.
Một số lưu ý khi xảy ra lỗi “SSL handshake failed”
- Không tắt tường lửa và chương trình chống virus.
- Không kết nối qua HTTP hoặc nhấp qua cảnh báo xen kẽ.
- Không truy cập những trang web không thể cung cấp trải nghiệm duyệt web an toàn.
Kết luận
Hy vọng đến đây bạn đã hiểu được về vấn đề SSL handshake failed là gì, nguyên nhân và cách khắc phục chúng.
BKNS hy vọng bạn có thể khắc phục được lỗi trong trường hợp gặp phải lỗi này nhằm giúp hoạt động duyệt web liên tục trôi chảy, hiệu quả và không bị gián đoạn.
[mautic type=”form” id=”6″]