VS Code Remote SSH 远程登录Linux服务器使用vscode 的AI辅助办公
引言
在之前的博客Ubuntu SSH密钥登录:告别密码 - 杜文龙 - 博客园中,我详细介绍了如何使用FinalShell从Windows连接到Linux服务器,实现安全的密钥认证登录。今天,我将分享如何在VS Code中使用Remote SSH扩展来实现同样的功能,让你在熟悉的代码编辑器中直接操作远程服务器。
环境准备
服务器环境
- 操作系统:Ubuntu 22.04.5 LTS
- SSH服务:OpenSSH Server
- 用户权限:具有sudo权限的用户
客户端环境
- 操作系统:Windows 10/11
- 编辑器:VS Code
- 扩展:Remote SSH
配置步骤
1. 安装Remote SSH扩展
VS Code的Remote SSH扩展允许你通过SSH连接到远程主机,并在本地VS Code中编辑远程文件。
扩展ID:ms-vscode-remote.remote-ssh
如果你还没有安装,可以在VS Code扩展市场搜索"Remote SSH"安装。
2. 配置SSH密钥
假设你已经按照之前的博客在服务器上配置了SSH密钥登录,并且在FinalShell中测试通过。
将私钥文件复制到本地Windows的SSH目录:
# 私钥文件路径(示例)
C:\Users\用户名\.ssh\id_ed25519
3. 配置SSH config文件
在Windows的PowerShell中,打开SSH配置文件:
notepad $HOME\.ssh\config
添加以下配置:
Host my-linux-server
HostName 【服务器IP】 # 替换为你的服务器实际IP
User 服务器用户名 # 替换为你的服务器用户名
Port 22
IdentityFile "C:\Users\用户名\secure_keys\ubuntu_server.key" #替换为你的ubuntu_server.key的地址
IdentitiesOnly yes # 明确指定使用此密钥
保存文件。
4. 连接到远程服务器
- 在VS Code中,打开Remote Explorer(侧边栏的远程资源管理器图标)。
- 点击"+"按钮,选择"Add New SSH Host"。
- 输入:
ssh [替换你的服务器用户名@服务器IP]#例如 duwl@192.168.1.101 - 选择SSH配置文件(通常是
C:\Users\用户名\.ssh\config)。 - 点击"Connect"。
首次连接时,VS Code会提示输入私钥密码(passphrase)。输入你在生成密钥时设置的密码。
连接成功后,你会看到VS Code的界面变成了远程模式,标题栏显示"[SSH: my-linux-server]"。
5. 验证连接
在VS Code的终端中(Ctrl+` 打开),运行以下命令验证:
# 查看系统信息
uname -a
# 查看当前用户
whoami
# 查看当前目录
pwd
# 测试网络连接
ping -c 3 8.8.8.8
安全注意事项
- 私钥保护:确保私钥文件权限正确(Windows下无需特殊设置,但不要分享给他人)。
- 密码管理:定期更换私钥密码。
- 防火墙:确保服务器防火墙只允许必要的端口。
- 日志监控:定期检查SSH登录日志。
优势
相比FinalShell,VS Code Remote SSH提供:
- 完整的代码编辑功能
- 插件生态系统
- 集成的终端
- 文件管理
- 调试支持
故障排除
如果连接失败:
- 检查SSH服务状态:
sudo systemctl status ssh - 验证私钥权限:私钥文件应只有所有者可读
- 检查网络连接:确保服务器IP可达
- 查看日志:
sudo journalctl -u ssh --since "today"
总结
通过VS Code Remote SSH,你可以在本地舒适的环境中高效地开发和维护远程Linux服务器。结合之前的密钥配置,这是一种既安全又便捷的远程工作方式。
浙公网安备 33010602011771号