用了两周开源堡垒机OneTerm,我有一些建议
上一篇文章分享了一款简洁且强大的开源堡垒机OneTerm,功能完善,代码简单,GO语言开发,用来学习很合适,拿来自用也没问题。堡垒机该有的核心功能基本都有了,方便与自有系统集成,我使用了两周,功能上没有什么大问题,但仍然发现了一些有待提升的地方,这篇文章从我个人使用的角度来写下我自己觉得有哪些是可以优化的,仅一家之言,官方觉得有道理可以采纳,也算回馈社区,觉得说错了也不必较真哈,毕竟我个人认知有限
Web终端
我们平常使用堡垒机最多的功能应该就是登陆系统控制台,OneTerm支持Linux终端使用,也能通过配置在客户端上使用,不过这些都比较麻烦,我们平常用的最多的还是Web控制台,那Web控制台的使用体验就十分重要了,OneTerm的Web终端连接在工作台页面
这个页面上点内容比较多,有我的资产、最近回话和个人信息,我个人觉得Web连接是个十分重要点功能,连接资产点页面应该简洁,只包含我的资产这块的内容即可,左侧目录树,右侧主机,点击连接直接打开web终端,还有就是突出最重要的「连接」按钮,而弱化是否可连接的状态显示,这里总感觉那个绿色的「连接」状态是可以点击的
堡垒机可以支持多个不同的账号登陆连接,这个比我之前设计的好多了,我之前写的堡垒机没考虑过多账号登陆的问题,支持多账号登陆显然更好,不过当一个主机只配置了一个登陆账号时就没必要弹出账号选择框了,直接连接即可,只在主机配置多个登陆账号时弹框让用户选择登陆账号,简化使用逻辑
OneTerm的Web终端是新开一个浏览器标签显示的,最大化了内容区域,不过似乎有些小bug,例如不会随着浏览器窗口的改变自动调整终端的展示大小,就是自动resize操作,我之前自己写WebSSH的时候处理过终端窗口自适应Resize的问题,应该是类似的,终端窗口除了这个bug外,还有一些可以优化的地方,例如新的Tab页面Title最好改成主机的IP或名称,这样让我明确的知道打开的这个窗口是哪个主机的,不然一次连接的主机多了很容易出错
其实更好的处理方式我觉得是一个页面多标签的形式,而非开多个页面,多页面间频繁切换还是非常麻烦的。这个页面可以参考Xshell或是MobaXterm之类成熟的SSH客户端,左侧目录树,显示所有目录及主机信息,右侧多标签显示操作窗口,使用体验比较好,并且也符合大众的操作习惯
数据互通
OneTerm支持与自家的CMDB联动,可以同步CMDB的数据到堡垒机,这个非常棒,打破不同系统间的数据壁垒,做到数据统一,基础数据只有一份保证CMDB数据权威。这跟我之前的理念一致,CMDB要想数据准确,靠制度和规范是不行的,必须要通过技术的手段来保证。上层应用强依赖是个很好的方式,CMDB作为唯一数据来源,如果数据不准确,直接影响到上层应用的正常服务,所以要想上层应用正常,会倒逼CMDB数据准确
不过Oneterm的问题在于,目前只能同步了主机资源,而没有目录,一个项目多个不同环境和版本,创建十几个甚至几十个目录树都很正常,如果不能按目录树来同步的话,那要想堡垒机的目录树跟CMDB的目录树保持一致,就要创建十几个甚至几十个目录和同步规则,确实麻烦,如果能选择目录树同步,那将大大降低使用成本,同时也能保证CMDB目录树与OneTerm完全一致,个人觉得更加符合使用习惯
页面统一
用过一些国外的产品,像CDN领域最为知名的两家厂商CloudFlare和Akamai,发现他们的产品几乎每个页面都不一样,而我们国内的产品做到了页面及操作的统一,这个并不是说哪个好哪个不好,或许是文化差异导致习惯不同而已,不过我个人更喜欢国内这种统一的,页面统一,操作统一,虽然可能看上去没什么花样和新意,但却降低来使用成本,看到一个页面大概就知道什么信息在哪里,该如何操作,而不用学习每个页面的使用
OneTerm在某些地方没有统一,例如添加资产时的授权账号是从账号列表里选择的,而创建网关时的账号是单独的,要输入账号密码信息,是否也可以从账号列表里选择,这样维护上比较统一,账号只保存在一个地方
例如资产管理下网关列表、账号列表、安全设置右上角都有个「创建」按钮,但资产列表右上角没有,要点击目录树节点才显示,这里可以理解点了目录树节点显示「创建」按钮之后默认填充节点至表单,不过似乎也不影响在未选中任何节点时「创建」资产
当然这些都不是啥大问题,仅仅是不够统一而已
后记
这些仅仅是与我个人使用习惯不完全相符而已,也并不一定都是问题,或许我觉得是bug,只是使用姿势不对的feature而已
我们总是很容易发现别人的问题,却很难发现自己的问题。发现问题相对容易,但真的要改正问题就很难,不一定难在改正的方法,更多的时候可能是我们直面问题的勇气
没有设计完美的产品,所有的好产品都是在使用中不断打磨出来的,一款产品如果真的重视用户使用体验,愿意持续不断的去优化,那距离它成为真的好用的产品差的只是时间而已
用了两周开源堡垒机OneTerm,我有一些建议的更多相关文章
- 分享一款开源堡垒机-jumpserver
本文主文章地址为:https://blog.csdn.net/KH_FC JumpServer是由FIT2CLOUD(飞致远)公司旗下一款开源的堡垒机,这款也是全球首款开源的堡垒机,使用 GNU GP ...
- 开源堡垒机jumpserver
开源堡垒机jumpserver 开源堡垒机jumpserver的安装 开源堡垒机jumpserver的配置和使用
- jumpserver开源堡垒机部署安装
0x01.前言 Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统. Jumpserver 使用 Python / Djang ...
- centos 6.5 搭建开源堡垒机 Teleport 遇到的问题解决
几款开源的堡垒机 下面进行 teleport 的安装: https://docs.tp4a.com/install/#11 异常1:libc.so.6: version `GLIBC_2.14' no ...
- 开源堡垒机jumpserver的安装
开源跳板机jumpserver安装 简介 Jumpserver 是全球首款完全开源的堡垒机, 使用GNU GPL v2.0 开源协议, 是符合4A 的专业运维审计系统 Jumpserver 使用Pyt ...
- 开源堡垒机jumpserver的配置和使用
开源跳板机jumpserver配置和使用 http://docs.jumpserver.org/zh/docs/quick_start.html#id9 系统设置 基本设置 # 修改url 的&quo ...
- Docker 搭建开源跳板机_jumpserver (运维开源堡垒机_jumpserver) Centos_7.0
最近看到一个开源项目(jumpserver) 很不错 还是用Docker 部署得 ... 抽了点时间拿来学习一下 部署 分析 简单使用一下 ....好了先搭起来 准备 工作: ...
- 开源堡垒机GateOne的安装、配置笔记
因为内部临时需要这么一套系统,所以搜搜查查,搞定了系统部署,使用pam认证的配置. 系统初始化是使用CentOS 6.5 Mini x64版本. 首先exports http_proxy和http ...
- 开源堡垒机Gateone 安装过程记录及报错处理
1.下载git源码或者zip包都可以,下载到我们制定部署目录. git地址:https://github.com/liftoff/GateOne.git 2.检查tornado 版本,安装tornad ...
- centos 7 搭建开源堡垒机 Teleport 遇到的问题解决
不得不说 centos7 的环境版本就是高,没有再出现6.5下那些依赖组件的版本支持过低的错误了,所以说现在个人用户还是推荐用7,企业生产环境的话,可能6.5适合一些,至少2年前是这样. 安装过程: ...
随机推荐
- JS Leetcode 70. 爬楼梯 题解分析,斐波那契数列与动态规划
本题来自LeetCode70. 爬楼梯,难度简单,属于一道动态规划的入门题,题目描述如下: 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬 ...
- NC14522 珂朵莉的数列
题目链接 题目 题目描述 珂朵莉给了你一个序列,有 \(\frac{n\times(n+1)}2\) 个子区间,求出她们各自的逆序对个数,然后加起来输出 输入描述 第一行一个数 n 表示这个序列 a ...
- NC16544 简单环
题目链接 题目 题目描述 给定一张n个点m条边的无向图,求出图中所有简单环的数量.(简单环:简单环又称简单回路,图的顶点序列中,除了第一个顶点和最后一个顶点相同外,其余顶点不重复出现的回路叫简单回路. ...
- NVME(学习笔记_杂谈)
NVME 协议中一些概念的理解: 1.Namespace :可以将Namespace 理解为一片Logic Block的区域,一个Controller可以支持多个Namespace,每个Namespa ...
- USB至串口TTL转接设备及Console线
USB转串口常见芯片方案 FT232, FTDI(英国) 公认稳定可靠, 传输速率3Mbps, 功能最强, 单芯片内置SPI,TWI,JTAG,GPIO等功能. FT232BM为较早型号, FT232 ...
- Java Socket编程系列(一)开发一次性会话的Server和Client
关于什么是Socket: A socket is one end-point of a two-way communication link between two programs running ...
- JVM运行时参数
JVM运行时参数 JVM运行时参数是用于配置和调整Java虚拟机的行为和性能的参数.这些参数可以在启动Java应用程序时通过命令行或配置文件进行设置,合理配置参数可以使JVM虚拟机的达到更好的性能,降 ...
- kafka节点故障恢复原理
Kafka的LEO和HW LEO LEO是Topic每一个副本的最后的偏移量offset+1 HW(高水位线) High WaterMark是所有副本中,最小的LEO Follower副本所在节点宕机 ...
- 【Azure 应用服务】Function App / App Service 连接 Blob 报错
问题描述 因 Blob 启用了防火墙功能,但是当把App Service 或 Function App的出站IP地址都加入到Blob的白名单中,为什么访问还是403错误呢? 问题解答 Azure St ...
- clickhouse 安装启动报<Error> Application: DB::Exception: There is no profile 'default' in configuration file. 以及常见的错误的总结
1.启动时报错<Error> Application: DB::Exception: There is no profile 'default' in configuration file ...