SSH连接管理

概述

SSH连接是MindStudio与远程服务器建立远程登录会话的功能。SSH连接安全性高并且可以进行数据传输,便于MindStudio某些计算量较大的功能可以通过SSH连接来共享远端服务器的计算资源。

使用约束

为了安全起见,建议对SSH连接到的服务器进行以下加固操作:

SSH配置入口

两种进入SSH配置界面方式如下所示,SSH配置界面如图1所示,界面参数解释如表1所示。

图1 SSH配置

SSH连接配置界面左侧展示SSH连接配置项别名,如果没有别名,显示格式为<username>@<host>:<port>,右键单击可修改别名。单击选中别名,可以在右侧详细面板中查看参数配置。

表1 参数及图标说明

参数及图标

说明

Lock the current connection

选项置灰,用户不可操作。如果SSH连接被添加到集群管理中,则该选项会自动勾选,SSH连接被锁定,不可修改和删除。

Host

连接目标地址(IP或域名)。

IP支持IPv4和IPv6。

说明:

不支持以fe80开头的IPv6地址,fe80开头的IPv6地址是link-local地址,只能在子网使用,且通过该地址登录设备需要输入IP对应的网口名,不符合MindStudio中SSH连接界面的输入格式。

Port

连接目标地址的端口号,默认值:22。

User name

登录目标地址的用户名。

Authentication type

身份验证方式。有两种方式可选:

  • Password:通过密码验证身份。
  • Key pair:通过密钥验证身份,SSH密钥申请方式请参见申请密钥对

Password

Authentication type选择验证方式为Password时显示,需要填写对应用户名的密码,勾选Save password复选框可以保存密码。

说明:

如果没勾选Save password。那么密码自动会在24小时后清除,届时再次使用到SSH会弹出密码输入框,需要再次输入密码方能执行SSH任务。

Private key file

Authentication type选择验证方式为Key pair时显示,选择本地私钥文件。

Passphrase

Authentication type选择验证方式为Key pair时显示,需要填写对应密语。勾选Save password复选框可以保存密语。

Test Connection

单击该按钮测试连接是否成功。

新增SSH连接配置。

删除SSH连接配置,选中需要删除的SSH连接配置,单击该按钮删除。

申请密钥对

密钥对可以在本地服务器申请也可以在目标服务器申请,这里以本地服务器申请为例进行描述。

  1. 登录本地服务器,使用如下命令申请密钥对。

    ssh-keygen -m PEM

    或者

    ssh-keygen -t rsa -m PEM

  2. 设置密钥对存放路径,如图2 配置密钥对存放路径所示。

    图2 配置密钥对存放路径

    可以不设置存放路径,直接按回车键,则密钥对会存放在默认路径($home/.ssh/)。

  3. 设置及确认密语,如图3 设置密语所示。

    图3 设置密语

    建议passphrase不为空且密语长度至少为5个字符。

    设置完成后,按回车键,在默认路径($home/.ssh/)中生成私钥文件(id_rsa)和公钥文件(id_rsa.pub)。

  4. 使用以下命令将公钥复制至目标服务器,用于免用户密码校验登录。

    ssh-copy-id -i ~/.ssh/id_rsa.pub -p 22 目标服务器用户名@目标服务器IP地址

    公钥复制在目标服务器的$home/.ssh/authorized_keys文件中。

新增SSH连接

  1. 参见SSH配置入口进入SSH连接配置界面。
  2. 单击界面左侧导航栏上方按钮。
  3. 根据表1配置参数后,单击“OK”“Apply”

删除SSH连接

  1. 参见SSH配置入口进入SSH连接配置界面。
  2. 选择要删除的SSH连接配置项,单击界面左侧导航栏上方按钮。
  3. 单击“OK”“Apply”

保存SSH密码

  1. 参见SSH配置入口进入SSH连接配置界面。
  2. 进入密码保存方式界面有如下方式:

    • 在左边的导航栏选择Appearance & Behavior > System Settings > Passwords
    • 在搜索栏中输入“Passwords”。
      图4 密码保存方式界面

  3. 选择密码保存方式。

    • In KeePass
    • Do not save,forget passwords after restart

      两种密码保存方式的详细说明请参见《IntelliJ IDEA使用说明》中的“Passwords”章节。

  4. 单击“OK”“Apply”

开启SSH Remote Terminal窗口

通过开启SSH Remote Terminal窗口功能,可以在MindStudio IDE界面上对SSH连接环境进行命令行操作。

已有配置好的SSH连接,详细操作请参见新增SSH连接

  1. 在菜单栏选择Tools > Start Ascend SSH session...

    弹出“Select Host to Connect”弹窗。

  2. 单击需要开启Remote Terminal窗口的SSH连接。

    在MindStudio IDE界面下方显示远端窗口信息,可直接进行命令行操作。

    图5 Remote Terminal

    为防止SSH长时间保持会话可能存在的安全风险,建议用户在服务端设置SSH会话超时时间。