比如站内脚本贴置顶里面wget有些带上了 --no-check-certificate
据我所知,这个是关闭远程https网站的证书校验,但是这些脚本通常都是从 https://raw.githubusercontent.com 下载的,证书不可能有问题,关了只会降低安全性
有没有佬知道为什么这些远程下载执行的脚本wget必须关闭证书校验吗?我手动去掉一点问题都没有,但就是特别好奇为什么要带上 
比如站内脚本贴置顶里面wget有些带上了 --no-check-certificate
据我所知,这个是关闭远程https网站的证书校验,但是这些脚本通常都是从 https://raw.githubusercontent.com 下载的,证书不可能有问题,关了只会降低安全性
有没有佬知道为什么这些远程下载执行的脚本wget必须关闭证书校验吗?我手动去掉一点问题都没有,但就是特别好奇为什么要带上 
防止ssl过期吧
因为有些低版本的小鸡没有正确安装或更新 ca-certificates ,遇到新证书认不出来
怕遇上老爷爷系统?
照顾老旧版本系统 还有时间不对的问题
轻量的debian就不带ca-certificates,你d完系统连wget都没有
除了 debian9 需要,其他几乎不用了。做脚本的适配所有场景
以下是 chatGPT 的回复。
这是一个很经典的 Debian 9(Stretch)时代遗留问题,核心原因是:
👉 系统内置的 CA 根证书太旧,无法验证现在常见的 HTTPS 证书链
我们拆开讲。
✅ 本质原因
Debian 9 发布于 2017 年,它自带的:
ca-certificates版本都非常老。
而现在大量网站:
Debian 9 默认信任库里:
👉 缺少或不完整包含这些新根证书
结果就是:
会报:
所以你只能绕过验证:
✅ Debian 10+ 为什么没问题?
Debian 10 (Buster, 2019) 以后:
因此 TLS 验证可以正常通过。
✅ 典型错误示例
Debian 9 上常见:
✅ 正确解决方案(不建议长期用 --no-check-certificate)
🔹 方法一(推荐):更新 CA 证书
如果源还能用,这一步往往就解决。
🔹 方法二:手动升级 ca-certificates
确认版本:
应 ≥ 2021xx
🔹 方法三:手动加入 ISRG Root X1
✅ 为什么还能“连得上”却提示证书错误?
TLS 分两步:
Debian 9:
✔ 能加密
❌ 不认识颁发机构
所以只是“身份不可信”。
⚠️ 为什么不建议长期用 --no-check-certificate?
等于告诉 wget:
风险:
在自动化脚本里是安全隐患。
✅ 进阶判断:是不是 CA 过期导致
测试:
如果看到:
就是证书库太旧。
✅ 终极建议
如果这台 Debian 9 还能长期使用:
👉 强烈建议升级系统到 Debian 11 / 12
Debian 9 已 EOL,多数仓库也已迁移归档。
🧠 一句话总结
如果你愿意,我可以教你一步一步把这台 Debian 9 的 CA 信任链修好,或者给你一套最小风险的证书补丁方案。
老系统怕出问题