WSL 证书

WSL 证书

我正在使用 Debian,通过 WSL 安装在 Windows 上,但在证书方面遇到了一些恼人的问题。我在公司网络后面,不完全确定如何设置(代理、自签名证书...)

有相当多的操作无法验证证书,即使是简单的操作也会sudo apt update为某些存储库返回以下内容:CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

与 cURL、wget 等类似的结果...

由于一切在 Windows 上都能完美运行,因此我尝试从中导入证书。

运行openssl s_client -connect someDomainHere.com:443 </dev/null会给我根证书名称,然后将其移动到/usr/local/share/ca-certificates/最后sudo update-ca-certificates不会改变任何东西......

如果有人有一个想法,我将非常感激,因为我已经没有更多的技巧了:)

谢谢

编辑:忘记提及我还尝试更新并重新安装 ca 证书

答案1

我不确定您尝试过哪些命令确切地(视情况而定,我的提示不太有帮助)。

1.这个命令对我有用(没有 DPI-Firwall)

sudo apt-get update
sudo apt-get install wget ca-certificates

https://docs.microsoft.com/en-gb/windows/wsl/tutorials/wsl-vscode#update-your-linux-distribution

2. 如果您的防火墙代理正在使用 HTTPS 检查(DPI) 然后确保,它是“证书信任链”已安装

请谨慎参加(证书必须有.crt扩展名) https://manpages.debian.org/stretch/ca-certificates/update-ca-certificates.8.en.html

获取链条的方式有多种,例如通过网络浏览器。

(或未测试:

openssl s_client -servername example.com -connect example.com:443 </dev/null 2>/dev/null | openssl x509 -text

example.com 代表防火墙后面的任何服务器)

3.如果您使用 wsl2:通过自动生成 /etc/resolv.conf 检查您是否受到 wsl2-bug 的影响(错误的名称服务器地址)

要识别正确的 IP 地址,您可以使用此 powershell cmdlet:

Get-DnsClientServerAddress -AddressFamily ipv4 | Select-Object -ExpandProperty ServerAddresses

相关内容