问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

堡垒机(运维审计系统) 干什么的? 看完你就懂了

创作时间:
作者:
@小白创作中心

堡垒机(运维审计系统) 干什么的? 看完你就懂了

引用
CSDN
1.
https://blog.csdn.net/zzzxxx520369/article/details/138003241

堡垒机(运维审计系统)是企业IT运维中不可或缺的安全组件,它不仅能够控制哪些人可以登录哪些资产,还能记录登录后的行为,实现事前防范、事中控制和事后溯源。本文将详细介绍堡垒机的核心理念、功能价值以及开源堡垒机JumpServer的具体部署和使用方法。

前言

1.什么是跳板机

跳板机是一台具备公网和内网的服务器,开发人员或运维人员需要先登录到这台服务器,再通过其内网访问目标集群服务器。

2.跳板机缺陷

跳板机的主要缺陷在于无法控制和审计运维人员的操作行为,容易导致误操作或违规操作,且出现问题后难以快速定位原因和责任人。因此,堡垒机应运而生。

一、堡垒机

1.1 堡垒机是什么

堡垒机是在跳板机的基础上发展而来,能够实现更安全的运维操作。它通过监控和记录运维人员对服务器、网络设备等的操作行为,提供安全保证。堡垒机也被称为运维审计系统。

简单来说,堡垒机的核心功能是控制权限和审计操作:

  • 控制权限:管理哪些人可以登录哪些资产
  • 审计操作:记录登录后的行为,实现事后溯源

1.2 堡垒机的由来

堡垒机的概念最早出现在2000年左右,当时一些中大型企业为了集中管理运维人员的远程登录,在机房部署了跳板机。随着技术发展和安全需求的提升,堡垒机逐渐演变为专门的安全审计系统。

1.3 堡垒机的设计理念

堡垒机的设计理念围绕4A(Authentication、Authorization、Account、Audit)展开:

  • 身份鉴别(Authentication):防止身份冒用和复用
  • 授权控制(Authorization):防止内部误操作和权限滥用
  • 账号管理(Account):管理人员和资产
  • 安全审计(Audit):提供事故追溯和分析依据

1.4 堡垒机的建设目标

堡垒机的建设目标可以概括为5W:

  • What:审计做了什么
  • Which:授权能做什么
  • Where:账号要去哪
  • Who:认证是谁
  • When:访问时间

1.5 堡垒机的价值

堡垒机的主要价值包括:

  1. 集中管理
  2. 集中权限分配
  3. 统一认证
  4. 集中审计
  5. 数据安全
  6. 运维高效
  7. 运维合规
  8. 风险管控

1.6 堡垒机的分类

堡垒机分为商业堡垒机和开源堡垒机两大类。其中,JumpServer是全球首款完全开源的堡垒机,GitHub Star数超过1.1万。

1.7 堡垒机原理

堡垒机的主要功能模块包括:

  1. 运维平台:支持RDP/VNC、SSH/Telnet、SFTP/FTP、数据库、Web系统、远程应用等运维方式
  2. 管理平台:支持三权分立、身份鉴别、主机管理、密码托管、运维监控、电子工单等功能
  3. 自动化平台:支持自动改密、自动运维、自动收集、自动授权、自动备份、自动告警等功能
  4. 控制平台:支持IP防火墙、命令防火墙、访问控制、传输控制、会话阻断、运维审批等功能
  5. 审计平台:支持命令记录、文字记录、SQL记录、文件保存、全文检索、审计报表等功能

1.8 堡垒机的身份认证

堡垒机支持多种灵活的身份认证方式:

  • 本地认证:支持强密码策略
  • 远程认证:支持第三方AD/LDAP/Radius认证
  • 双因子认证:支持UsbKey、动态令牌、短信网关、手机APP令牌等
  • 第三方认证系统:支持OAuth2.0、CAS等

1.9 堡垒机的运维方式

常见的运维方式包括:

  • B/S运维:通过浏览器运维
  • C/S运维:通过客户端软件运维
  • H5运维:直接在网页上进行运维
  • 网关运维:采用SSH网关方式,适用于运维自动化场景

1.10 堡垒机其他常见功能

  • 文件传输:支持RDP/SFTP/FTP/SCP/RZ/SZ等传输协议
  • 细粒度控制:支持对访问用户、命令、传输等进行精细化控制
  • 支持开放的API

二、JumpServer

2.1 JumpServer介绍

