SSH远程登录#

一、简介#

本手册将指导您如何通过 Visual Studio Code(VSCode)的 Remote SSH 功能,实现对远程服务器的安全连接与操作,并在本地环境对远程服务器上的自定义模型进行编码。VSCode Remote SSH 是一款强大的插件,能够让您在本地 VSCode 环境中直接访问远程服务器,提升开发效率与便捷性。

二、前提条件#

本地环境需提前安装以下内容。

  • 安装 Visual Studio Code(最新版本或支持 Remote SSH 插件的版本)。

  • 安装 SSH 服务(如 OpenSSH Server),并确保服务正常运行。

  • 已安装并配置好socat工具(如果需要使用代理连接方式)。在本地终端中,根据您的操作系统安装socat工具,不同的操作系统安装方式不同。

  1. Linux系统,安装命令

    sudo apt-get install socat
    
  2. MacOS系统,安装命令:

    brew install socat
    
  3. Windows系统:直接下载预编译的 Windows版本:socat-windows-master.zip。

    点击此处下载。

    1)下载成功后,将压缩包文件解压到一个合适的目录,例如 C:\socat

    2)将 socat 的安装目录(如 C:\socat)添加到系统的环境变量 PATH 中;

    3)打开命令提示符,输入 socat -V 检查是否安装成功。

三、安装 Remote SSH 插件#

  1. 打开 VSCode,点击左侧边栏的“扩展”图标(或按快捷键Ctrl+Shift+X)。

  2. 在扩展搜索框中输入“Remote - SSH”,找到由 Microsoft 提供的“Remote - SSH”插件。

  3. 点击插件右侧的“安装”按钮,等待安装完成。

  4. 安装成功之后,在左侧边栏可看到“Remote Explorer”图标。

../_images/remote_ssh.png

四、连接远程服务器#

(一)方式1:通过端口连接#

步骤1:在 VSCode 的左侧边栏,点击“Remote Explorer”图标。

步骤2:在弹出的ssh配置中,选择“New Remote”,在界面顶部的中间位置提示“Enter SSH Connection Command”。

../_images/new_remote.png

步骤3:点击Coovally系统模型集成页面,找到待访问的自定义模型(已安装)。复制SSH远程登录弹窗中的登录命令到步骤2的弹窗中,然后按回车键。登录命令示例:

ssh -p 32363 rUVIBRwz@172.18.18.207

步骤4:按回车键,系统提示是否更新ssh配置文件,选择本地环境安装的ssh配置文件路径(通常为第一个路径),将登录命令写入到ssh配置文件中。

../_images/new_remote_cfg.png

步骤5:写入成功后在左侧SSH列表中,即可看到刚刚写入到ssh配置文件中的登录命令。

../_images/new_remote_cfg_show1.png
Host 172.18.18.207
  HostName 172.18.18.207
  Port 32363
  User rUVIBRwz
  • Host字段是自定义的主机别名,方便后续连接时使用。

  • HostName是远程服务器的 IP 地址。

  • Port是远程服务器的 SSH 服务端口。

  • User是远程服务器的用户名。

步骤6:点击SSH列表中的主机别名,选择连接到远程服务器(在本窗口连接或新建创建进行连接),复制Coovally模型集成页面SSH远程登录弹窗中的密码,在VSCode窗口中输入密码,点击回车键。

../_images/enter_psw1.png

步骤7:连接成功后,VSCode 的状态栏左下角会显示当前连接的远程服务器信息。

../_images/remote_success1.png

(二)方式2:通过代理连接#

步骤1:在 VSCode 的左侧边栏,点击“Remote Explorer”图标。

步骤2:在弹出的ssh配置中,选择“New Remote”,在界面顶部的中间位置提示“Enter SSH Connection Command”。

../_images/new_remote.png

步骤3:点击Coovally系统模型集成页面,找到待访问的自定义模型(已安装)。复制SSH远程登录弹窗中的登录命令到步骤2的弹窗中,然后按回车键。登录命令示例:

ssh -o "proxycommand socat - PROXY:47.99.216.218:%h:%p,proxyport=7011" rjVVPpbr@custom_model_100_4162

步骤4:按回车键,系统提示是否更新ssh配置文件,选择本地环境安装的ssh配置文件路径(通常为第一个路径),将登录命令写入到ssh配置文件中。

../_images/new_remote_cfg.png

步骤5:写入成功后在左侧SSH列表中,即可看到刚刚写入到ssh配置文件中的登录命令。

../_images/new_remote_cfg_show2.png
Host custom_model_100_4162
  HostName custom_model_100_4162
  proxycommand socat - PROXY:47.99.216.218:%h:%p,proxyport=7011
  User rjVVPpbr
  • Host字段是自定义的主机别名,方便后续连接时使用。

  • HostName是远程服务器的主机名。

  • User是远程服务器的用户名。

  • ProxyCommand字段用于指定通过代理服务器连接的命令,其中47.99.216.218是代理服务器的 IP 地址,proxyport=7011是代理服务器的端口。

注意

登录命令写入到ssh配置文件中,会出现proxyport和7011之间丢失等号的现象,需要手动添加等号后,重新保存ssh配置文件

步骤6:点击SSH列表中的主机别名,选择连接到远程服务器(在本窗口连接或新建创建进行连接),复制Coovally模型集成页面SSH远程登录弹窗中的密码,在VSCode窗口中输入密码,点击回车键。

../_images/enter_psw2.png

步骤7:连接成功后,VSCode 的状态栏左下角会显示当前连接的远程服务器信息。

../_images/remote_success2.png

五、操作远程服务器#

(一)文件操作#

  1. 打开远程文件夹

    • 在 VSCode 的左上角,点击“文件”菜单,选择“打开文件夹…”。

    • 在弹出的文件浏览器中,选择远程服务器上的目标文件夹路径(复制SSH远程登录弹窗中的工作空间),然后点击“选择文件夹”。

    • 输入密码(复制SSH远程登录弹窗中的密码)后,您即可在 VSCode 中浏览和编辑远程文件夹中的文件。

  2. 新建或删除文件

    • 在 VSCode 的左侧资源管理器中,右键点击远程文件夹或文件,选择“新建文件”或“新建文件夹”来创建新文件或文件夹。

    • 选择“删除”可删除文件或文件夹(需谨慎操作)。

(二)终端操作#

  1. 打开远程终端

    • 在 VSCode 的右上角,点击“终端”菜单,选择“新建终端”。

    • 系统会自动打开一个连接到远程服务器的终端窗口。

  2. 执行命令

    • 在远程终端中,您可以像在本地终端一样执行各种命令,如lscdmkdir等,对远程服务器进行操作。

(三)代码编辑#

  • 在 VSCode 中打开远程文件后,您可以直接使用 VSCode 的代码编辑功能进行代码编写和修改。

  • VSCode 会自动将代码同步到远程服务器上。

六、断开连接#

  1. 在 VSCode 的右下角状态栏中,点击当前连接的远程服务器信息。

  2. 在弹出的菜单中选择“Close Remote Connection”。

  3. 确认断开连接后,VSCode 会自动关闭与远程服务器的连接。

七、常见问题及解决方法#

(一)连接超时#

  • 原因:网络问题。

  • 解决方法:检查本地网络连接是否正常。可以尝试在本地终端中使用登录命令手动连接,查看是否能成功连接。登录命令示例:

ssh -p 32363 rUVIBRwz@172.18.18.207

(二)代理连接失败#

  • 原因socat工具未正确安装。

  • 解决方法

    1. 确保socat工具已正确安装,并且可以在本地终端中正常运行。

    2. 在本地终端中手动测试