装机
到 下载页 拿到 MaxTerm_x.y.z_aarch64.dmg(目前 Apple Silicon 专版,约 5 MB),双击挂载,把 MaxTerm 拖到「应用程序」文件夹。
未签名应用必看: 首次打开会弹「无法验证开发者」或「已损坏」。打开「终端」app 跑一行:
xattr -cr /Applications/MaxTerm.app移除 macOS 加的隔离标记。之后正常双击打开即可。从 0.9.2 起每次更新由 App 自动完成,不再需要这条命令。
首次启动
启动 MaxTerm,主窗口长这样:
- 左侧:搜索框 + 5 个动作按钮(快速连接 / 本地终端 / 新增主机 / 导入 ssh config / 设置)+ 书签列表
- 右上:标签栏 + 工具按钮(主题 / 平铺 / 装机 / 历史 / 批量 / 片段 / 触发 / 广播)
- 中央:没开会话时是欢迎页(显示 4 个快捷功能 + 最近连接)
首次启动会自动注入 120+ 条预设命令片段(覆盖 Docker / k8s / Nginx / 数据库 / 安全 / 网络诊断等 17 个分组)。
加第一台主机
- 点左侧「+ 新增主机」
- 填基本信息:
- 名称:好记的标签,如「生产-Web01」
- 主机地址:IP 或域名
- 端口:默认 22
- 用户:登录用户名
- 分组:可输入新分组名或下拉选已有的(留空默认「默认」组)
- 认证方式:三选一
- 密钥文件:推荐。填
~/.ssh/id_ed25519等私钥路径 - SSH 代理:走系统 ssh-agent
- 密码:每次连接弹密码框输入,不落盘
- 密钥文件:推荐。填
- (可选)填跳板机、端口转发、标签颜色、自动会话日志
- 点「保存」→ 书签出现在左侧
- 点书签 → 弹密码框(如果是密码认证)→ 连上,首次出现 known_hosts 指纹确认弹窗,点「确定」信任并写入
已经有 ssh config? 点左侧「⬇ 导入 ssh config」,自动解析 ~/.ssh/config 里的所有 Host 段,批量生成书签。
推送公钥(免密登录)
密码认证连上后,推荐立刻部署公钥换成免密:
- 把鼠标移到书签上 → 点 ✎ 编辑
- 弹窗底部点「推送公钥」
- 填本地公钥路径(默认
~/.ssh/id_ed25519.pub)→ 输服务器密码 → 等几秒 - 提示「公钥已部署。是否把此书签的认证改为密钥?」→ 点确定
- 以后这台主机直接免密登录
书签管理
- 搜索:sidebar 顶部输入框,实时按名称/host/user/分组过滤
- 分组:点分组头(▾)折叠/展开,数字显示当前分组主机数
- 编辑:鼠标移到书签上 → 点 ✎
- 删除:编辑弹窗左下「删除」按钮(红色)
- 颜色标签:编辑时选 8 个预设(默认/橙/红/黄/绿/蓝/紫/灰)。sidebar 圆点和 tab 底边用这个色显示,生产/测试一眼区分
- 快速连接:左侧「⚡ 快速连接」用
user@host[:port]一次性连,不存书签 - 最近连接:欢迎页底部展示最近 6 台,点一下直连
终端使用
每个 SSH 会话是一个标签。标签上的按钮:
- ↻ 用同样配置重连(网络抖了一下时用)
- ✕ 关闭并断开
- 拖动标签可重排顺序
终端内交互:
- 选中文本自动复制到剪贴板(macOS 风格)
- 右键弹菜单(复制 / 粘贴 / 全选 / 清屏)
- ⌘F 终端内搜索关键字(右上角弹搜索条)
- ⌘+ / ⌘- / ⌘0 字号 +/- /重置(全局对所有终端生效)
SFTP 双栏传输
在会话内点工具栏「SFTP」标签切到双栏文件视图:
- 左栏「本地」:你电脑上的文件,默认家目录,⬆ 按钮上一级
- 右栏「远端」:服务器上的文件,路径自动解析为绝对路径(如
/home/winzheng)
互传:
- 点远端文件 → 弹「下载到左侧当前目录?」
- 点本地文件 → 弹「上传到右侧当前目录?」
- 拖拽:从系统 Finder 直接拖文件/目录到右栏 → 上传到当前远端目录(目录递归)
- 多选下载:勾选若干远端文件 → 顶部「⬇ 下载所选」
- 就地编辑远端文件:hover 文件名出现 ✎,点 → 用本地默认程序打开 → 改完保存,2 秒内自动回传(终端有提示)
多机操作
三种场景三种解法:
广播 — 同步打字到所有打开的会话
右上角 广播 按钮开关。开启后,在任一终端输入的字会同步发到所有其它打开的 SSH 标签。活动会话边框变橙色提示。
适合:多台机改 nginx 配置、同时跑相同命令交互式确认。
本地终端不参与广播。
批量执行 — 选机器跑一条命令
- 右上角点「批量」
- 勾选目标主机(按分组列出,「全选 / 清空」)
- 输入命令(支持占位符
${HOST}/${USER}/${PORT}自动替换) - 点「执行」→ 并行连接每台机 → 跑命令 → 结果汇总展示
- 结果页可「导出 Markdown / JSON 到剪贴板」
每台机的状态:✓ OK / 退出码 N / 连接失败。
平铺模式 — 同时看多个终端
右上角「平铺」开关。开启后,所有打开的会话以网格形式同时显示,而不是只看激活那一个。配合广播=同时盯多机执行结果。
命令片段
把常用命令存下来一键执行。右上角「片段」打开管理面板:
- 添加:名称 + 分组(可选下拉已有)+ 命令
- 占位符:命令里写
${HOST}/${USER}/${PORT}— 当前会话主机信息自动替换${1}/${2}... — 运行时弹窗输入
- 运行 vs 插入:
- 「运行」= 自动加回车,直接执行
- 「插入」= 只把命令粘到终端等你自己回车
- 导入预设:面板右上「📦 导入预设库」一键加 120+ 条(系统/资源/日志/服务/Docker/k8s/Nginx/数据库/网络/安全/用户/包/文件/进程/SSL/Git/备份/宝塔)
命令面板 — ⌘K 万能搜索
任何位置按 ⌘K(或 Ctrl+K)弹搜索框,自动模糊匹配:
- 🖥 主机 — 回车直接连
- 📋 片段 — 回车带占位符展开 + 自动执行
- ⏱ 历史命令 — 回车插入到当前会话(不自动跑,留给你确认)
↑↓ 选,Enter 执行,Esc 关。
触发器 — 输出关键字自动响应
右上角「触发」管理面板:
- 添加条目:名称 + 正则 + 动作
- 🔔 通知:右下角飘 toast 卡片(4 秒自动消失)
- ⌨ 命令:自动往当前会话发命令,支持
${0}(整体匹配)/${1}-${9}(捕获组)
- 可启用/禁用单条
- 顶部「📦 一键模板」chip,点一下自动填表
使用例子:
- 「监控错误」+
error|fail|拒绝+ 通知 — 任何会话出 error 字样就响 - 「Y 自动确认」+
\[y/N\]|\(y/n\)+ 命令y— 看到 (y/n) 提示自动发 y - 「磁盘告警」+
No space left+ 通知 — 磁盘满立刻知道
端口转发 / 跳板机 / SOCKS5
书签编辑里的「端口转发(本地隧道)」段落 + 「跳板机(可选)」字段。
本地转发
对应 ssh -L local_port:remote_host:remote_port host:
- 编辑书签 → 端口转发 → 点 +
- 选「本地转发」类型
- 填:本地端口
8888→ 远端主机127.0.0.1→ 远端端口22(在服务器视角) - 保存 → 连接 → 终端会显示「[隧道] 127.0.0.1:8888 → 127.0.0.1:22」
- 此时本地访问
localhost:8888等于在服务器内部访问127.0.0.1:22
常见场景:访问云服务器内网的数据库、Redis、宝塔安全入口等。
SOCKS5 动态转发
对应 ssh -D 1080 host,把整条 SSH 连接变成 SOCKS5 代理:
- 编辑书签 → 端口转发 → 添加一行
- 类型切到「SOCKS5 动态」
- 只填本地端口(如
1080),远端两栏置灰不用填 - 保存 → 连接
- 浏览器/工具配
socks5://127.0.0.1:1080即可走服务器出口
跳板机多跳
对应 ssh -J jump1,jump2 target。三台机示意:
笔记本 → [C 公网堡垒] → [B 内网跳板] → [A 数据库]
- 先建 C 的书签(普通直连,跳板栏空)
- 建 B 的书签,「跳板机(可选)」选 C
- 建 A 的书签,「跳板机(可选)」选 B
- 点 A 连接 → MaxTerm 会:笔记本→C→B→A 一路打通,每跳分别问密码(密钥/agent 自动跳过)
- 断开 A 时 C 和 B 的中间连接自动清理
一键装机
右上角「装机」打开应用清单(目前 6 个):
| 应用 | 说明 | 配置项 |
|---|---|---|
| Claude Code | Anthropic 官方 AI 编程终端 | API Key(可选) |
| OpenAI Codex | OpenAI 官方 AI 编程终端 | API Key(可选) |
| Node.js (fnm) | 通过 fnm 装 Node,无需 sudo | 版本号(默认 22) |
| Docker | 官方一键脚本 | 无 |
| btop | 比 htop 漂亮的资源监控 | 无 |
| Tailscale | 零配置 P2P VPN | 无,事后浏览器登录 |
- 点应用 → 右侧显示介绍 + 配置项 + 完整脚本预览
- 底部选目标主机 → 「开始安装」
- MaxTerm 会自动开 SSH 会话,把脚本通过 bash heredoc 喂进去
- 你看实时进度,装完终端不关,直接试
claude/codex等命令
本地终端
左侧「▷ 本地终端」开一个本地 shell 标签(默认走 $SHELL 环境变量,通常是 zsh)。用真 PTY,支持 vim/htop 等交互式应用,跟 macOS Terminal 等价。
本地终端不参与广播 / 批量。Cmd-F / 历史 / 片段都对它生效。
备份与还原
左侧「⚙ 设置 / 备份」:
- 💾 备份到文件(推荐) — 保存成
.json文件,包含书签 + 片段 + 触发器 + 引用到的所有 SSH key 文件(base64 编码)。换机器只要这个文件就能完整还原(key 文件自动写回原路径,权限 0600) - 📂 从备份文件还原 — 选文件 → 合并入当前配置;若含 key 会提示是否写回
- 📤 导出到剪贴板(不含 key)— 轻量分享给同事
- 📥 从剪贴板导入
⚠ 备份文件含完整 SSH key,等同你的 ~/.ssh 副本。务必妥善保管(加密盘/1Password/私人 iCloud 加密文件夹),不要 commit 到 git、不要群里乱发。
配置文件位置
| 用途 | 路径 |
|---|---|
| 书签 + 片段 + 触发器 | ~/Library/Application Support/maxterm/bookmarks.json |
| 已知主机 (known_hosts) | ~/.ssh/known_hosts(系统标准位置) |
| 会话日志(如启用) | ~/Library/Application Support/maxterm/logs/ |
| 命令历史 / 最近连接 / 主题 / 字号 | localStorage(浏览器存储,无单独文件) |
| 临时下载缓存(远端就地编辑) | ~/Library/Caches/maxterm/edits/ |
书签是纯 JSON,可手动编辑,也可丢 git/iCloud 同步(key 路径在里面,key 内容不在)。
自动更新
从 v0.9.2 起,启动时自动检查 https://maxta.com/maxterm/latest.json。有新版本时右下角弹卡片:
- 立即更新:下载 + 验证 Ed25519 签名 + 替换 + 重启
- 稍后:下次启动再问
- 查看说明:弹本版更新内容
整个过程不需要再装机仪式,跟 Chrome 自动更新一样。
v0.9.1 用户注意: 0.9.1 的检查端点是旧 URL,已下线。0.9.1 需要手动到 下载页 装一次 0.9.2 或更新版本,之后自动更新就生效了。
主题 / 字号
- 右上角「🎨 主题」5 套:Tokyo Night(默认深色)/ Dracula / Solarized Dark / Nord / 亮色。切换实时生效,记到 localStorage
- 字号 ⌘+ / ⌘- / ⌘0,8-32px 范围,全局对所有终端生效
- 滚屏行数 5000 行(写死,够大部分场景)
命令历史
在终端里每按一次回车,前面输入的命令自动入库(最多 500 条)。右上角「历史」管理面板:
- 实时搜索(模糊)
- 删单条 / 导出 TXT / 一键清空
- 显示这条是在哪台机执行过的
命令面板 ⌘K 里也能搜历史。
故障排查
「MaxTerm 已损坏,无法打开」
未签名应用 + 通过浏览器/微信下载被加了隔离标记。终端跑:
xattr -cr /Applications/MaxTerm.app
SSH 连接失败 os error 2
密钥文件路径不对或文件不存在。检查书签里「密钥路径」字段。常见路径:
~/.ssh/id_ed25519(推荐)~/.ssh/id_rsa
SSH 连接失败 认证失败
- 密钥认证:检查公钥是否已部署到服务器
~/.ssh/authorized_keys。可以用「推送公钥」功能一键部署 - 密码认证:确认服务器允许密码登录(
/etc/ssh/sshd_config里PasswordAuthentication yes)
首次连接弹「主机密钥变化」警告
如果你换过服务器但 IP 复用了,删除 ~/.ssh/known_hosts 里那行再重连即可。如果你没换过服务器收到这个警告,可能存在中间人攻击,谨慎连接。
跳板机连不通
- 先单独连跳板机本身,确认它能登录
- 在跳板机上
ssh user@target看能否到目标 - 检查目标机是否在跳板机的可访问网段
SFTP 显示「会话未连接」
SFTP 复用 SSH 会话,所以必须先在终端里成功连上主机,再切到 SFTP 标签。
自动更新失败
- 检查网络能否访问
https://maxta.com/maxterm/latest.json - v0.9.1 不能自动升级到 0.9.2+(端点变了),需手动重装一次
- 实在不行,到 下载页 手动下载新 dmg 装
快捷键速查
| 快捷键 | 功能 |
|---|---|
| ⌘K | 命令面板(搜主机 / 片段 / 历史) |
| ⌘F | 终端内搜索(右上角搜索条) |
| ⌘+ / ⌘= | 放大终端字号 |
| ⌘- | 缩小终端字号 |
| ⌘0 | 重置字号 (13px) |
| ⌘T | 新开本地终端 |
| ⌘W | 关闭当前标签 |
| ⌘1-⌘9 | 跳转到对应标签 |
| Esc | 关闭顶层弹窗 |
| 选中文本 | 自动复制到剪贴板 |
| 右键终端 | 复制 / 粘贴 / 全选 / 清屏菜单 |
| 拖动标签 | 重排顺序 |
联系 / 反馈
- 技术支持:regina@maxta.com
- 产品反馈、bug 报告、新功能建议:同邮箱
- 出品:Maxta, Inc. · 作者:Regina Luo
