Skip to content

SSH 与终端工作区

Navop 将远程 SSH 和本地 Terminal 放入统一终端工作区,支持多标签、分屏、广播输入、历史、快捷命令、自定义高亮和 Shell integration。终端命令会直接作用于本机或服务器,必须持续确认当前会话身份与主机。

SSH 与终端工作区

创建 SSH 与本地终端

SSH 连接可使用密码、私钥文件、私钥内容、SSH Agent 或默认 ~/.ssh 配置;服务器启用交互认证时可能出现 MFA 提示。可配置代理、连接超时和主机信息。首次连接先核对主机指纹,认证失败时分别检查用户名、密钥权限、Agent、MFA 和服务器策略。

SSH 连接的高级设置中提供「允许旧版 SSH 算法」兼容选项(默认关闭),仅当服务器只支持 DSA 主机密钥、SHA-1 密钥交换/MAC 或 1024 位 DH 组协商等旧算法时才按连接启用;Windows 上还可使用 Pageant 认证。启用兼容选项会降低加密强度,不要对可升级的服务器长期开启。

本地 Terminal profile 可选择系统默认 Shell、PowerShell、CMD、WSL、Git Bash 或自定义程序;打开终端时可以直接选择当前会话使用的 Profile,列表会按本机平台隐藏不可用选项。自定义程序及参数应使用可信可执行文件,不要把密码直接放在命令参数中。系统请求本地网络权限时,仅按实际 SSH 目标范围授权。

终端 AI 侧边栏同时支持 SSH 与本地终端,并把当前终端作为默认资源上下文。生成命令前仍要核对当前 Shell、操作系统、主机和目录;本地 PowerShell、自定义程序与远程 Linux Shell 的语法不能互换。

Agent Hub:编码、资源与 Git 协作

Agent Hub 将终端 Agent、项目文件树、Git 分支、变更列表与并排 Diff 汇聚到同一个工作区,让编码、资源浏览和版本管理自然衔接,同时保留 Navop 的本地终端、SSH 会话和连接上下文。

Agent Hub 工作区

  • 工作区资源管理器支持手动选择目录或跟随终端路径,并可按需显示隐藏文件与 Git 忽略文件。
  • 可以在工作区内搜索、新建、拉取、推送并切换本地或远程分支。
  • Agent 完成修改后,可快速定位变更文件,对照 HEAD 与工作区差异,确认后再提交。

切换分支前先保存或暂存修改,并确认目标分支和跟踪关系。移动、删除或批量操作前,先确认资源管理器对应的是本机目录还是远端会话。Agent 或脚本完成修改后,仍应阅读 diff、运行格式化与测试并确认结果。

X11 转发:启用前的三个要素

SSH 连接可启用 X11 转发,将远端 X11 图形应用显示到本机 X server。启用需要同时满足三个要素,缺一不可:

  1. 服务器开启 X11:远端 SSH 服务必须允许 X11 Forwarding,并具备 xauth(MIT-MAGIC-COOKIE-1)支持;修改 sshd_config 后需重启 sshd
  2. 客户端安装 X11 服务:本机必须有正在运行的 X server —— Windows 安装 XMing,macOS 安装 XQuartz。
  3. 会话详情勾选 X11:在 SSH 连接的「连接设置」中勾选「X11 转发」,该选项对新打开的终端会话生效。

Navop 会自动探测本机 X server:Windows 探测 127.0.0.1:6000,macOS 通过 DISPLAY、launchctl 与 Xauthority 识别。若 macOS 未检测到 XQuartz,勾选或测试连接会提示先安装并启动 XQuartz;本机 X11 环境不可用时,Navop 会停用转发,但不会阻断普通 SSH 终端。

v0.9.3 改进了 Intel Mac 对旧版 XQuartz 环境、套接字和认证信息的检测。若启用后仍无法显示,先确认 XQuartz 正在运行,重新建立 SSH 连接,再检查远端 sshd 配置和当前账号权限。

标签、分屏与布局

终端可向 Left、Right、Top 或 Bottom 分屏,标签可以拖入其他面板,并可调整面板大小。分屏适合同时观察日志、运行命令和对照环境。关闭面板前检查其中是否有前台任务、编辑器或未结束的远程进程。

