在运维的日常工作中,登陆服务器操作不可避免,为了更安全的管控服务器,但凡有点规模的公司都会上线堡垒机系统,堡垒机能够做到事前授权、事中监控、事后审计,同时也可以满足等保合规要求。提到堡垒机,大伙第一时间能够想到的可能是JumpServer,JumpServer经过了多年的发展已经十分的稳定和成熟,是非常优秀的开源项目,被大家广泛所熟知,所以我今天就不写JumpServer了,介绍另一个最近体验到的亮点颇多的开源堡垒机:OneTerm

OneTerm基于4A理念,即认证(Authen)、授权(Authorize)、账号(Account)、审计(Audit)设计开发,是维易科技开源的第二款运维自动化产品,之前开源的CMDB系统就广受好评,我也深入体验了,收获颇多,在我自己收获的同时也专门写了篇文章「灵活多变功能强大的CMDB」介绍分享,以回馈开源社区。这一次看维易又开源了堡垒机系统OneTerm,我也体验了一下,虽然项目开源不久,有一些不尽完善的地方,但整体完整度很高,无论是生产使用还是自己学习都比较合适

关于堡垒机,我之前也有开发过,还写过一系列的文章来介绍堡垒机的实现方式和技术要点,这篇文章就结合我之前的堡垒机开发和使用经验,来介绍下这个开源的堡垒机系统

系统介绍

资产管理

堡垒机主要就是对服务器进行操作,资产管理主要是对服务器的增删改查和授权等管理,是堡垒机的基础。支持基于资产树来管理,支持批量授权,支持批量修改连接协议

接入时间的限制更是十分的灵活,不仅支持指定生效日期,同时也可以按照星期来配置生效时间,还支持选择某一天的某个时间段,非常强大

支持与自家的CMDB联动,可以同步CMDB的数据到堡垒机,这个就很实用了,基础资源数据保存在CMDB,堡垒机作为上层应用只是使用,不仅降低了配置的复杂度,同时也能确保CMDB数据的权威。这个同步操作很贴心

更为贴心的是你在添加资产树节点时设置的连接协议、账号授权、接入限制等配置可以直接作为节点下资源的默认配置,当在节点下新建资产时,会自动继承该节点的授权配置,从而简化添加资产时的配置,这个考虑也是十分人性化

可以看得出来开发团队还是用心的,资源添加可以手动添加,也可以与CMDB同步,授权不仅支持单个资源授权,也支持批量授权和默认授权,点赞

网关

OneTerm支持配置网关,网关功能解决了部分环境无法直接连接的问题,连接会将网关作为跳板连接到目标资产,这样可以覆盖一些复杂的网络环境,很有用

安全

OneTerm支持会话超时时间设置,也支持设置过滤命令,危险命令无法执行,这样提高了终端操作的安全,避免一些无意的或人为的破坏,增加会话安全

终端

对于堡垒机来说最重要的就是终端操作了,OneTerm已经支持了SSH、VPC和RDP多种协议的终端连接,支持命令行模式连接主机,也支持web终端连接主机,操作比较丝滑,该有的终端命令自动补全等功能也都有,体验就跟其他客户端无异

终端直接连接

网页Web登陆终端

会话审计

堡垒机除了能够终端登陆操作外,还有个比较重要等功能,那就是需要支持终端会话审计,包括查看当前在线会话连接,实时监控当前在线会话,以及在发现当前会话有危险和不当操作时对当前在线会话下达强制断开的指令,这些OneTerm也都是支持的

同时OneTerm也支持查看历史回话,对历史回话进行回放、下载以及执行命令查看等审计操作

命令查看很有用,可以直接对用户对会话操作进行快速检索,不用去看录像了,同时这个命令操作还会判定命令的风险等级,也很实用

日志审计

资产授权和会话审计保障了主机连接操作的安全,除此之外,OneTerm也提供基础的用户登陆日志记录和完善的后台操作记录,所有操作均有记录,全面保障系统安全

