创建连接
点击侧栏的 + 打开新建连接对话框,填写以下内容:
- 名称:显示在连接列表中的标签。
- 主机 / 端口 / 用户名:连接目标,端口默认 22。
- 认证方式:密码或私钥;选择私钥时可浏览本地文件,并填写密钥口令。
- 启动目录:可选,连接成功后自动
cd到该目录。 - 分组:选择已有分组或新建分组,留空归入「未分组」。
- 备注:可选。
连接与工作区一起加密保存在 connections.json 中。应用以密码或 SSH 密钥认证打开 SSH 会话,
并申请一个尺寸随窗口变化的 xterm-256color PTY。
连接设置也被终端相关面板使用:Docker、Kubernetes 和 Git 会根据当前获得焦点的终端选择主机(详见第 7–9 章)。
SSH 会话
- 传输:在 Rust 侧用
russh实现;不需要外部ssh命令或 OpenSSH 二进制。 - 认证:密码或 SSH 密钥。
- 终端:xterm.js 渲染,
xterm-256colorPTY,窗口尺寸同步。 - 保活:可配置的间隔与重试次数。
- 重连:重连操作复用同一个标签实例;单调递增的
session_id可防止残留的后台任务污染新会话。
连接健康状态
每个标签显示一个状态点,由三个后端事件驱动:
connection-ok—— 已连接;状态点为绿色。connection-suspect—— 保活失败暗示存在问题;状态点变为黄色。connection-closed—— 会话已结束;状态点变为红色。
请使用重连操作复用该标签,而不是打开新标签。
Telnet、串口与本地会话
- Telnet:纯 TCP,内置 IAC 协商状态机(ECHO、SGA、TERMINAL-TYPE、NAWS)。 自动登录可选且默认关闭,因为该协议是明文传输。
- 串口(COM):端口枚举,带 USB 设备友好名称与 VID:PID,以及可配置的 波特率、数据位、停止位、校验位和流控。波特率自动检测会逐个尝试各速率,并按输出看起来像终端文本的程度对结果排序。
- 本地终端:本地 shell 可以作为顶层标签打开,也可以作为分栏与远程标签并排。
网络扫描
侧栏连接列表上方的扫描网络按钮打开扫描对话框,用于发现网段内开放的 SSH / Telnet 服务:
- 扫描目标:CIDR(
192.168.1.0/24)、单个 IP(10.0.0.5)或末段区间(192.168.1.10-192.168.1.20)。 - 端口:逗号分隔,如
22,2222。 - 分组:可选,把扫描结果归入该分组。
- 高级:超时(毫秒)与并发数。
结果表只列出开放端口,显示 IP、端口、识别出的服务(SSH / Telnet / 未知)、Banner 与延迟; 可以逐条添加,也可以一次性全部添加为连接。