之前久闻 JumpServer 大名,也做过一个简单的了解(2022/04/05,Jumpserver 开源堡垒机),没想到竟然就要用上了。
之前是运维部署的一台普通 CentOS 做跳板机,主要是起到网络连接(VPN)、管理用户的作用。
公司为了按照极光总部的要求,做运维审计,用上了 JumpServer 堡垒机。
授权:允许指定登录账号,在指定时间,指定机器上,执行指定范围的行为
审计:就是对通过堡垒机的所有行为做详细记录。
废话不说了,先说说我作为被授权方的体验吧(没有管理方面的权限)。
功能
- 通过 VPN 账号 + MFA(身份验证器)登录。
- 对于普通使用者来讲,主要是 Web Terminal 中的 SSH 连接和应用中的 DB 连接。
- SSH 可以通过 Web 登录,也可以通过 JumpServer 客户端登录
PS:客户端其实就是唤起一个 PuTTY 窗口。 - DB 客户通过 Web 登录,或者提供一个连接信息(主机,端口,账号,密码),输入自己惯用的工具登录。
PS:Web 登录也就是一个简单的 MySQL Shell。
SSH 连接
ssh jumpserverUsername@jumpserverHostIp -p2222
然后会提示输入密码,和 OTP Code(二次认证,如果配置了的话)。
登录上去之后,SHELL 就是这么一个菜单:
admin, JumpServer 开源堡垒机
1) 输入 部分IP,主机名,备注 进行搜索登录(如果唯一).
2) 输入 / + IP,主机名,备注 进行搜索,如:/192.168.
3) 输入 p 进行显示您有权限的主机.
4) 输入 g 进行显示您有权限的节点.
5) 输入 d 进行显示您有权限的数据库.
6) 输入 k 进行显示您有权限的Kubernetes.
7) 输入 r 进行刷新最新的机器和节点信息.
8) 输入 s 进行中英日语言切换.
9) 输入 h 进行显示帮助.
10) 输入 q 进行退出.
Opt>
SSH 直连的方法
# 就是把目标主机的信息加在用户名里面
ssh jumpserverUsername@systemUsername@AssetIp@jumpserverHostIp -p2222
假设 JumpServer 的 IP 是 192.168.0.1,登录账号是 catroll
登录所有受控机器统一使用 stuff 账号
目标服务器的 IP 是 192.168.100.100
ssh catroll@stuff@192.168.100.100@192.168.0.1 -P2222
JumpServer 收到的用户名为 catroll@stuff@192.168.100.100
,然后用 catroll + 密码 通过了 JumpServer 的校验,再然后 JumpServer 再去免密连接 stuff@192.168.100.100
。
感受
可以预见到的:
- 可能会需要各种申请,以及可能的被审计工作(配合审计)。
- 管理制度上,估计后面就要逐步加强管控,对违规操作做出处罚。
- 各种中间件(MQ,DB,Redis)的连接今后可能都要管控起来(JumpServer 无关)。
感觉这东西会给我今后的工作会带来很多不便(非常不符合现有的工作习惯)。
- 从公司的角度上来讲,我觉得早就应该上堡垒机,为了信息安全!
- 理想情况下,对这么一个工具,应该需要投入精力去打磨,在审计合规的基本框架内尽最大努力去完善流程、提升体验。
- 但是从实践上来讲,受限于公司规模,上了之后,应该不会投入什么精力去弄这个东西,所以对于一线的工作人员肯定是需要增加一定负担的。
不管怎么说,还是要拥抱变化。后面有了更多心得和想法再做分享。