架构选型对比表
人人直连 ssh mac-build-01 时延低,但白名单与 MFA 易失控,离职后密钥台账也难维护。Jump Host 统一入口再转发内网节点,价值是集中落策略,而非默认更安全。
| 维度 | Jump Host(堡垒) | 直连远程 Mac |
|---|---|---|
| 攻击面 | 单一加固入口;节点可保持内网地址、不直连公网 | 每台 Mac 暴露 22 端口(或自定义端口)到更广网络 |
| 策略执行 | 集中 MFA、PAM、白名单、会话策略与可选录制 | 每台主机重复配置,或完全依赖 VPN 边界 |
| 延迟与体验 | 多一跳;可用 ProxyJump、连接复用降低摩擦 |
路径干净时 RTT 最低 |
| 失陷爆炸半径 | 堡垒被攻破影响大,需东西向隔离与角色分段 | 单台失陷即该机构建环境暴露 |
| 更适合 | 多节点资源池、多人周更协作、需统一审计 | 单节点、仅 VPN 内访问,或书面备案的应急直连 |
账户与角色模型
Unix 账户对齐人与自动化主体,禁共用 builder。分权即不同 principal:交互开发、CI、只读排障、应急管理员。Jump 上用 forced command / Match User,避免自动化账号拿到全网 shell。
- 开发者:审批节点交互 shell;默认无 sudo。
- CI:非交互凭据 +
command=或受限PermitOpen。 - 运维:重启与日志;principal 与开发分离。
- 应急:离线、双人、短有效期;季度吊销演练。
节点进出池可参考 团队同步,坚持默认拒绝。
证书生成与分发步骤
SSH CA 签用户证书、短 TTL,主机信任用户 CA,可摆脱逐台维护 authorized_keys。示例:ssh-keygen -s CA_key -I id -n principal -V +30d。CA 私钥进 HSM/离线/保险库,勿放公网 Jump。
- 主机 CA 与用户 CA 分离;用户 CA 公钥 → 各 Mac
TrustedUserCAKeys;主机证书则客户端@cert-authority。 - sshd 仅允许既定 principal 或强制命令。
- 按机或流水线签发,
-V限有效期;窄角色可加force-command。 - 分发 走 IdP 或短时通道;禁邮件传长期密钥。
- 验证:生产路径
ssh -vv(含ProxyJump),再关密码登录。
未上 CA 时:ed25519 + 离职删钥 + Jump;多远程 Mac 应规划 CA。多节点凭据最小权限可作挂载参考。
轮换与吊销流程
轮换需重叠窗口,否则易全员断连:新证 → 双轨信任(如需)→ 金丝雀 → 吊销旧证。CA 场景用 KRL 或停签旧序列并下发 sshd。
| 角色 / 主体类型 | 建议有效期 | 轮换节奏 | 备注 |
|---|---|---|---|
| 交互开发者(用户证书) | 30~90 天 | 每月或每季 | 变更窗口内双证并存约 1 个工作日 |
| CI / 自动化主体 | 7~30 天 | 每发布火车或每周 | 与流水线 Secret 轮换联动;禁止与人共用 |
| Jump Host 主机证书(若采用) | 最长约 365 天 | 年度 staged 更新 | 短暂双证减少 TOFU 弹窗 |
| 长期静态用户公钥(遗留) | 不适用 | 强制 ≤90 天重配 | 视为技术债,规划迁 CA |
| 应急断路管理员 | 24 小时~7 天 | 按事件 + 每季演练 | 自动过期;全程留痕;事后立即吊销 |
离职:CA 吊销 principal + 推 KRL + 清静态 authorized_keys。CA 职责与 Secret 治理 负责人对齐。
审计与最小权限
FAQ
Q:何时 Jump Host 优于直连?
要单一审计入口、统一 MFA/堡垒策略,且节点不宜公网暴露 22 时优先 Jump;强 VPN 且备案例外时可直连。
Q:证书还是长期公钥?
共享池优先短 TTL 用户证书;静态密钥须台账 + 轮换并规划迁 CA。
Q:轮换周期?
见上表;保留重叠窗口,紧急吊销优先于固定周期。
Q:审计不泄露密钥?
只记元数据;慎录命令行;录屏优先堡垒侧。
在真实远程 Mac 上实践 Jump Host 与证书轮换
Meshmac 提供 Apple Silicon 远程 Mac、SSH 与 VNC 开箱接入,便于搭建堡垒拓扑、拆分 CI 与交互角色并演练证书轮换。无需登录即可查看方案与文档。