大盘

除了这些以上这些堡垒机必须的基础的功能外,OneTerm也提供了个Dashboard大盘,可以全面掌握系统情况,包括连接、资产、会话、用户、网关等信息,还是图表好看

推荐使用

我深入体验了OneTerm,尽管它不是很完美,我也发现了还有一些有待优化提升的地方,但基于以下几点我还是想推荐给你试试

  1. 简洁且完善,专注堡垒机,堡垒机该有的都有,例如终端登陆,会话录像、实时监控、强制断开、网关、危险命令阻断等都是堡垒机必要等核心功能,没有其他乱七八糟跟堡垒机无关的功能,小巧易用

  2. GO语言开发,代码简单易懂,项目初期的代码是宝藏,功能不是很复杂,代码编写也都按照规范严格执行,结构和质量都比较高,没有太多的技术债,比较适合想要学习GO或者是想要了解堡垒机是如何实现的伙伴去读源码

  3. 社区比较活跃,尤其是微信群几乎是有问必答,项目发版节奏也比较固定,几乎每周都有优化更新或新功能上线,注重用户体验,微信群里大伙提到的问题官方基本都有安排实现

  4. 与CMDB数据互通,统一平台,打破数据孤岛,一份数据多个系统使用,确保CMDB数据的权威,同时也简化了堡垒机的配置和应用。项目维护主题为公司,相对来说比个人开发者更可靠和稳定

  5. 开源,这个无需多说,向开源致敬

在线体验

最后附上项目Github地址:https://github.com/veops/oneterm

官方还提供有在线Demo可以体验,README有地址和账号密码,如果想要进社区微信群也可以直接私信我或者加README里的微信

觉得不错的话请不要吝惜star,好项目值得被更多的人发现,同样的希望维易OneTerm发展的越来越好,造福更多的运维同行

开源推荐|简洁且强大的开源堡垒机OneTerm的更多相关文章

  1. 开源推荐 - CoDo开源一站式DevOps平台

    一群有梦想的年轻人开源了一个云管理平台,他们的口号是:让天下没有996的运维 有幸参与到CoDo项目的开发,这是一个非常棒的一站式开源运维平台,分享给大家 平台介绍 CODO是一款为用户提供企业多混合 ...

  2. 28款GitHub最流行的开源机器学习项目,推荐GitHub上10 个开源深度学习框架

    20 个顶尖的 Python 机器学习开源项目 机器学习 2015-06-08 22:44:30 发布 您的评价: 0.0 收藏 1收藏 我们在Github上的贡献者和提交者之中检查了用Python语 ...

  3. 分享一款开源堡垒机-jumpserver

    本文主文章地址为:https://blog.csdn.net/KH_FC JumpServer是由FIT2CLOUD(飞致远)公司旗下一款开源的堡垒机,这款也是全球首款开源的堡垒机,使用 GNU GP ...

  4. 推荐GitHub上10 个开源深度学习框架

    推荐GitHub上10 个开源深度学习框架   日前,Google 开源了 TensorFlow(GitHub),此举在深度学习领域影响巨大,因为 Google 在人工智能领域的研发成绩斐然,有着雄厚 ...

  5. 强大的开源企业级数据监控利器Lepus安装与配置管理

    开篇介绍 官方网站:http://www.lepus.cc 开源企业级数据库监控系统 简洁.直观.强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能监控,让数据库 ...

  6. 强大的开源企业级数据库监控利器Lepus

    Lepus监控简单介绍 官方网站:http://www.lepus.cc 开源企业级数据库监控系统 简洁.直观.强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能 ...

  7. 10 个强大的开源 Web 流量分析工具(转帖)

    Web 流量分析工具多不胜数,从 WebTrends 这样专业而昂贵的,到 Google Analytics 这样强大而免费的,从需要在服务器端单独部署的,到可以从前端集成的,不一而足.本文收集并介绍 ...

  8. CentOS7 开源跳板机(堡垒机) Jumpserver

    开源跳板机(堡垒机)Jumpserver 环境 CentOS 7   x64       关闭 selinux  firewalld jumpserver: 172.24.0.14 testserve ...

  9. 全球首款完全开源的堡垒机,符合 4A 的专业运维审计系统Jumpserver

    Jumpserver是全球首款完全开源的堡垒机,是符合 4A 的专业运维审计系统. http://www.jumpserver.org https://github.com/jumpserver/ju ...

  10. centos 6.5 搭建开源堡垒机 Teleport 遇到的问题解决

    几款开源的堡垒机 下面进行 teleport 的安装: https://docs.tp4a.com/install/#11 异常1:libc.so.6: version `GLIBC_2.14' no ...

