新聞中心
如今為網(wǎng)站設(shè)置安全套接字層 (SSL) 證書非常簡單。您可以免費(fèi)生成證書,許多托管服務(wù)提供商甚至?xí)槟O(shè)置。但是,如果您沒有正確配置您的證書,您可能會遇到諸如“SSL握手失敗”之類的錯誤。

成都創(chuàng)新互聯(lián)公司成立于2013年,我們提供高端重慶網(wǎng)站建設(shè)公司、成都網(wǎng)站制作公司、網(wǎng)站設(shè)計、網(wǎng)站定制、網(wǎng)絡(luò)營銷推廣、成都小程序開發(fā)、微信公眾號開發(fā)、網(wǎng)站推廣服務(wù),提供專業(yè)營銷思路、內(nèi)容策劃、視覺設(shè)計、程序開發(fā)來完成項目落地,為搬家公司企業(yè)提供源源不斷的流量和訂單咨詢。
如果您遇到“SSL握手失敗”錯誤消息并且對它的含義感到困惑,那么您并不孤單。這是一個常見的錯誤,它本身并不能告訴你太多。雖然這可能是令人沮喪的體驗,但好消息是您可以采取一些簡單的步驟來解決問題。
當(dāng)您的瀏覽器和服務(wù)器無法建立安全連接時,會出現(xiàn)“SSL握手失敗”錯誤。
在這篇文章中,我們將解釋什么是SSL Handshake Failed錯誤以及導(dǎo)致它的原因。然后,我們將為您提供幾種可用于修復(fù)它的方法。
SSL握手簡介
在我們深入研究導(dǎo)致TLS或SSL握手失敗的原因之前,了解什么是TLS/SSL握手會很有幫助。安全套接字層 (SSL)和傳輸層安全性 (TLS)是用于驗證服務(wù)器和外部系統(tǒng)(如瀏覽器)之間的數(shù)據(jù)傳輸?shù)膮f(xié)議。
需要SSL證書才能使用HTTPS保護(hù)您的網(wǎng)站。我們不會太深入地討論TLS與SSL之間的區(qū)別, 因為它是次要的。這些術(shù)語經(jīng)?;Q使用,因此為簡單起見,我們將使用“SSL”來指代兩者。
除此之外,SSL握手是建立HTTPS連接過程的第一步。為了驗證和建立連接,用戶的瀏覽器和網(wǎng)站的服務(wù)器必須經(jīng)過一系列檢查(握手),從而建立HTTPS連接參數(shù)。
讓我們解釋一下:客戶端(通常是瀏覽器)向服務(wù)器發(fā)送安全連接請求。發(fā)送請求后,服務(wù)器會向您的計算機(jī)發(fā)送一個公鑰,并根據(jù)證書列表檢查該密鑰。然后,計算機(jī)使用從服務(wù)器發(fā)送的公鑰生成密鑰并對其進(jìn)行加密。
長話短說,沒有SSL握手,就不會建立安全連接。這會帶來重大的安全風(fēng)險。此外,該過程涉及許多活動部件。
這意味著有很多不同的機(jī)會出現(xiàn)問題并導(dǎo)致握手失敗,甚至導(dǎo)致“您的連接不是私密連接”錯誤,從而導(dǎo)致訪問者離開。
您可能知道,SSL證書可以驗證您網(wǎng)站的“身份”。它使用瀏覽器檢查的加密密鑰來確保證書有效。建立連接后,您的瀏覽器可以解密服務(wù)器發(fā)送的內(nèi)容。
這個過程稱為“握手”。以下是它更詳細(xì)的工作原理:
所有這一切都在幾秒鐘內(nèi)發(fā)生。SSL證書和HTTPS協(xié)議使您的網(wǎng)站能夠安全地傳輸數(shù)據(jù),而不會對性能產(chǎn)生負(fù)面影響。這使得SSL證書對任何網(wǎng)站都至關(guān)重要。但是,就像您網(wǎng)站的任何元素一樣,它有時會產(chǎn)生獨(dú)特的問題。
了解導(dǎo)致SSL握手失敗的原因
SSL握手失敗或錯誤525意味著服務(wù)器和瀏覽器無法建立安全連接。這可能由于多種原因而發(fā)生。
通常,錯誤525表示使用Cloudflare的域與源Web服務(wù)器之間的SSL握手失敗。
“SSL握手失敗”錯誤準(zhǔn)確地告訴您問題是什么。當(dāng)您的瀏覽器無法與具有SSL證書的網(wǎng)站建立連接時,它會顯示:
在這個來自使用Cloudflare的網(wǎng)站的示例中,您可以看到“SSL握手失敗”錯誤對應(yīng)于“525”代碼。因此,錯誤可能源于服務(wù)器端和客戶端的問題。
但是,了解SSL錯誤可能發(fā)生在客戶端或服務(wù)器端也很重要??蛻舳薙SL錯誤的常見原因包括:
- 客戶端設(shè)備上的錯誤日期或時間。
- 瀏覽器配置錯誤。
- 被第三方攔截的連接。
一些服務(wù)器端原因包括:
- 密碼套件不匹配。
- 服務(wù)器不支持的客戶端使用的協(xié)議。
- 不完整、無效或過期的證書。
通常,如果SSL握手失敗,問題可能是由于網(wǎng)站或服務(wù)器及其 SSL 配置有問題。
該列表包括本地問題,與您網(wǎng)站的服務(wù)器相關(guān)問題,一個特定于第三方服務(wù)的問題。在接下來的部分中,我們將探討如何解決每個問題。
如何修復(fù)SSL握手失敗錯誤
“SSL握手失敗”錯誤背后有幾個潛在原因。因此,當(dāng)涉及到如何修復(fù)它時,沒有簡單的答案。
幸運(yùn)的是,您可以使用一些方法來開始探索潛在問題并一一解決。讓我們看一下可用于嘗試修復(fù)SSL Handshake Failed錯誤的五種策略。
1. 更新您的系統(tǒng)日期和時間
當(dāng)您的瀏覽器嘗試建立SSL握手時,它會根據(jù)您計算機(jī)的日期和時間驗證證書。它這樣做是為了驗證SSL證書是否仍然有效。
如果您本地設(shè)備的日期和時間關(guān)閉,則可能會導(dǎo)致驗證過程中出現(xiàn)錯誤(即沒有握手)。幸運(yùn)的是,這是一個簡單修復(fù)的問題。
在Windows設(shè)備上,打開開始 菜單并輸入日期和時間設(shè)置。選擇出現(xiàn)的選項,會彈出一個新窗口。啟用設(shè)置自動設(shè)置時間,并確保您的時區(qū)正確:
驗證您的日期現(xiàn)在是否正確,然后嘗試重新加載網(wǎng)站。
以下是在其他操作系統(tǒng) (OS) 上修復(fù)日期和時間的方法:
- 蘋果系統(tǒng)
- IOS
- 安卓
如果在本地設(shè)備上修復(fù)日期和時間不起作用,您可以繼續(xù)進(jìn)行下一個修復(fù)。
2. 檢查您的SSL證書是否有效
SSL證書上標(biāo)有到期日期,以幫助確保其驗證信息保持準(zhǔn)確。通常,這些證書的有效期為六個月至兩年。
如果SSL證書被吊銷或過期,瀏覽器將檢測到這一點并且無法完成SSL握手。如果您在網(wǎng)站上安裝SSL證書已經(jīng)超過一年左右,那么可能是時候重新頒發(fā)它了。
要查看SSL證書的狀態(tài),您可以使用SSL證書檢查工具 ,例如Qualys提供的工具:
Qualys網(wǎng)站上的SSL服務(wù)器測試工具
該工具既可靠又免費(fèi)使用。您需要做的就是在Hostname字段中輸入您的域名 ,然后單擊Submit。一旦檢查器完成對您網(wǎng)站的SSL配置的分析,它將為您提供一些結(jié)果:
Qualys SSL檢查工具的結(jié)果頁面
在此頁面上,您可以查看您的證書是否仍然有效,并查看它是否因任何原因被吊銷。
在任何一種情況下,更新您的SSL證書都應(yīng)該可以解決握手錯誤(這對于確保您的網(wǎng)站和WooCommerce商店的安全至關(guān)重要)。
3. 為您的瀏覽器配置最新的SSL/TLS協(xié)議支持
有時,確定問題根本原因的最佳方法是消除過程。正如我們前面提到的,SSL握手失敗通常是由于瀏覽器配置錯誤而發(fā)生的。
確定特定瀏覽器是否存在問題的最快方法是嘗試切換到其他瀏覽器。這至少可以幫助縮小問題范圍。您也可以嘗試禁用任何插件并將瀏覽器重置為默認(rèn)設(shè)置。
另一個潛在的與瀏覽器相關(guān)的問題是協(xié)議不匹配。例如,如果服務(wù)器僅支持TLS 1.2,但瀏覽器僅配置為TLS 1.0或TLS 1.1,則沒有相互支持的協(xié)議可用。這將不可避免地導(dǎo)致SSL握手失敗。
如何檢查此問題是否發(fā)生取決于您使用的瀏覽器。作為一個例子,我們將看看這個過程在Chrome中是如何工作的。首先,打開瀏覽器并轉(zhuǎn)到設(shè)置 > 高級。這將擴(kuò)展許多菜單選項。
在“系統(tǒng) ”部分下,單擊“打開計算機(jī)的代理設(shè)置”:
Google Chrome中的系統(tǒng)設(shè)置頁面
這將打開一個新窗口。接下來,選擇高級選項卡。在安全部分下,檢查是否選中了使用TLS 1.2旁邊的框 。如果沒有,請檢查該選項:
Windows中的Internet屬性高級設(shè)置
還建議您取消選中SSL 2.0和SSL 3.0的復(fù)選框。
這同樣適用于TLS 1.0和TLS 1.1 ,因為它們正在被淘汰。完成后,單擊“ 確定” 按鈕,然后檢查握手錯誤是否已解決。
請注意,如果您使用的是Apple Safari或Mac OS,則沒有啟用或禁用SSL協(xié)議的選項。默認(rèn)情況下會自動啟用TLS 1.2。如果您使用的是Linux,您可以參考Red Hat guide on TLS hardening。
4. 驗證您的服務(wù)器是否正確配置為支持SNI
SSL 握手失敗也可能是由不正確的服務(wù)器名稱指示 (SNI) 配置引起的。SNI使Web服務(wù)器能夠為一個IP地址安全地托管多個TLS證書。
服務(wù)器上的每個網(wǎng)站都有自己的證書。但是,如果服務(wù)器未啟用SNI,則可能導(dǎo)致SSL握手失敗,因為服務(wù)器可能不知道要提供哪個證書。
有幾種方法可以檢查網(wǎng)站是否需要SNI。一種選擇是使用我們在上一節(jié)中討論過的Qualys的SSL服務(wù)器測試。輸入您網(wǎng)站的域名,然后單擊提交按鈕。
在結(jié)果頁面上,查找顯示“This site works only in browsers with SNI support”的消息:
Qualys SSL檢查器工具的摘要結(jié)果頁面
另一種檢測服務(wù)器是否使用SNI的方法是瀏覽“ClientHello”消息中的服務(wù)器名稱。這是一個技術(shù)性更強(qiáng)的過程,但它可以提供很多信息。
它涉及檢查“server_name”字段的擴(kuò)展hello標(biāo)頭,以查看是否提供了正確的證書。
如果您熟悉使用OpenSSL工具包 和Wireshark等工具,您可能會發(fā)現(xiàn)此方法更可取。您可以使用openssl s_client或不使用該-servername選項:
# without SNI $ openssl s_client -connect host:port # use SNI $ openssl s_client -connect host:port -servername host
如果您獲得了兩個同名的不同證書,則意味著SNI受支持且配置正確。
但是,如果返回的證書中的輸出不同,或者沒有SNI的調(diào)用無法建立SSL連接,則表明需要SNI但未正確配置。解決此問題可能需要切換到專用IP地址。
5. 確保密碼套件匹配
如果您仍然無法確定SSL握手失敗的原因,則可能是由于密碼套件不匹配。如果您不熟悉該術(shù)語,“密碼套件”是指一組算法,包括用于密鑰交換、批量加密和消息身份驗證代碼的算法,可用于保護(hù)SSL和TLS網(wǎng)絡(luò)連接。
如果服務(wù)器使用的密碼套件不支持或不匹配Cloudflare使用的密碼套件,則可能導(dǎo)致“SSL握手失敗”錯誤。
在確定是否存在密碼套件不匹配時,Qualys的SSL服務(wù)器測試再次證明是一個有用的工具。
當(dāng)您輸入您的域并單擊提交時,您將看到一個摘要分析頁面。您可以在“Cipher Suites ”部分下找到密碼信息:
Qualys SSL報告中的密碼套件部分
您可以使用此頁面來發(fā)現(xiàn)服務(wù)器支持的密碼和協(xié)議。您需要注意任何顯示“弱”狀態(tài)的內(nèi)容。此外,本節(jié)還詳細(xì)介紹了密碼套件的具體算法。
要更正此問題,您可以使用您的瀏覽器工具的Qualys SSL/TLS功能將結(jié)果與您的瀏覽器支持的內(nèi)容進(jìn)行比較。有關(guān)密碼套件的更多信息和指導(dǎo),我們還建議查看ComodoSSLStore指南。
小結(jié)
最令人困惑但最常見的SSL相關(guān)問題類型之一是“SSL握手失敗”錯誤。處理此錯誤可能會帶來壓力,因為它有許多潛在原因,包括客戶端和服務(wù)器端問題。
但是,您可以使用一些可靠的解決方案來識別問題并加以解決。您可以使用以下五種方法來修復(fù)SSL Handshake Failed錯誤:
本文題目:如何修復(fù)解決“SSL握手失敗”報錯
URL網(wǎng)址:http://fisionsoft.com.cn/article/djiccss.html


咨詢
建站咨詢
