跳到主要内容

导入导出

XTerminal 支持批量导入和导出连接配置,方便数据迁移、备份和团队共享。

导入连接

导入功能允许你从文本或 JSON 格式批量添加连接配置。SSH、RDP、Telnet、隧道和 VNC 都使用同一个导入入口,弹窗会根据当前协议显示对应示例。

打开导入窗口

  1. 切换到本地仓库(导入仅支持本地仓库)
  2. 点击工具栏的 导入 按钮
  3. 在弹出的对话框中输入或粘贴数据

导入对话框

JSON 模式适合从备份或脚本生成的数组导入;如果需要人工逐行维护,也可以切换到文本模式:

导入文本模式

两种模式都应先检查地址、端口、用户名和备注,再点击确认导入。截图使用保留地址和无密码的演示数据,不会连接到真实主机。

导入模式

导入窗口顶部可以切换两种模式:

模式说明
文本每行一条记录,支持竖线分隔或键值对格式
JSON标准 JSON 数组格式,适合程序生成的数据

文本格式

文本模式每行表示一条连接,支持两种语法。不同协议的字段略有差异,下面先以 SSH 为例。

竖线分隔格式

host[:port] | user | pass | title | note

示例:

192.168.1.10 | root | 123456 | Dev Server | 开发机
user@10.0.0.3:2222 | | | 测试机 | 临时
  • 各字段用竖线 | 分隔
  • 字段可以为空(保留空格)
  • 端口可以写在地址后面用冒号分隔

键值对格式

host=值 user=值 port=值 auth=值 title=值 ...

示例:

host=10.0.0.5 user=root auth=privateKey privateKey="/Users/me/.ssh/id_rsa" title=KeyLogin

支持的键:

键名说明示例
host主机地址192.168.1.10
port端口号22
user / username用户名root
pass / password密码123456
title连接名称MyServer
note备注生产服务器
auth认证方式password / privateKey
privateKey私钥路径/Users/me/.ssh/id_rsa
identityId凭证 IDxxx

注释

#// 开头的行会被忽略:

# 这是注释
// 这也是注释
192.168.1.10 | root | 123456 | Server1

其他协议文本示例

RDP:

10.0.0.8 | Administrator | P@ssw0rd! | Windows Server | 运维桌面
address=10.0.0.9 port=3390 username=admin password=xxx title="RDP Target" fullscreen=1 colors=32

Telnet:

192.168.1.33:23 | admin | telnet123 | 交换机 | 核心
host=10.1.1.1 port=23 user=guest password=guest title="路由器"

VNC:

192.168.1.88:5901 | viewer | vnc123 | VNC 桌面 | 测试桌面
host=10.0.0.8 port=5900 user=ops password=secret title="VNC Server" viewOnly=true scaleViewport=false shared=true

隧道:

in | server=192.168.1.10:22 | local=127.0.0.1:3306 | remote=db.internal:3306 | DB 隧道 | 开发
dynamic | server=server-uuid-1 | local=127.0.0.1:1080 | | SOCKS5 | 出口代理

JSON 格式

JSON 模式接受标准的 JSON 数组,或包含 itemslistdataconnections 字段的对象。下面是 SSH 示例:

[
{
"host": "192.168.1.10",
"title": "Dev Server",
"username": "root",
"port": 22,
"note": "开发环境"
},
{
"host": "192.168.1.20",
"title": "Prod Server",
"username": "ubuntu",
"port": 2222
}
]

SSH JSON 字段说明

字段名类型必填说明示例值
hoststring服务器地址(IP 或域名)"192.168.1.10"
portnumberSSH 端口,默认 2222
username / userstring登录用户名"root"
password / passstring登录密码(明文)"123456"
titlestring连接显示名称"生产服务器"
notestring备注信息"数据库主节点"
authstring认证方式"password" / "privateKey"
privateKeystring私钥文件路径"/Users/me/.ssh/id_rsa"
passphrasestring私钥密码"keypass"
identityIdstring凭证 ID(已保存的凭证)"abc123"
timeoutnumber连接超时(毫秒)30000
keepaliveIntervalnumber心跳间隔(毫秒)5000
defaultPathstring默认工作目录"/var/www"
initScriptstring初始化脚本"source ~/.profile"

认证方式(auth)取值

