用心做好一款堡垒机,升级版《新一代堡垒机建设指南》白皮书现已开放下载!

news2024/11/24 21:08:04

编者注:本文刊登在《新一代堡垒机建设指南》(JumpServer v3.0发布纪念版)序言部分,文章作者为JumpServer开源堡垒机项目创始人广宏伟。点击文章底部“阅读原文”链接,即可下载新版《新一代堡垒机建设指南》白皮书。

“九年时间,用心做好一款堡垒机”

2014年6月到2023年6月,JumpServer开源堡垒机项目已经走过了九年的时间。之前我们常说的口号是:“改变世界,从一点点开始。”那么,在过去九年的时间里,我们为改变堡垒机应用市场所做的努力应该被大众所看见并感受到了。从一个简单的运维脚本萌发,到现在成为累计安装部署至少250,000次的开源项目,JumpServer实现了自我的价值,也承载着用户越来越多的期待,更面临着许多现实的挑战。

JumpServer的V2版本是在项目诞生的第六年(2020 年)发布的。在这个大版本之下,我们坚持按月发布新版本的节奏,在V2的大版本内累计迭代了28个版本。在两年多的时间里,JumpServer的研发团队激进过,也妥协过,在功能迭代的过程中发现了一些产品设计不合理、冗余的地方。而这样长时间的高速迭代也使得JumpServer的部分功能设计没有经过完全的深思熟虑,开发起来十分复杂,导致整个系统变得臃肿。

站在项目发展第九年的时间节点,我们需要对JumpServer做“减法”了。与此同时,社区用户的反馈也让我们感知到了不同规模企业用户对于JumpServer的现实需求。一些规模较大的企业用户的部分功能需求在JumpServer V2版本的技术架构之下难以满足,主要的原因归结于JumpServer底层架构设计的局限。

在产品架构重塑和用户需求的双重驱动下,JumpServer开源项目组在2022年3月决定启动JumpServer v3.0版本的研发,在这个新的版本编号的旗帜之下对JumpServer的技术架构进行重构。

整个重构工作耗时近一年的时间,2023年2月27日,JumpServer正式发布v3.0版本。在此之后,JumpServer每月迭代一个小版本,解决在用户真实环境中遇到的版本升级、资产迁移等问题,目前已经形成了一个相对成熟、稳定的新版本JumpServer。

在JumpServer v3.0版本中,我们重构了底层技术架构,通过改变管理模型的方式来兼顾不同规模和类型用户的实际使用场景,基于用户、系统用户、资产和授权这四个维度对JumpServer中的大部分使用场景进行了重新设计。

在产品设计过程中,我们秉持“内外兼修”的原则,希望进一步提升用户的使用体验,真正用心做好一款开源堡垒机。在产品的内在方面,我们对核心功能进行了全面的优化设计。具体如下 :

■ 系统用户重构为账号,放弃系统用户中间层

在JumpServer过去的版本中,系统用户承担了太多的职责,系统用户的功能显得十分臃肿。JumpServer设计系统用户的初衷其实是作为账号存在的,通过特权账号创建系统用户。这在资产规模比较小、大多数用户的账号密码相同的情况下,使用起来十分便捷。但是随着JumpServer用户规模和使用范围的不断扩大,对于拥有大量IT资产,并且等保安全要求资产密码都要不一样的大中型企业,这就带来了比较大的困扰。

为了解决这个问题,我们将系统用户和账号进行分离。系统用户关联资产时会产生一个账号,一个系统用户在不同的资产上允许产生不同的账号,联表计算之后形成账号列表。这样就满足了拥有大规模 IT 资产场景用户的需要,但在面对计算量庞大的业务场景时,账号列表很容易出现问题而崩溃,因此我们决定对系统用户进行重新设计。在JumpServer v3.0版本中,系统用户重构为账号,放弃系统用户中间层。这就意味着在JumpServer v3.0以及后续版本中,不会再有“系统用户”的概念。

■ 资产和应用合并

起初JumpServer设计中只有资产,后来为了支持数据库连接,新增了应用。因为每种应用可能都有单独的一些字段,为了和资产进行区分,我们不得不新增了Application表,这也就导致很多后端的数据关系表会和资产一样存在多份,数据库和API都存在冗余的现象。在JumpServer v3.0版本中,我们化繁为简,将资产和应用合并,统称为资产,强化资产平台方面的职责。

■ 平台是资产的抽象和约束

资产与应用合并之后,强化了资产平台的作用,因此也需要对资产平台进行重新设计,对资产进行约束。原有的资产平台本质上只是起到标记的作用,而在JumpServer v3.0版本中,新平台除了区分资产类型外,还可以定制功能。

