vscode连接ssh远程服务器记住密码
时间: 2025-05-17 17:03:52 浏览: 24
### 如何让 VSCode 在 SSH 远程连接中保存密码或密钥
为了使 VSCode 在通过 SSH 连接到远程服务器时能够自动记住密码或密钥,可以通过以下方法实现:
#### 方法一:配置 SSH 密钥免密登录
1. **生成 SSH 密钥对**
使用 `ssh-keygen` 命令在本地计算机上生成一对公钥和私钥。此过程不会提示输入任何密码[^2]。
```bash
ssh-keygen -t rsa
```
2. **将公钥添加到远程服务器**
将生成的公钥(通常位于 `~/.ssh/id_rsa.pub` 文件中)的内容追加到远程服务器上的 `~/.ssh/authorized_keys` 文件中。可以手动复制粘贴或者使用 `scp` 或者 `ssh-copy-id` 工具完成该操作。
```bash
scp ~/.ssh/id_rsa.pub user@remote_host:~/.ssh/authorized_keys
```
或者,
```bash
ssh-copy-id user@remote_host
```
3. **验证免密登录**
重新尝试通过 SSH 登录到远程服务器。如果一切正常,应该不再需要输入密码即可成功登录。
4. **更新 VSCode 的 SSH 配置文件**
打开 `.ssh/config` 文件,在其中为对应的主机指定身份文件路径以便于识别使用的密钥对。例如:
```plaintext
Host myserver
HostName remote_host_ip_or_name
User your_username_on_remote_server
IdentityFile ~/.ssh/id_rsa
```
#### 方法二:启用 Gnome Keyring 或其他凭证存储工具
对于那些不希望采用无密码方式但仍想减少重复输入的情况来说,还可以利用系统的凭据管理器来缓存密码信息一段时间内有效而无需每次都提供完整的认证数据。
- 对于 Linux 用户而言,默认情况下可能会依赖 gnome keyring 来处理此类请求;而对于 macOS 和 Windows 则分别有自己的解决方案如 Keychain Access 及 Windows Credential Manager 等[^1]^。
确保这些服务正在运行并且被正确配置好之后再次启动 Remote-SSH 插件进行测试看是否达到了预期效果即只首次询问一次随后便能保持会话期间持续可用状态直到超时退出为止[^3].
```python
import paramiko
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('hostname', username='username', password='password')
stdin, stdout, stderr = client.exec_command('ls')
print(stdout.read().decode())
client.close()
```
阅读全文
相关推荐


















