无法通过SSH(WSL)连接Python解释器求助
解决PyCharm SSH连接WSL时的"Error finalising cipher"问题
我之前也碰到过几乎一模一样的问题——用Putty连WSL SSH完全正常,但PyCharm添加Python解释器时就弹出「Error finalising cipher」的报错,折腾了好一阵才解决,给你几个靠谱的排查方向:
调整WSL SSH服务的加密套件配置
PyCharm和Putty对加密套件的支持范围不完全一致,你可以手动指定WSL SSH服务使用兼容的加密规则:- 在WSL终端里打开SSH配置文件:
sudo nano /etc/ssh/sshd_config - 如果找不到
Ciphers和MACs这两项,就直接在文件末尾添加以下内容;如果已有,就替换成下面的配置:Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com MACs hmac-sha2-256,hmac-sha2-512,umac-128-etm@openssh.com - 重启SSH服务让配置生效:
sudo service ssh restart
- 在WSL终端里打开SSH配置文件:
核对PyCharm的SSH配置细节
有时候看似相同的配置,细节差异会导致连接失败:- 确认PyCharm里填写的用户名是WSL系统内的真实用户名(不是你的Windows用户名)
- 尝试切换PyCharm使用的SSH客户端:在PyCharm的SSH配置界面,找到「SSH executable」选项,选择「Native」,也就是使用Windows系统自带的
ssh.exe(路径一般是C:\Windows\System32\OpenSSH\ssh.exe),而不是PyCharm自带的客户端 - 如果你的PyCharm开启了代理,暂时关闭代理设置,避免代理干扰SSH连接
更新WSL和OpenSSH版本
旧版本的OpenSSH服务可能和新版PyCharm存在兼容性问题:- 在WSL终端执行
sudo apt update && sudo apt upgrade openssh-server更新OpenSSH服务 - 在Windows终端执行
wsl --update确保WSL本身是最新版本
- 在WSL终端执行
排查防火墙和安全软件的拦截
虽然Putty能正常连接,但部分安全软件会针对特定程序(比如PyCharm)拦截SSH流量:- 暂时关闭Windows防火墙,或者在防火墙规则里添加PyCharm的允许项
- 检查第三方杀毒软件是否限制了PyCharm的网络访问权限
内容的提问来源于stack exchange,提问作者Alexander Yudkin
相关产品推荐
相关产品推荐

