堡垒机是运维操作可追溯的刚需,Jumpserver作为开源方案通过人、资产、授权、审计四环节闭环实现。部署需分四阶段:明确审计目标、确认系统兼容性、规范资产纳管、完成权限/审计/应急三重验证。

想让团队运维从“谁干的谁负责”变成“所有操作可追溯”,堡垒机不是选配,而是刚需。Jumpserver 是目前小团队落地最可行的开源方案——它不靠商业许可堆功能,而是把人、资产、授权、审计这四件事串成闭环。下面按真实上线节奏,分四个关键阶段讲清楚怎么做。
一、先搞懂堡垒机到底要解决什么问题
别急着装软件。很多团队部署失败,是因为把堡垒机当成了“高级跳板机”。其实核心区别就三点:
- 跳板机只管“连得上”,堡垒机必须确保“谁在什么时候、用什么账号、对哪台机器、执行了什么命令”全程留痕
- 跳板机通常共用一个系统账号,堡垒机强制每人独立账号+多因子认证+会话录屏
- 跳板机权限靠人工约定,堡垒机权限是策略驱动:比如“张三只能用普通用户登录测试库,不能 sudo”
如果你的团队还存在这些情况:离职同事的密钥没清理干净、误删操作查不到责任人、不同人用不同方式连服务器——那就不是技术问题,而是流程缺了这一层强制审计入口。
二、Jumpserver 部署前必须确认的硬条件
不是配置越高越好,而是每项都得卡准底线。尤其小团队容易忽略兼容性细节:
- 操作系统必须是 CentOS 8 / Ubuntu 22.04 或更新版本(CentOS 7 已停更,公网暴露等于裸奔)
- 内存不能低于 4GB,否则 Redis 和 Django 启动后,Web 服务会频繁 OOM
- 数据库必须用 PostgreSQL 或 MariaDB 10.5+,MySQL 5.7 虽能跑但部分审计字段会丢数据
- 8080(Web 端口)和 8070(SSH 代理端口)必须空闲,且防火墙放行;若用云服务器,安全组也要同步开
验证方法很简单:运行 free -h 看内存,psql --version 或 mysql --version 确认数据库版本,ss -tuln | grep -E '8070|8080' 检查端口占用。
三、资产纳管不是加几台 IP 就完事
很多团队装完 Jumpserver,第一件事就是往资产列表里填 IP,结果发现 Linux 连不上、Windows 报错“RDP 认证失败”、路由器根本识别不了。根本原因在于没统一登录凭证体系:
- Linux 服务器必须关闭密码登录,只允许 Jumpserver 的公钥登录;该公钥需提前写入目标机 /root/.ssh/authorized_keys(或对应用户的家目录)
- Windows 需开启远程桌面,并在 Jumpserver 中配置域账号或本地管理员账号;注意默认禁用空密码,密码强度必须符合系统策略
- 网络设备如华为/华三路由器,需启用 SSH 协议并配置专用运维账号(不能用 admin),同时关闭 Telnet
- 所有资产添加时,“管理用户”和“系统用户”要分开填:前者是 Jumpserver 登录目标机的身份,后者是目标机上实际执行命令的账号(比如 deploy 用户)
建议第一批只纳管 2–3 台测试机,验证完登录、命令执行、录屏回放三个环节再批量导入。
四、上线前必须做的三道自检关
部署完成不等于可用。真正上线前,务必模拟真实场景走一遍闭环:
- 权限关:用普通运维账号登录 Web 界面,看是否只能看到被授权的机器;尝试连接未授权资产,应明确提示“无访问权限”
- 审计关:在会话中执行 ls /tmp && whoami,然后去 Jumpserver 的“审计”模块查记录,确认时间、IP、命令、执行结果全部匹配
- 应急关:临时禁用某位同事的账号,观察其是否立刻无法新建会话;再手动删掉某台资产的授权,确认其列表中不再出现
这三步做完,你才真正拥有一套能扛住日常运维、经得起事后复盘的堡垒机系统。不是所有工具都需要复杂配置,但每个关键节点都必须亲手验证一次。










