快轉到主要內容

修復SSL_do_handshake() failed 錯誤

·463 字·1 分鐘
Y Cheung
作者
Y Cheung
Blogger, Programer & Traveler.
目錄

最近WP網站遇到了詭異的問題,Jetpack 的統計數據與 Google Analytics 上的不一致,wordpress.com 面板上又顯示無法訪問這個站點,但是 Y Chueng 用瀏覽器打開網站又正常,很奇怪。然後本應該在昨日計劃發佈的 Post 沒有被發佈。太奇怪了。

在進一步調查時發現 Wordpress 站點健康檢測中顯示了2個問題,一個 Jetpack無法連接,一個是計劃事件無法正常運行。呀呀呀,於是去檢查 Nginx log 日誌,發現果然有錯誤(如下),只是不知道是否相關。

1[crit] 4574#4574: *1894365 SSL_do_handshake() failed (SSL: error:14094085:SSL routines:ssl3_read_bytes:ccs received early) while SSL handshaking, client: 52.80.254.107, server: 0.0.0.0:443

難道是 SSL 證書出了問題?再去 Chrome 中檢視網站證書,沒發覺有問題。又去 SSL Server Test 查網站的 SSL/TLS錯誤。嘿!還真的有問題!是 SSL chain上的其中一個證書在上月底過期了。

急吼吼地去找站點證書重新生成 SSL chain。這次用的是 What’s My Chain Cert? 生成SSL chain。生成好後放入主機重啓 Nginx,再去 SSL Server Test 測試就沒這個錯誤了。但是還有一個警告,說沒有 DNS CAA 。這個好辦,去 DNS 增加一條 CAA 紀錄就好。CAA紀錄的內容可以在 CAA Record Helper 中查到。

那那那就繼續觀察吧!

Reference
#

相關文章

再談網站HTTPS升級

·2100 字·5 分鐘
Y.Cheung 曾於 2016 年時寫過一篇《 Centos 7 使用 certbot 安裝Let’s Encrypt SSL 證書 》,最近因爲幫忙升級了幾個站點,使用了一些免費/收費的SSL憑證服務,特寫此篇記錄一下流程思路送給整天吐槽Y.Cheung沒耐心教人的某只。

Centos 7 使用 certbot 安裝Let’s Encrypt SSL 證書

·707 字·2 分鐘
安裝環境 # CentOS7 主機 Nginx 操作步驟 # 安裝certbot # 1#如果你已經安裝了EPEL,這個步驟可以省略 2sudo yum install epel-release 3#安裝certbot客戶端 4sudo yum install certbot 使用嚮導自動安裝證書 # 使用certbot嚮導安裝,有界面,根據指示一步步操作就行,但是YCHEUNG進行到設置webroot的時候就error了,只好放棄

Laravel 7 配置郵件服務 Mailgun

·595 字·2 分鐘
2016年的時候,Mailgun 免費註冊帳號還能添加自定義域名(當時Y Cheung 曾寫過一篇blog:Centos7 安裝 Postfix 並配置 mailgun 服務),想不到現在新註冊帳號已經是需要先綁定銀行卡才能使用自定義域名,而註冊分配給你的測試域名Sandbox subdomain壓根就不能用,你會遇到類似以下的報錯信息:

非ROOT用户使用docker命令

·345 字·1 分鐘
Docker安装完之后,如果是以非ROOT用户登录的必须加sudo执行docker命令,否则会报错: 1Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied 解决办法是把当前用户添加进docker用户组。