随机推荐

  1. Oracle ADG + Keepalived 切换演练

    客户的一套生产环境采用的架构是Oracle ADG + Keepalived,近期需要进行切换演练,要求我这边保障.ADG本身切换倒没啥可说的,但引入keepalived软件,就需要提前研究下这个架构 ...

  2. OGG_Linux_x64_BigData启动ggsci时报错:error while loading shared libraries: libjvm.so: cannot open shared object file: No such file or directory

    问题描述 [root@hadoop03 ggs]$ ./ggsci ./ggsci: error while loading shared libraries: libjvm.so: cannot o ...

  3. Google全球分布式数据库:Spanner

    2012年的OSDI上google发布了Spanner数据库.个人认为Spanner对于版本控制,事务外部一致性的处理,使用TrueTime + Timestamp进行全球备份同步的实现都比较值得一看 ...

  4. 好书推荐之《JAVA编程思想》

    名人推荐 真是一本透着编程思想的书. 上面的书让你从微观角度了解 Java,而这本书则可以让你从一个宏观角度了解 Java. 这本书和 Java 核心技术的厚度差不多,但这本书的信息密度比较大. 所以 ...

  5. CORS就是跨域吗?

    首先,跨域的域是什么? 跨域的英文是:Cross-Origin. Origin 中文含义为:起源,源头,出生地. 在跨域中,"域"指的是一个 Web 资源(比如网页.脚本.图片等) ...

  6. Spring Boot学生信息管理系统项目实战-2.字典管理和模板管理

    1.获取源码 源码是捐赠方式获取,详细请QQ联系我 :) 2.实现效果 3.项目源码 只挑重点讲,详细请看源码. 3.1 字典管理 字典管理这里分为字典的编码和名称和字典数据的增删改查. 前端页面: ...

  7. windbg 分析 32 位进程的 64 位转储文件

    场景: x86 的项目在 x64 的 windows 机器上运行时出现未响应的情况,使用任务管理器创建该进程的转储文件 因为项目是 32 位的,所以使用 x86 的 windbg 来调试 dmp 文件 ...

  8. 默认形参和关键字实参,收集参数,命名关键字参数,return自定义返回,全局变量和局部变量,函数名的使用---day10

    1.函数定义处(默认形参在函数的定义) 1.1.函数的调用处(关键字实参在函数的调用处) 2.收集参数 (1)收集参数: (1) 普通收集参数 在参数的前面加一个*,代表的是普通收集参数 作用:收集多 ...

  9. nodejs内存泄漏概要分析

    const heapdump = require('heapdump'); setTimeout( ()=>{ heapdump.writeSnapshot(`${process.cwd()}/ ...

  10. 【Azure Redis 缓存】使用Azure Redis服务时候,如突然遇见异常,遇见命令Timeout performing SET xxxxxx等情况,如何第一时间查看是否有Failover存在呢?

    问题描述 使用Azure Redis服务时,如突然遇见异常,命令Timeout performing SET xxxxxx等情况,如何第一时间查看是否有Failover存在呢?看是否有进行平台的维护呢 ...