VSCODE远程调试,连接ssh失败,报错:过程试图写入管道不存在

用vscode远程连接linux机器调试的时候,突然ssh就连接不上了,各种重新安装本地window和远端linux的vscode还是无法解决。查看具体报错信息为Unable to negotiate with 192.178.110.21 port 22: no matching MAC found. Their of > fer: hmac-sha1,过程试图写入管道不存在

主要的原因为SSH 客户端和服务器之间不兼容的 MAC(消息认证码)算法导致的

 排查处理方法:

1. 检查 SSH 客户端和服务器的配置

确保你的 SSH 客户端和服务器都支持相同的 MAC 算法。你可以通过以下命令检查客户端支持的算法:

ssh -Q mac

2. 修改 SSH 配置文件

vscode远程ssh连接linux报错为 no matching MAC found. Their of > fer: hmac-sha1,所以你可以在客户端的 SSH 配置文件中添加支持它的设置。编辑或创建 ~/.ssh/config 文件,添加以下内容:

Host 192.178.110.21 

MACs hmac-sha1

报文配置后重新连接,即可解决 no matching MAC found. Their of > fer: hmac-sha1的问题。

### VSCode 远程连接服务器时写入管道失败的解决方案 当遇到VSCode通过SSH远程连接服务器时报错试图写入管道存在”,这通常是因为本地`.ssh`目录下的配置文件与当前服务器状态匹配所引起的。以下是几种有效的处理方式: #### 配置SSH扩展中的Config路径 对于某些版本的VSCode及其插件来说,在SSH扩展设置里指定config文件的具体位置能够有效解决问题。此配置文件默认存放在用户的`.ssh`文件夹内,即`C:\Users\你的用户名\.ssh\config`。确保这个路径被正确设定可以帮助程序准确定位到必要的认证信息[^1]。 #### 清除Known_Hosts记录 由于已有的`known_hosts`文件可能保存着再适用的老数据或是错误条目,这些都会阻碍新会话建立。因此建议先移除此文件——它同样位于上述提到的`.ssh`目录下(`C:\Users\你的用户名\.ssh\known_hosts`)。这样做可以让客户端在下次尝试连接时自动获取最新的主机密钥[^2]。 如果清除后依旧无法正常工作,则可以通过命令行手动刷新远端机器上的公钥列表: ```bash ssh-keygen -R 服务器IP地址 ssh-keyscan -H 服务器IP地址 >> C:\Users\用户名\.ssh\known_hosts ``` 这段脚本的作用在于移除旧版密钥并追加最新版本至信任库中。 #### 删除整个.SSH文件夹内容 作为最后的选择,考虑彻底清理个人账户下的`.ssh`文件夹(记得提前做好重要资料备份)。完成这一操作后再经由VSCode发起一次全新的SSH链接请求,期间按照指示录入相应的登录凭证,这样便能促使系统自动生成一套完整的初始化配置文档[^3]。 值得注意的是,假如即便完成了以上步骤仍存在打开文件困难的情况,并伴随频繁掉线现象发生的话,妨试着退出编辑器并重启计算机来恢复正常的网络交互功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值