在 iOS 13 與 macOS 10.15 以後的版本對於信任憑證有更新,可以參考 Requirements for trusted certificates in iOS 13 and macOS 10.15,如果憑證不被信任就會出現 “NET::ERR_CERT_INVALID”,但是這種情況下不會出現 “繼續前往 192.168.1.1 網站(不安全)” 的選項可以繼續。
而在舊版系統中因為會信任憑證,所以出現的錯誤是 “NET::ERR_CERT_AUTHORITY_INVALID” 就有 “繼續前往 192.168.1.1 網站(不安全)” 的選項繼續網站。
“NET::ERR_CERT_INVALID” 問題解決方法
這個問題可以直接在網站中間輸入 “thisisunsafe”,在 Chrome 上面就可以直接信任憑證繼續使用網站。
在憑證加入 EKU (ExtendedKeyUsage 擴展名)
但是這樣很麻煩所以可以修改產生憑證的方法改成使用如下,就可以讓錯誤變成 “NET::ERR_CERT_AUTHORITY_INVALID” 讓網站可以繼續使用了。
openssl req \ -newkey rsa:2048 \ -x509 \ -new \ -nodes \ -keyout rootca.key \ -out rootca.csr \ -subj /CN=localhost \ -sha256 \ -days 825 \ -addext "extendedKeyUsage = serverAuth, clientAuth"
serverAuth 與 clientAuth 對應的 OID
而 extendedKeyUsage 的 serverAuth 與 clientAuth 是對應到相對的 OID,所以可以修改成extendedKeyUsage = 1.3.6.1.5.5.7.3.1
伺服器驗證 (serverAuth):1.3.6.1.5.5.7.3.1
用戶端驗證 (clientAuth):1.3.6.1.5.5.7.3.2
《AWS CDK 完全學習手冊:打造雲端基礎架構程式碼 IaC》
第 12 屆 iT 邦幫忙鐵人賽 DevOps 組冠的《用 CDK 定 義 AWS 架構》
第 11 屆 iT 邦幫忙鐵人賽《LINE bot 好好玩 30 天玩轉 LINE API》
一個熱愛分享的雲端工程師!