解决Mac Catalina系统下HTTPS请求被拦截的问题


这个问题的解决方法很骚气,记录一下

背景:定位到是mac的Catalina系统版本下的HTTPS问题

当天,同事将新建的项目部署到了测试环境,让我访问一下,没问题的话就可以开始撸业务代码啦。
我打开页面,发现有css和js没有加载出来,犹豫测试环境的协议用的HTTP,我马上推断是引用的资源来自https协议,没有被信任。

打开调试模式一看,果然是这样,哈哈,双击https的协议链接,准备点击:高级——》继续前往XXX,让chrome信任即可。
但是点开高级,我就傻眼了,tmd居然没有继续前往的按钮拉

三个同事一起看这个问题,我们有两人都没有这个按钮,而唯一有按钮的那个同事和我们环境的区别,就在于他的mac还没升级Catalina。
通过排除法,我们已经能定位原因啦,就是Catalina系统版本导致的。


解决方法

结合HTTPS,Catalina,chrome等关键词,我们在chrome的社区里面找到了解决方案。

大致操作就是在这个页面(确认你需要信任它,没有风险),直接键盘输入

thisisunsafe

就这样,chrome就会信任你的协议,之前的https链接,打开后也能从高级点继续前往,这个问题被完美解决了。

至于这个解决方法,真的好骚啊,这哥们儿肯定是谷歌chrome内部员工吧,玩儿呢?

记录一下问题的具体原因

苹果已经为Catalina接受了SSL证书的一系列新要求,这些要求记录在 https://support.apple.com/zh-cn/HT210176
总结一下:

  • 密钥大小必须至少为2048位。
  • 哈希算法必须为SHA-2或更高版本。
  • DNS名称必须在SubjectAltName中,而不能仅在CN字段中。

对于2019-07-01之后发行的证书:

  • 必须存在ExtendedKeyUsage扩展名,并带有id-kp-ServerAuth OID。
  • 有效期不得超过825天。

声明:高翔的博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 解决Mac Catalina系统下HTTPS请求被拦截的问题


高翔的博客