【VSCode\SSH】VSCode+MobaXterm远程连接服务器并永久保存密码 || 软件手册

本文详细指导如何在VSCode中使用MobaXterm远程连接Linux服务器,包括安装Remote-SSH插件、配置SSH文件夹和生成并使用SSH密钥实现密码免输。
Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

【start:20231103】

CMD

检查ssh

(base) PS C:\Users\lenovo> ssh 59.xx.x.xxx
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 5.4.0-150-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage


 * Canonical Livepatch is available for installation.
   - Reduce system reboots and improve kernel security. Activate at:
     https://ubuntu.com/livepatch

299 packages can be updated.
6 updates are security updates.

New release '20.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

Your Hardware Enablement Stack (HWE) is supported until April 2023.
Last login: Fri Jul 18 17:20:44 2025 from 10.30.57.32

(base) xqlin@adc-SYS-4028GR-TR:~$

报错

Permission denied (publickey)

删除/home/xqlin/.vscode-server后
(base) PS C:\Users\lenovo> ssh user@59.77.5.136
user@59.77.5.136: Permission denied (publickey).

VSCode

基本步骤

要实现VSCode+MobaXterm远程连接服务器,并永久保存密码,需做到以下三步:

用vscode远程连接服务器

(1)在扩展中安装Remote-SSH插件

在这里插入图片描述

(2)点击远程资源管理器,点击加号,输入ssh username@IP地址,点击Enter

在这里插入图片描述

(3)配置config文件
在这里插入图片描述

(4)点击图标,连接到服务器
在这里插入图片描述

【ref】VSCode+MobaXterm实现在远程服务器上跑代码

在Linux家目录下激活.ssh隐藏文件夹

Linux家目录下没有.ssh隐藏文件夹

对于没有登录过root的用户,在家目录下是没有.ssh文件夹的,

如果想生成.ssh文件夹的话,需要进入MobaXterm,然后在命令行中执行命令ssh localhost

【ref】Linux家目录下没有.ssh隐藏文件夹

让vscode永久保存服务器密码

vscode默认每次连接打开文件都要输入一次密码——当密码很复杂的时候,这是一件很痛苦的事;

虽然,vscode没有保存密码功能,但是,我们可以通过ssh秘钥的方式进行自动登录;

具体地:

(1)生成密匙对
默认电脑上已经安装了git,没有就先去安装(现在基本都用git了吧)
打开CMD或者git-bash输入以下命令(邮箱改成自己的)
ssh-keygen -t rsa -b 4096 -C "xxx@newserver"

当提示保存路径时(为了不覆盖旧的),输入新的文件名:

Enter file in which to save the key (/c/Users/<用户名>/.ssh/id_rsa): id_rsa_newserver

生成后你会得到:

C:\Users<用户名>.ssh\id_rsa_newserver
C:\Users<用户名>.ssh\id_rsa_newserver.pub

然后敲回车直到完成

(2)将公钥上传到服务器
将id_rsa.pub重命名为authorized_keys
然后上传到/root/.ssh目录下(没有则新建.ssh目录)

在powershell中,输入:
type $env:USERPROFILE.ssh\id_rsa.pub | ssh -p 2025 lxq@219.xxx.xxx.xxx “mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys”

(3)配置vscode远程ssh文件
为了修改vscode的ssh的config文件,需在C:\Users\lenovo\.ssh\config中添加行:

Host 219.xx.xx.xxx
  HostName 219.xx.xx.xxx
  User lxq
  PreferredAuthentications publickey
  IdentityFile "C:\Users\lenovo\.ssh\id_rsa_newserver"

成功!

【ref】VSCode Remote SSH 保存密码 自动登录

报错

vscode版本太高

vscode不能高于1.85版本

Version: 1.85.2
Commit: 8b3775030ed1a69b13e4f4c628c612102e30a681
Date: 2024-01-18T06:40:10.514Z
Electron: 25.9.7
ElectronBuildId: 26354273
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Windows_NT x64 10.0.26100

Failed to connect to the remote extension host server (Error: Time limit reached)

Could not fetch remote environment
Failed to connect to the remote extension host server (Error: Time limit reached)

无法获取远程环境信息
无法连接到远程扩展主机服务器(错误:超时)

在这里插入图片描述

解决方法:

rm -rf ~/.vscode-server/

注意,不要删到根目录了:

在运行命令时有一些空格,导致了 `rm -rf ~ / .vscode-server/` 这种误操作。正确的命令应该是:

rm -rf ~/.vscode-server/

这样就会删除当前用户目录下的 `.vscode-server` 文件夹。

另外,如果你想强制删除其他目录(如 `/home/xqlin`),需要保证你有足够的权限,且非常小心使用 `--no-preserve-root` 参数,因为这会删除根目录下的所有文件,是非常危险的操作。

【ref】Fail connecting to remote server with time limit reach error using Remote - SSH

MobaXterm

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值