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

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


咨詢(xún)
建站咨詢(xún)
