开源推荐|简洁且强大的开源堡垒机OneTerm
在运维的日常工作中,登陆服务器操作不可避免,为了更安全的管控服务器,但凡有点规模的公司都会上线堡垒机系统,堡垒机能够做到事前授权、事中监控、事后审计,同时也可以满足等保合规要求。提到堡垒机,大伙第一时间能够想到的可能是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,尽管它不是很完美,我也发现了还有一些有待优化提升的地方,但基于以下几点我还是想推荐给你试试
简洁且完善,专注堡垒机,堡垒机该有的都有,例如终端登陆,会话录像、实时监控、强制断开、网关、危险命令阻断等都是堡垒机必要等核心功能,没有其他乱七八糟跟堡垒机无关的功能,小巧易用
GO语言开发,代码简单易懂,项目初期的代码是宝藏,功能不是很复杂,代码编写也都按照规范严格执行,结构和质量都比较高,没有太多的技术债,比较适合想要学习GO或者是想要了解堡垒机是如何实现的伙伴去读源码
社区比较活跃,尤其是微信群几乎是有问必答,项目发版节奏也比较固定,几乎每周都有优化更新或新功能上线,注重用户体验,微信群里大伙提到的问题官方基本都有安排实现
与CMDB数据互通,统一平台,打破数据孤岛,一份数据多个系统使用,确保CMDB数据的权威,同时也简化了堡垒机的配置和应用。项目维护主题为公司,相对来说比个人开发者更可靠和稳定
开源,这个无需多说,向开源致敬
在线体验
最后附上项目Github地址:https://github.com/veops/oneterm
官方还提供有在线Demo可以体验,README有地址和账号密码,如果想要进社区微信群也可以直接私信我或者加README里的微信
觉得不错的话请不要吝惜star,好项目值得被更多的人发现,同样的希望维易OneTerm发展的越来越好,造福更多的运维同行
开源推荐|简洁且强大的开源堡垒机OneTerm的更多相关文章
- 开源推荐 - CoDo开源一站式DevOps平台
一群有梦想的年轻人开源了一个云管理平台,他们的口号是:让天下没有996的运维 有幸参与到CoDo项目的开发,这是一个非常棒的一站式开源运维平台,分享给大家 平台介绍 CODO是一款为用户提供企业多混合 ...
- 28款GitHub最流行的开源机器学习项目,推荐GitHub上10 个开源深度学习框架
20 个顶尖的 Python 机器学习开源项目 机器学习 2015-06-08 22:44:30 发布 您的评价: 0.0 收藏 1收藏 我们在Github上的贡献者和提交者之中检查了用Python语 ...
- 分享一款开源堡垒机-jumpserver
本文主文章地址为:https://blog.csdn.net/KH_FC JumpServer是由FIT2CLOUD(飞致远)公司旗下一款开源的堡垒机,这款也是全球首款开源的堡垒机,使用 GNU GP ...
- 推荐GitHub上10 个开源深度学习框架
推荐GitHub上10 个开源深度学习框架 日前,Google 开源了 TensorFlow(GitHub),此举在深度学习领域影响巨大,因为 Google 在人工智能领域的研发成绩斐然,有着雄厚 ...
- 强大的开源企业级数据监控利器Lepus安装与配置管理
开篇介绍 官方网站:http://www.lepus.cc 开源企业级数据库监控系统 简洁.直观.强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能监控,让数据库 ...
- 强大的开源企业级数据库监控利器Lepus
Lepus监控简单介绍 官方网站:http://www.lepus.cc 开源企业级数据库监控系统 简洁.直观.强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能 ...
- 10 个强大的开源 Web 流量分析工具(转帖)
Web 流量分析工具多不胜数,从 WebTrends 这样专业而昂贵的,到 Google Analytics 这样强大而免费的,从需要在服务器端单独部署的,到可以从前端集成的,不一而足.本文收集并介绍 ...
- CentOS7 开源跳板机(堡垒机) Jumpserver
开源跳板机(堡垒机)Jumpserver 环境 CentOS 7 x64 关闭 selinux firewalld jumpserver: 172.24.0.14 testserve ...
- 全球首款完全开源的堡垒机,符合 4A 的专业运维审计系统Jumpserver
Jumpserver是全球首款完全开源的堡垒机,是符合 4A 的专业运维审计系统. http://www.jumpserver.org https://github.com/jumpserver/ju ...
- centos 6.5 搭建开源堡垒机 Teleport 遇到的问题解决
几款开源的堡垒机 下面进行 teleport 的安装: https://docs.tp4a.com/install/#11 异常1:libc.so.6: version `GLIBC_2.14' no ...
随机推荐
- Oracle查询存在外键约束但未创建对应索引的情况
1.Oracle提供的脚本 2.网络搜索到的脚本 3.改为可以指定用户的脚本 4.测试脚本使用 1.Oracle提供的脚本 如果要求管控严格,可以考虑使用Oracle官方提供的脚本. Script t ...
- Mac上SnailSvn checkout报错
- Python-pymysql查询MySQL的表
一.安装pymysql py -m pip install pymysql; 二.创建表并插入数据 CREATE TABLE `course` ( `course_id` varchar(10) DE ...
- 永久解决 WSL vm.max_map_count 65530 is too low 的问题
问题 在使用基于 WSL 的 Docker 的时候,启动 ES 总是会出现 vm.max_map_count 65530 is too low 问题,导致容器无法启动,网上答案基本就两种,例如 sta ...
- 使用V2R做反向代理内网穿透
环境 内网服务器Prob1位于内网LAN1, 内网服务器Prob2位于内网LAN2, 外网服务器Serv1位于IP 123.123.123.123 内网节点配置 内网节点没有inbound,只需要配置 ...
- 【Android】使用AIDL实现进程间通讯简单案例
1 AIDL 简介 AIDL(Android Interface Definition Language)是一种接口定义语言,用于生成可在 Android 设备上两个进程之间进行进程间通信(IPC ...
- Javascript操作对象数组实现增删改查
1.介绍 最近帮朋友弄一个简单的针对json数组的增删改成页面,正好涉及到了js去操作对象数组实现增删改查功能.我估计很多朋友应该也会遇到这类操作,所以记录一下以便分享. 2.数据准备 这里我就以学生 ...
- python web连接mysql数据库
一定要commit,否则数据库不会发生改变!!! 1.使用python写入内容到数据库 import pymysql # 记得下载并引入pymysql # 1.连接mysql,db:声明数据库 con ...
- 深入理解Go语言(04):scheduler调度器-GMP里结构体源码分析
在前面一节中简单介绍了golang的调度模型-GPM模型,介绍了他们各自的作用.这篇文章就来看看他们的源码结构. Go版本:go1.13.9 M结构体 M结构体是OS线程的一个抽象,主要负责结合P运行 ...
- 【Android逆向】破解看雪9月算法破解第一题
1. 安装apk到手机 2. 随意输入账号和密码,点击register,报错crackme1:ERROR 3. 将apk拖入到jadx中进行观察 public native String regist ...