1.Remote-SSH扩展
- 在Extentions(扩展)中搜索Remote - SSH,选择安装即可,安装后会增加如下选项。
- 点击进入配置ssh,填写信息(主机名,HostName(IP地址) ,User....)
- 勾选Show Login Terminal
- 选择连接方式
- 终端输入密码,进行连接
2.配置ssh免密登录,win端生成秘钥(cmd报错,推荐使用git)
1.打开cmd或git bash
2.输入ssh-keygen -t rsa -b 4096
ssh-keygen:这是用于生成 SSH 密钥的命令行工具。-t rsa:这部分指定了要生成的密钥类型。在这种情况下,它是 RSA 密钥,一种常用的非对称加密算法。-b 4096:这部分指定了密钥的比特长度。4096 比特是一个较安全的选项,因为它提供了更高的安全性,但也需要更多的计算资源来加密和解密数据。
会在默认位置生成公钥(pub文件),私钥
3.使用 ssh-copy-id 用户名@ip地址命令,通过命令行自动上传公钥到服务器
(也可以直接手动复制公钥文件内容到服务器, 在~/.ssh/目录创建authorized_keys,复制进去)
4.补充配置项
在ssh设置中添加 IdentityFile ‘私钥文件地址’,即可免密登录
3.错误解决
1.vscode报如下错误:
Got some output, clearing connection timeout. 过程试图写入的管道不存在。
可能是ip代理导致问题 原因是本地的known_hosts文件记录服务器信息与现服务器的信息冲突了,导致连接失败。
解决方案就是关掉动态ip梯子,把本地的known_hosts的原服务器信息全部删掉,然后重新连接。
一般问题排查步骤:
- 本地记录的远端服务器信息变化,这时候即可按照文中指定的路径找到对应文件,一般为known_hosts(找不到这个文件可以用everything搜索),打开后删除原内容,重启vscode再连接。