VSCode通过SSH连接VMware虚拟机
以下是关于VSCode通过SSH连接VMware虚拟机的原理、必要条件及注意事项的说明:
一、连接原理
SSH协议通信:SSH(Secure Shell)是一种加密网络协议,VSCode通过Remote-SSH插件将本地开发环境与虚拟机终端绑定,实现远程代码编辑、文件管理和终端操作
客户端-服务器模型:本地VSCode作为SSH客户端,虚拟机中的OpenSSH服务作为服务器端。客户端通过密钥或密码认证后,建立加密隧道传输数据
端口转发:若虚拟机使用NAT模式,需在VMware中配置端口转发规则,将宿主机的某端口映射到虚拟机的SSH端口(默认22),确保外部访问可达
二、必要条件
1.虚拟机环境配置
- SSH服务运行
确保虚拟机内已安装并启用OpenSSH服务:sudo apt update #更新本地软件包 sudo apt install openssh-server -y #安装OpenSSH服务端组件 sudo systemctl start ssh #立即启动SSH服务 sudo systemctl enable ssh #设置SSH服务开机自启动sudo systemctl status ssh #检查SSH服务运行状态
- 网络配置
NAT模式即可
2. 宿主机与VSCode配置
SSH客户端支持
- Windows需能够SSH 虚拟机
- 安装VSCode插件:这三
- 权限问题:Bad permissions. Try removing permissions for user: UNKNOWN\\UNKNOWN (S-1-5-21-3174866689-457967839-3224505458-500) on file C:/Users/15932/.ssh/config.
Bad owner or permissions on C:\\Users\\15932/.ssh/config
如:
需修改为类似:
- 打开文件资源管理器:进入
C:\Users\15932\.ssh
文件夹。- 检查文件权限:右键点击
config
文件,选择“属性”,然后切换到“安全”选项卡12。- 修改权限设置:点击“高级”按钮,然后选择“禁用继承”并删除所有继承的权限。接着,添加当前用户的权限,确保只有当前用户对
config
文件有读写权限12。- 确认文件所有者:确保
config
文件的所有者是当前用户。如果不是,需要修改文件的所有者为当前用户2。- 重新启动VSCode:完成上述步骤后,重新启动VSCode并尝试重新连接SSH
三、VScode内连接
ip a
whoami
可得:ssh book@192.168.32.130
填入即可