JumpServer是由FIT2CLOUD(飞致远)公司开发的开源堡垒机,是全球首款开源的堡垒机,使用GNU GPL v2.0开源协议。它符合4A规范,使用Python开发,遵循Web 2.0规范,配备了业界领先的Web Terminal方案,交互界面美观、用户体验好。JumpServer支持分布式架构,支持多机房跨区域部署以及横向扩展,无资产数量及并发限制。目前支持管理SSH、Telnet、RDP、VNC协议资产。

2.2 应用架构

JumpServer采用分层架构,包括负载层、接入层、核心层、数据层、存储层。其大致架构如下:

2.3 JumpServer组件说明

JumpServer的主要组件包括:

  • Core:核心组件,其他组件依赖此组件启动
  • Koko:服务于类Unix资产平台,支持SSH、Telnet协议
  • Lion:服务于Windows资产平台,用于Web端访问Windows资产
  • XRDP:服务于RDP协议,用于访问Windows 2000、XP等系统
  • Razor:服务于RDP协议,用于JumpServer Client访问Windows资产
  • Magnus:服务于数据库资产
  • Kael:服务于GPT资产平台
  • Chen:服务于数据库资产,支持Web GUI方式访问
  • Celery:处理异步任务
  • Video:处理会话录像格式转换
  • Panda:基于国产操作系统的应用发布机

2.4 JumpServer的产品特色

  • 开源:零门槛,线上快速获取和安装
  • 分布式:轻松支持大规模并发访问
  • 无插件:仅需浏览器,极致的Web Terminal使用体验
  • 多云支持:一套系统,同时管理不同云上面的资产
  • 云端存储:审计录像云端存储,永不丢失
  • 多租户:一套系统,多个子公司和部门同时使用
  • 多应用支持:支持数据库、Windows远程应用、Kubernetes

2.5 JumpServer实现的功能

  • 用户组、用户:支持组管理,方便批量授权
  • 资产组、资产、IDC:支持资产分组管理,自动获取硬件信息
  • sudo、系统用户、授权规则:支持sudo用户授权,系统用户用于登录客户端
  • 在线历史、登录历史、命令记录、上传下载记录:支持实时监控和录像回放
  • 上传、下载:支持rz/sz命令进行文件传输
  • 默认设置:提供默认管理用户和密码设置

2.6 身份验证 Authentication

  • 登录认证:支持资源统一登录、LDAP认证、OpenID单点登录
  • 多因子认证:支持Google Authenticator等MFA

2.7 账号管理 Account

  • 集中账号管理:支持用户管理和系统用户管理
  • 统一密码管理:支持资产密码托管、自动生成密码、密码自动推送、密码过期设置
  • 批量密码变更:支持定期批量修改密码
  • 多云环境的资产纳管:支持私有云、公有云资产统一管理

2.8 授权控制 Authorization

  • 资产授权管理:支持资产树、资产组灵活授权
  • RemoteApp:支持应用级授权
  • 组织管理:支持多租户管理,权限隔离
  • 多维度授权:支持对用户、用户组或系统角色授权
  • 指令限制:支持黑白名单限制特权指令
  • 统一文件传输:支持SFTP文件上传下载
  • 文件管理:支持Web SFTP文件管理

2.9 安全审计 Audit

  • 会话管理:支持在线会话和历史会话管理
  • 录像管理:支持Linux和Windows录像
  • 指令审计:支持指令记录
  • 文件传输审计:支持上传下载记录审计

三、堡垒机的部署方式

3.1 单机部署

旁路部署,逻辑串联,不影响现有网络结构。

3.2 HA高可靠部署

部署两台堡垒机,一主一备,通过心跳线同步数据,对外提供虚拟IP。当主机故障时,备机自动接管服务。

3.3 异地同步部署

在多个数据中心部署堡垒机,实现配置信息自动同步。运维人员访问当地堡垒机进行管理,不受网络带宽影响,同时实现灾备。

3.4 集群部署(分布式部署)

当需要管理大量设备时,可以部署多个堡垒机形成集群。其中两台作为主备,其他作为集群节点,整个集群对外提供虚拟IP。

四、JumpServer部署

4.1 下载安装包

CentOS 7镜像下载网址:https://vault.centos.org/
JumpServer的安装包下载地址:https://www.jumpserver.org/

4.2 安装JumpServer

systemctl stop firewalld
setenforce 0
cd /opt
tar xf jumpserver-installer-v2.28.8.tar.gz 
cd jumpserver-installer-v2.28.8/
./jmsctl.sh install
#等待安装即可 如遇到y/n回车即可

4.2.1 启动并访问

cd /opt/jumpserver-installer-v2.28.8
./jmsctl.sh start  

4.3 浏览器访问

http://192.168.246.12:80
默认用户: admin  默认密码: admin  

首次登录后需要重新设置密码,账户为admin,新密码为123123。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号