堡垒机核心是实现运维行为的可授权、可控制、可回溯;接入前须完成资产清单梳理、网络连通性验证、认证方式统一规划三步准备。

堡垒机不是跳板机,它不只解决“能不能连”,更解决“谁在什么时间、用什么方式、对哪台设备、做了什么操作”的全链路管控问题。接入堡垒机的核心目标是让每一次运维行为可授权、可控制、可回溯。
堡垒机接入前的三件关键准备
没做这三步就上手配置,后续容易反复返工甚至权限失效:
- 资产清单梳理清楚:列出所有待纳管服务器(含IP、操作系统、SSH/RDP端口、管理员账号)、网络设备(如交换机、防火墙)、数据库(MySQL/Oracle等)及对应访问协议。特别注意是否有Windows图形界面需求,这决定是否启用Guacamole组件。
- 网络连通性验证到位:确保堡垒机服务器能直连所有目标资产(ping + telnet端口),同时目标资产的防火墙策略需放行堡垒机IP——不是开放全网,而是精准白名单。常见错误是只开了SSH端口,却忘了数据库的3306或Oracle的1521端口。
- 认证方式统一规划:密码登录易管理但安全性弱;推荐优先使用SSH密钥(Linux)或域账号+证书(Windows)。若对接LDAP/AD,需提前确认组织结构、用户DN路径、绑定账号权限,避免部署后无法同步用户。
JumpServer接入Linux服务器的实操要点
以JumpServer v4.10.x为例,接入不是简单填个IP,关键在协议代理与身份映射:
- 资产添加时选对协议和端口:Linux服务器选“SSH”,端口默认22;若目标服务器改过SSH端口(比如加固后设为8899),此处必须同步填写,否则Koko组件连接失败。
-
系统用户要“先建再绑”:不能直接用root或普通账号密码填在资产页面。正确流程是:在JumpServer后台【系统用户】中新建一个“系统用户”(如sys_linux_admin),上传其公钥(
id_rsa.pub),再把这个系统用户绑定到对应资产上。这样所有通过堡垒机登录该服务器的操作,都以这个系统用户身份执行,且全程免密。 - Web终端与SSH客户端行为一致:用户在Luna前端点击“Web终端”连接,背后走的是Koko代理;用XShell配置“SSH隧道”连堡垒机后再跳转,走的也是同一套Koko逻辑。两者审计日志格式、录像回放功能完全一致,只是入口不同。
通过堡垒机安全连接数据库的两种可靠方式
数据库不对外开放端口,是基本安全原则。堡垒机提供了合规又便捷的访问路径:
-
SSH端口转发(推荐给开发/测试):在XShell中配置堡垒机连接后,进入“连接→隧道”,添加本地端口转发规则(如本地13306 → 目标库IP:3306)。连接成功后,本地程序直接连
localhost:13306即可访问远端MySQL,流量全程加密,且无需暴露数据库公网IP。 -
JumpServer内置数据库资产纳管(适合DBA):在JumpServer中添加类型为“MySQL”或“Oracle”的资产,填写数据库IP、端口、数据库名,并关联一个具有最小必要权限的数据库账号(如只读账号)。用户通过Web界面选择该资产,输入账号密码即可登录,所有SQL语句、执行结果、耗时均被完整记录,支持关键词过滤(如拦截
DROP TABLE)。
权限与审计落地的关键细节
很多团队装完堡垒机就以为万事大吉,结果审计查不出人、权限收不紧,问题往往出在以下环节:
- 用户组+资产授权=最小权限:不要给用户直接分配资产,而是创建用户组(如“devops-prod”),把生产服务器加入资产列表,再将该列表授权给用户组,并设置“只读”或“sudo”策略。一人一账号,禁止共享。
-
会话录像不是摆设,要能看懂:JumpServer默认录制字符流(.cast文件),可用
cast2gif转成动图,或直接用Luna前端播放。重点检查录像是否包含命令输入、输出、时间戳、用户ID——缺一不可。若发现录像空白,通常是Koko组件未正常运行或目标服务器~/.bash_history被清空导致。 -
高危命令拦截需主动配置:JumpServer不默认拦截
rm -rf /或shutdown。需进入【系统设置→命令过滤】,添加正则规则(如^rm\s+-rf),并设置拦截动作(告警/阻断/会话终止)。规则生效范围需指定对应用户组或资产,避免误伤运维脚本。