另外,新平台还可以灵活定义自动化配置,所有的自动化功能都依赖于Ansible自动化运维工具,不需要我们再进行额外的Python代码填写,可以直接选择资产和账号来进行配置。这样一来,不仅提升了系统的自动化程度和配置效率,在一定程度上还减轻了我们的工作量,让我们有更多的精力专注于更重要的功能优化。

■ 远程应用是未来扩展的核心

原来的RemoteApp远程应用是一种应用类别,只是作为JumpServer的一种能力存在的。在JumpServer v3.0版本中,我们对远程应用进行了重新设计。远程应用是JumpServer未来扩展的核心,也是JumpServer v3.0版本重构中非常重要的部分。我们的研发团队很重视远程应用的重新设计, 在JumpServer v3.0版本中做了重大的更新, 并且面向社区开源, 希望未来远程应用能够实现“万物皆可连”的目标。

此外,作为一款企业IT部门高频使用的工具类软件,JumpServer的用户使用体验也非常重要。因此,在重新设计内在架构和功能的同时,专业设计师还对JumpServer v3.0的操作界面进行了全新的UI设计,重新调整功能布局,只保留核心菜单,仪表盘数据更加直观,简约而直白的设计大幅提升了用户的使用体验。

六月对于JumpServer是有着特别意义的。JumpServer项目的第一行代码是在2014年6月写下的,JumpServer v2.0版本发布日期是2020年6月。在2021年6月,JumpServer开源项目组编写了第一版《新一代堡垒机建设指南》白皮书,以此为载体回顾堡垒机作为一个IT产品品类的发展历程,及其在云计算时代所面临的问题,以及新一代堡垒机建设的想法与实践。在过去两年的时间里,有超过4000位的社区用户下载了《新一代堡垒机建设指南》电子版,有超过6000本《新一代堡垒机建设指南》纸质版送达广大用户手中。

2023年7月,《新一代堡垒机建设指南》特别推出JumpServer v3.0发布纪念版。结合过去两年广大社区用户的反馈,在这一版本中,我们进一步升级了新一代堡垒机的内涵解读,对最新版本JumpServer的功能架构及核心优势进行了详细阐述,并与大家分享JumpServer v3.0版本的研发设计思路和功能进化。另外,我们还同步更新了包括腾讯海外游戏、货拉拉、万华化学在内的最新企业应用案例,以帮助用户更好地推进JumpServer开源堡垒机在企业的落地实践。

将JumpServer开源项目的发展进程、产品能力和用户案例定期集结成册,已经成为我们与社区用户互动的重要方式。《新一代堡垒机建设指南》(JumpServer v3.0发布纪念版)让我们站在了一个新的起点。在这个万物皆盛的时节,我们将和广大用户和客户一起,为了“用心做好一款堡垒机”不懈努力。

JumpServer开源项目创始人 广宏伟

2023年6月
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/766170.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3 – 实现过渡动画

1 认识Vue的动画原理 2 动画中常见类的作用 3 animation动画实现 4 动画的常见属性设置 5 列表元素动画组实现 6 列表元素的移动动画 认识Vue的动画原理 利用transition标签和一系列的动画类来控制标签的动画效果。 transition标签的本质是帮你添加和删除动画类的。 trans…

SpringBoot整合EasyExcel实现读操作

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: SpringBoot整合EasyExcel实现读操作 ⏱️ 创作时间: 2023年…

linux中的sendmail发送邮件

Linux/UNIX 下的老牌邮件服务器。 Sendmail 作为一种免费的邮件服务器软件,已被广泛的应用于各种服务器中,它在稳定性、可移植性、及确保没有 bug 等方面具有一定的特色,且可以在网络中搜索到大量的使用资料。 一、邮件发送原理图 MUA&#x…

通过弹性算力支持与托管式机器学习服务,亚马逊云科技为客户提升技术竞争力

时下数字化浪潮中,生成式人工智能(AIGC)已成为企业实现业务增长和数字化转型的重要技术,为企业提供了重新定义和调优业务模式的机遇。越来越多的企业希望利用人工智能技术提升竞争力,应对复杂的商业环境和市场挑战&…

机器学习实战:Python基于Ridge岭回归进行正则化(十三)

文章目录 1.前言1.1 岭回归的介绍1.2 岭回归的应用 2.自定义数据集实战演示2.1 导入函数2.2 创建数据集2.3 alpha0、1、10、100的分别情况 3.Dushanbe_house数据集实战演示3.1 导入函数和数据3.2 剔除空值及可视化3.3 整理数据3.4 训练和测试数据集3.5 评估数据集 4.讨论 1.前言…

mysql更新关联字段问题

现象 ### 表结构 CREATE TABLE wjf_test_update_num (id bigint(20) NOT NULL AUTO_INCREMENT,num1 int(11) DEFAULT NULL,num2 int(11) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT3 DEFAULT CHARSETutf8 |## 插入两行数据 insert into wjf_test_update_nu…