说明
password密码认证(默认)
privateKey私钥认证,需配合 privateKey 字段
identity使用已保存的凭证,需配合 identityId 字段
keyboard交互式认证(2FA)
askEveryTime每次连接时询问

完整示例

[
{
"host": "192.168.1.10",
"port": 22,
"username": "root",
"password": "123456",
"title": "开发服务器",
"note": "前端项目",
"auth": "password",
"defaultPath": "/var/www/frontend",
"timeout": 30000
},
{
"host": "10.0.0.50",
"port": 2222,
"username": "deploy",
"title": "生产服务器",
"auth": "privateKey",
"privateKey": "/Users/me/.ssh/prod_key",
"passphrase": "keypassword",
"initScript": "cd /app && source .env"
},
{
"host": "db.example.com",
"username": "admin",
"title": "数据库服务器",
"auth": "keyboard",
"note": "需要 Google Authenticator"
}
]
安全提示

JSON 中的密码和私钥密码为明文存储,请注意:

  • 不要将包含敏感信息的 JSON 文件上传到公开代码仓库
  • 传输时使用加密渠道
  • 导入完成后删除源文件

目标分组

导入窗口会显示当前分组。导入的连接会添加到当前选中的分组中:

  • 如果选中 全部,连接会添加为未分组状态
  • 如果选中特定分组,连接会添加到该分组

执行导入

  1. 输入或粘贴数据
  2. 确认目标分组
  3. 点击 确认导入 按钮
  4. 系统会解析数据并显示导入结果

导入完成后会提示成功导入的条数。如果部分数据解析失败,会显示跳过的条数。

导出连接

导出功能将选中的连接配置复制到剪贴板。

导出步骤

  1. 在连接列表中勾选要导出的连接
  2. 点击工具栏的 复制到剪贴板 按钮
  3. 连接配置会复制到系统剪贴板
  4. 粘贴到文本编辑器保存为文件

选择连接后的批量操作栏

选中连接后,批量操作栏还会显示复制删除上云并发入口。导出前请确认选中的数量和连接范围;本图只展示操作栏,没有执行复制动作。

导出内容

导出内容为文本格式,每行一条记录,使用 key=value 形式保存连接配置。不同协议会导出不同字段:SSH 会保存认证类型、密码(密码认证时)、身份凭证 ID、分组 ID 和跳板链路;RDP、VNC 和 Telnet 可能包含密码以及协议显示设置。

SSH 导出不会把已保存的私钥正文写入导出内容,但身份凭证 ID 仍然属于敏感配置引用。导出后的文件或剪贴板内容应按凭据处理。

导出示例

host=192.168.1.10 port=22 user=root authType=password password="<PASSWORD>" title="Dev Server" note="开发环境"

批量操作

复制副本

在当前仓库中创建选中连接的副本:

  1. 勾选要复制的连接
  2. 点击 复制副本 按钮
  3. 副本会添加到同一分组,名称后缀 "- 副本"

复制到云端

将本地仓库的连接复制到云端仓库:

  1. 确保当前在本地仓库
  2. 勾选要复制的连接
  3. 点击 复制到云端 按钮
  4. 系统会在云端创建相同的分组结构并复制连接

注意:需要先登录 XTerminal 账号才能使用此功能。云端复制仍受账号和订阅权限限制。

注意事项

仅本地仓库支持导入

导入功能仅在本地仓库模式下可用。如果你使用云端仓库,需要:

  1. 先切换到本地仓库
  2. 完成导入
  3. 使用 复制到云端 功能同步数据

数据安全

  • 导出到剪贴板的内容可能包含密码;复制后不要粘贴到公共聊天、工单或日志。
  • 导出内容不会包含 SSH 私钥正文,但可能包含密码、身份凭证 ID、代理链路 ID 或其他连接配置。
  • SSH 列表中的“复制地址和密码”操作会明确复制当前认证所需的密码、私钥路径或私钥密码,使用后应立即清理剪贴板。
  • 导入含有明文凭据的文本后,及时删除源文件,并通过安全渠道传输。
  • 需要在不同设备迁移时,优先使用受保护的备份流程,而不是把导出文本提交到代码仓库。

兼容性

导入功能支持从其他终端或远程连接工具迁移:

  • 数据格式相对通用
  • 基本字段(主机、端口、用户名)兼容大多数工具
  • 认证信息需要手动配置

下一步