#3 CMDB 相关

2023-02-24

概念

ITSM,CMDB,IPAM 和 DCIM 都是 IT 领域中的管理工具和框架,各自有不同的功能和应用场景。下面是它们的详细解释和关联:

  • ITSM(IT Service Management,IT 服务管理):ITSM 是一种基于 ITIL(IT Infrastructure Library,IT 基础设施库)框架的 IT 服务管理方法论,它强调通过对服务管理全生命周期的规划、设计、交付、运营和持续改进,提高 IT 服务的质量和价值。ITSM 可以涉及到服务台管理、问题管理、变更管理、配置管理、发布管理等多个方面。
  • CMDB(Configuration Management Database,配置管理数据库):CMDB 是一个用于存储 IT 资产、配置项以及它们之间关系的数据库,它可以帮助 IT 组织管理和控制 IT 环境。CMDB 可以用于支持 ITSM 的各个方面,如问题管理、变更管理、发布管理等。
  • IPAM(IP Address Management,IP 地址管理):IPAM 是一种用于管理 IP 地址和网络设备的工具,它可以帮助 IT 组织准确掌握 IP 资源的分配和使用情况,避免 IP 地址冲突和浪费。IPAM 可以与 CMDB 集成,以便更好地管理 IP 资源的使用和配置。
  • DCIM(Data Center Infrastructure Management,数据中心基础设施管理):DCIM 是一种用于管理数据中心设备和资源的工具,它可以帮助 IT 组织实现数据中心的资源规划、设备监控、电力管理、机柜布局等功能,提高数据中心的效率和可靠性。DCIM 可以与 CMDB 和 IPAM 集成,以便更好地管理数据中心的资源配置和使用。

总的来说,ITSM、CMDB、IPAM 和 DCIM 都是 IT 管理工具和框架,它们各自有不同的功能和应用场景,但也有一些关联和共同点。例如,CMDB 可以用于支持 ITSM 的各个方面,IPAM 和 DCIM 可以与 CMDB 集成,以便更好地管理 IT 资源的使用和配置。

相关项目

  • RackTables:RackTables 是一个开源的机房资产管理系统,它可以管理 IT 资产的位置、网络、电源、硬件等信息,并提供了各种视图、报表和 API 接口等功能。GPL
  • i-doit:i-doit 是一个开源的 ITSM 和 CMDB 系统,它可以管理 IT 资产的硬件、软件、文档、业务关系等信息,并提供了各种报表、图表、导出和 API 接口等功能。AGPL
  • NetBox:NetBox 是一个开源的 IPAM 和 DCIM 系统,它可以管理网络设备、IP 地址、机柜、电源、连接等信息,并提供了各种视图、报表和 API 接口等功能。Apache 2.0
  • OpenDCIM:OpenDCIM 是一个开源的 DCIM 系统,它可以管理机房、机柜、设备、电源、网络等信息,并提供了各种视图、报表和 API 接口等功能。GPL

#2 试用 JumpServer 堡垒机

2023-01-20

之前久闻 JumpServer 大名,也做过一个简单的了解(2022/04/05,Jumpserver 开源堡垒机),没想到竟然就要用上了。

之前是运维部署的一台普通 CentOS 做跳板机,主要是起到网络连接(VPN)、管理用户的作用。
公司为了按照极光总部的要求,做运维审计,用上了 JumpServer 堡垒机。

授权:允许指定登录账号,在指定时间,指定机器上,执行指定范围的行为
审计:就是对通过堡垒机的所有行为做详细记录。

废话不说了,先说说我作为被授权方的体验吧(没有管理方面的权限)。

功能

  1. 通过 VPN 账号 + MFA(身份验证器)登录。
  2. 对于普通使用者来讲,主要是 Web Terminal 中的 SSH 连接和应用中的 DB 连接。
  3. SSH 可以通过 Web 登录,也可以通过 JumpServer 客户端登录
    PS:客户端其实就是唤起一个 PuTTY 窗口。
  4. 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,登录账号是 markjour
登录所有受控机器统一使用 stuff 账号
目标服务器的 IP 是 192.168.100.100

ssh markjour@stuff@192.168.100.100@192.168.0.1 -P2222

JumpServer 收到的用户名为 markjour@stuff@192.168.100.100,然后用 markjour + 密码 通过了 JumpServer 的校验,再然后 JumpServer 再去免密连接 stuff@192.168.100.100

感受

可以预见到的:

  1. 可能会需要各种申请,以及可能的被审计工作(配合审计)。
  2. 管理制度上,估计后面就要逐步加强管控,对违规操作做出处罚。
  3. 各种中间件(MQ,DB,Redis)的连接今后可能都要管控起来(JumpServer 无关)。

感觉这东西会给我今后的工作会带来很多不便(非常不符合现有的工作习惯)。

  1. 从公司的角度上来讲,我觉得早就应该上堡垒机,为了信息安全!
  2. 理想情况下,对这么一个工具,应该需要投入精力去打磨,在审计合规的基本框架内尽最大努力去完善流程、提升体验。
  3. 但是从实践上来讲,受限于公司规模,上了之后,应该不会投入什么精力去弄这个东西,所以对于一线的工作人员肯定是需要增加一定负担的。

不管怎么说,还是要拥抱变化。后面有了更多心得和想法再做分享。

参考资料与拓展阅读

#1 Jumpserver 开源堡垒机

2022-04-05

架构

Arch

Core 是 JumpServer 的核心组件,由 Django 二次开发而来,内置了 Gunicorn Celery Beat Flower Daphne 服务。

Lina 是 JumpServer 的前端 UI 项目,主要使用 Vue,Element UI 完成。
Luna 是 JumpServer 的前端 UI 项目,主要使用 Angular CLI 完成。

  • Koko 是 Go 版本的 coco,重构了 coco 的 SSH/SFTP 服务和 Web Terminal 服务。SSH
  • Lion未开源 使用了 Apache 软件基金会的开源项目 Guacamole,JumpServer 使用 Golang 和 Vue 重构了 Guacamole 实现 RDP/VNC 协议跳板机功能。RDP VNC
  • Magnus未开源 是 JumpServer 的数据库安全连接组件,支持多种数据库协议,使用 Golang 实现。Redis MySQL
  • Razor:官网没有提供相关介绍,根据 Release Notes 描述,可能是付费版本的 RDP 录像组件。