1. 程式人生 > 實用技巧 >為什麼 macx.cn 網站無法使用mac下的firefox開啟

為什麼 macx.cn 網站無法使用mac下的firefox開啟

正在試圖寫一個ssl的檢測工具doit-ssl-checker , 順便使用工具對https://www.macx.cn進行測試.

居然返回錯誤!

# yongfu @ yfmac in ~/git/gitee.com/RickieL/doit-ssl-checker on git:master x [20:45:41]
$ go run main.go -d www.macx.cn -l
[error]: x509: certificate signed by unknown authority

說證書是被未知機構頒發的或者是自簽名的證書.

好傢伙, 趕緊用chrome進行開啟, 嘿嘿嘿, 沒問題呀, 開啟一切正常.

有點自我懷疑了, 難道是我寫的工具有問題?

用firefox開啟試試, 出現了一個大大的告警.

和我的工具顯示的錯誤類似, 進一步檢查Firefox, 位址列上的鎖有一個感嘆號, 點選感嘆號.

點選 "箭頭" 後, 再點選 "更多資訊"

再點選 "檢視證書",

可以直接檢視 www.macx.cn 的證書了.

和正常的網址對比, 可以發現, 應該是 www.macx.cn 只提供了自己的域名證書, 沒有把對應的頒發機構的證書一起配置在伺服器上. 但是firefox和我的ssl檢測工具 doit-ssl-checker 會對頒發機構的證書進行驗證. 嗯, chrome和safari沒有去獲取這個證書, 所以可以正常開啟網頁.

然後通過chrome的審查元素, 發現macx.cn的webserver使用的是Apache的伺服器, 一開始還擔心是CDN的ssl證書配置問題, 然後對 www.macx.cn 進行nslookup和dig後發現, 居然沒有上CDN, 那解決起來就比較簡單了. 直接在webserver上加上中間證書就行了.

但是我不這個站的管理員, 沒有許可權, 也加不了, 罷了罷了.

解決方法:

  1. 獲取你的ssl證書的證書鏈檔案 ( 可以到證書頒發機構去下載, 也可以到https://www.myssl.cn/tools/downloadchain.html進行下載證書鏈)
  2. 在Apache伺服器上的ssl配置部分加上SSLCertificateChainFile /etc/httpd/cert/2594646_jiandanji.fun_chain.crt #替換成你的證書鏈檔案路徑
推薦閱讀:南陽在哪