wls2 ubuntu conda出现诡异ssl错误

conda突然用不了了,查了两个小时才发现解决办法,赶紧趁热打铁记录下。

背景

wls2开的ubuntu20,子系统打开了ssh,宿主机打开了端口转发。使用同一局域网的另一台机器,通过vscode来访问宿主机的子系统。

问题描述

反复配环境,然后就突然报SSL 443相关的错误,具体来说如下所示。

bash 复制代码
Channels:
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)'))': /pkgs/main/linux-64/repodata.json.zst

Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)'))': /pkgs/r/linux-64/repodata.json.zst

Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)'))': /pkgs/r/noarch/repodata.json.zst

而且是秒报错,看起来就是443不让访问了,证书出问题了,所以就对症下药看看怎么更新证书、或者复原证书。

解决办法

参考文章https://www.reddit.com/r/bashonubuntuonwindows/comments/1b5i6my/ssl_doesnt_work_on_wsl_2_ubuntu/,输入如下命令更新下就可以了,稀里糊涂的,怎么会证书出问题了?

bash 复制代码
sudo apt-get update
sudo apt-get install ca-certificates
update-ca-certificates

题外话

打通隧道,以2333端口为例,子系统ip为172.123.123.123为例。

powershell 复制代码
# 把子系统的ssh服务打开
sudo systemctl status ssh
sudo systemctl start ssh

# ssh 用密码验证
sudo vim /etc/ssh/sshd_config
# 把里面的passwordAuthentication从no改为yes

# 看看它的ip地址,这里为172.123.123.123
ip adress
# 或者
ifconfig

# 宿主机打开端口转发 
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=2333 connectaddress=172.123.123.123 connectport=22

# 再防火墙放行
netsh advfirewall firewall add rule name=WSL2 dir=in action=allow protocol=TCP localport=2333

# 看看成功没
netsh interface portproxy show all

子系统似乎必须保持窗口打开,否则就会休眠。

相关推荐
嵌入式学习和实践1 小时前
虚拟机 Ubuntu 磁盘扩容完全指南:从原理到实践,一步到位
linux·ubuntu·磁盘扩容
木心术19 小时前
TypeScript实战进阶:从基础类型到高级类型编程
javascript·ubuntu·typescript
sheeta199813 小时前
TypeScript references 配置与 emit 要求详解
javascript·ubuntu·typescript
ancktion14 小时前
ubuntu多gcc版本切换
linux·运维·ubuntu
贵沫末15 小时前
Claude Code使用
ubuntu
DeepHacking16 小时前
Ubuntu 22.04 安装 Allow Locked Remote Desktop 扩展:解决锁屏后 mstsc 无法连接的问题
linux·运维·ubuntu
成为你的宁宁17 小时前
【apt update突然报错Temporary failure resolving ‘cn.archive.ubuntu.com‘】
linux·运维·ubuntu
SilentSamsara1 天前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
xuanwenchao1 天前
Mac M1/M2/M3/M4/M5芯片-系统安装Ubuntu
linux·ubuntu·macos
叫我刘同学1 天前
腾讯云 Ubuntu 服务器部署 Hermes Agent 详细安装教程
服务器·ubuntu·腾讯云