从源码理解Scala中函数reduceRight的计算过程

水善利万物而不争,处众人之所恶,故几于道💦 以List集合为例,进行reduceRight()的计算过程分析,总体分为两部分,一部分是看最顶层特质的那个通用的reduceRight方法,另一部分是讲直接混入的特质的…

【Linux】分布式存储系统 Ceph

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 分布式存储系统 Ceph Ceph 概述1、Ceph 简介2、存储基础3、Ceph 优势4、Ceph 架构4、Ceph 核心组件5、OSD 存储后端6、Ceph 数据的存储过程7、Ceph 版本发行生命周期 Ceph 集…

Day13 02-Linux常用命令汇总

文章目录 第三章 Linux的常用命令【重要】3.1 命令格式的说明3.2 帮助命令3.2.1 man3.2.2 help 3.3 文件处理命令3.3.1 cd3.3.2 ls3.3.3 pwd3.3.4 mkdir3.3.5 touch3.3.6 echo3.3.7 cp3.3.8 mv3.3.9 rm3.3.10 vi编辑器3.3.11 ln 3.4 查看命令3.4.1 cat3.4.2 more3.4.3 head3.4.…

代码量、代码行数计算工具

cloc 极客命令行工具 下载地址:https://github.com/AlDanial/cloc 常用命令: // 文件夹的名称 cloc ./StaticAnalyzer/计算结果: 速度快,结果精准,十分实用!

51单片机学习--数码管显示

首先实现静态数码管显示 SMG表示共阴极 ,要让第三位显示数字6,需要LED6端口接0,即Y50,5的二进制为101,按P2_4 到 P2_2 的顺序接,则CBA分别接101 然后在数码管另一端,需要点亮的接上1&#xff…

亚信科技荣任「DBL电信行业工作组」副组长单位,AntDB数据库连年入选《中国数据库产品图谱》

日前,“2023可信数据库发展大会”在京圆满召开。亚信科技凭借自研的电信级核心交易数据库AntDB在通信行业15年的技术积累和行业贡献,成功当选为数据库应用创新实验室(DBL)电信行业工作组副组长单位。AntDB数据库连续两年入选《全球…

客户案例 | 数字化加速,金融企业实现3D打印式应用程序开发

关键发现: 客户痛点:传统开发周期长,流程复杂,难以满足杭银消金在企业快速发展过程中的应用开发需求;内部业务因为优先级不高,导致开发资源分配有限,更加迟滞了管理部门数字化转型的进度。 解决…

大规模新能源并网下火电机组深度调峰优化调度

1主要内容 程序主要参考《大规模新能源并网下火电机组深度调峰优化调度》,建立了深度调峰基础模型,采用IEEE30节点系统,通过直流潮流建模,以火电机组运行成本、开机成本等综合运行成本最低为目标函数,包括潮流约束、旋…

Spring 能解决所有循环依赖吗?

以下内容基于 Spring6.0.4。 看了上篇文章的小伙伴,对于 Spring 解决循环依赖的思路应该有一个大致了解了,今天我们再来看一看,按照上篇文章介绍的思路,有哪些循环依赖 Spring 处理不了。 严格来说,其实也不是解决不了…

基于Python的汉字字频统计实验

完整资料进入【数字空间】查看——baidu搜索"writebug" 实验内容 针对不同语料统计汉字的字频,并进行比较。 实验要求和目的 给出前 100 个汉字高频字的频率统计结果; 分别给出前 1、20、100、600、2000、3000、6000 汉字的字频总和&…

makefile项目管理-规则和过程

目录 1、makefile基本规则 2、makefile执行过程 3、makefile的运行规则 1、makefile基本规则 (1)命名:makefile 和 Makefile (2)makefile文件:里面是多个命令的集合,使用make命令执行该文件 …

岩土工程安全监测振弦传感器的发展史

岩土工程安全监测振弦传感器的发展史 岩土工程安全监测是岩土工程学科领域的一个重要组成部分。随着科学技术的不断发展,传感器技术的应用也在不断地创新和完善。振弦传感器是一种重要的监测设备,其应用范围广泛,以其高灵敏度、高精度、长期…

Python实现HBA混合蝙蝠智能算法优化BP神经网络回归模型(BP神经网络回归算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 蝙蝠算法是2010年杨教授基于群体智能提出的启发式搜索算法,是一种搜索全局最优解的有效方法…

EPSG代号-坐标系对应表

前言 EPSG 用于标识不同的地理空间参考系统,包括坐标系统、地理坐标系、投影坐标系等。这些标识符可用于许多应用程序和地理信息系统软件,以确保数据在不同系统之间的正确转换和处理。现在,EPSG已被Open Geospatial Consortium(OG…