连接断开后根据提示重连,但不要假设远端命令状态保持不变。长任务应使用服务器侧的会话管理工具,并在重连后核对进程和输出。

会话锁定与状态

标签页可用密码锁定当前会话(密码仅保存在内存中),并支持「锁定全部会话」与「隐藏输出」;锁定中的终端会拒绝键盘输入,且无法通过关闭按钮直接关闭。标签页上的 SecureCRT 风格状态徽章会显示已连接、断开、已连接并锁定等状态,并带悬浮提示。

锁定是本地会话保护,不能替代远端账号权限。长时间离开时再决定是否隐藏输出,并遵循组织安全策略。

广播输入与粘贴安全

广播输入只面向选中的、已经打开的 SSH 终端。启用前逐一检查主机、用户和当前目录,先发送 pwd 或只读命令验证范围,再执行批量操作。广播中的一个错误会同时扩散到多个服务器。

非 bracketed paste 模式下粘贴多行内容会要求确认,高危命令也会触发警告。右键或中键粘贴、选中自动复制等行为可在设置中调整。任何包含换行、管道、重定向或删除命令的剪贴板内容都应先在文本编辑器中审阅。

历史、快捷命令与高亮

命令历史按最近、最常使用和收藏组织。快捷命令可设置名称、说明、命令、分组、颜色和置顶,并可搜索、复制或粘贴到终端;快捷命令编辑器提供「点击执行」选项,点击命令即可自动回车执行,建议弹窗的独立开关可在终端设置中调整。删除分组不会删除其中命令,但重命名或整理后仍应检查引用关系。

自定义正则高亮可突出错误、地址或关键字,也可使用预设。正则过宽可能影响性能或制造误报;高亮只是视觉辅助,不代表命令成功或日志已被完整解析。

Shell integration、图片与服务器状态

启用 Shell integration 后,SSH 当前目录可以同步到文件管理器,便于终端与 SFTP 协同。运行时 Shell integration 无需写入远端即可实时感知提示符、命令开始/结束与当前目录,为自动化执行和脚本提示提供基础;集成依赖远端 Shell 支持,目录不同步时检查初始化脚本与兼容性,不要手工伪造路径状态。

终端将连接状态与认证提示内联显示,不再以弹窗打断操作。上传图片前确认目标目录、权限和文件名,敏感截图不要发送到共享服务器。服务器监控的安装与隐私边界见“远程访问与监控”章节。

Telnet 连接

Navop 也支持 Telnet 连接,可配置自动登录脚本和手动凭据覆盖,并为老设备自定义退格键编码。Telnet 默认明文传输口令,生产环境优先使用 SSH。

认证方式选择

方式适用场景注意事项
密码临时测试或服务器只开放密码不要把密码写入命令参数或截图
私钥文件常规生产 SSH检查本地文件权限和 passphrase
私钥内容私钥由安全存储或临时流程提供不要复制到公开 Notes 或仓库
SSH Agent密钥由系统 Agent 管理先确认 Agent 中有正确身份
MFA/交互认证服务器需要二次验证按提示完成,不要重复提交旧会话

首次连接时先确认主机指纹、用户名和目标环境。能登录不代表已经进入正确服务器,登录后先执行:

bash
hostname
whoami
pwd

终端分屏和广播的安全顺序

  1. 创建两个或更多会话后,给每个会话使用明显的名称。
  2. 分屏后分别执行 hostnamepwd,确认顺序没有混淆。
  3. 开启广播前只选择同一环境、同一权限级别的会话。
  4. 先广播只读命令,再执行需要修改文件或服务的命令。
  5. 完成后关闭广播,避免下一条普通输入继续发送到多个会话。

广播输入不理解命令含义,也不会替你判断目标是否为生产环境。任何包含删除、重启、覆盖、管道或重定向的命令都应逐台执行或先在测试环境验证。

断线后的确认

连接断开后不要直接点击重试并假设远端任务状态不变。重新连接后先检查进程、文件时间和服务状态,再决定是否继续执行。长任务应使用服务器侧的 tmuxscreen 或其他会话管理工具。

Navop · AI 时代的开发和运维工作台