用了两周开源堡垒机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年前是这样. 安装过程: ...
随机推荐
- NC14545 经商
题目链接 题目 题目描述 小d是一个搞房地产的土豪.每个人经商都有每个人经商的手段,当然人际关系是需要放在首位的. 小d每一个月都需要列出来一个人际关系表,表示他们搞房地产的人的一个人际关系网,但是他 ...
- NC17508 指纹锁
题目链接 题目 题目描述 HA实验有一套非常严密的安全保障体系,在HA实验基地的大门,有一个指纹锁. 该指纹锁的加密算法会把一个指纹转化为一个不超过1e7的数字,两个指纹数值之差越小,就说明两 ...
- 使用OpenWrt实现IPv6 DDNS
OpenWrt 增加 crontab 任务 在/root/crontab/ 目录下, 创建脚本 ddns.sh #!/bin/sh # 远程php脚本的URL地址 SERVICE_URL=http:/ ...
- 【Unity3D】空间和变换
1 空间 1.1 左右手坐标系及其法则 1.1.1 左右手坐标系 左手坐标系与右手坐标系 Unity 局部空间.世界空间.裁剪空间.屏幕空间都采用左手坐标系,只有观察空间采用右手坐标系. 左右 ...
- 我的小程序之旅九:微信开放平台unionId机制介绍
一.机制说明 参考文档:https://developers.weixin.qq.com/minigame/dev/guide/open-ability/union-id.html 如果开发者拥有多个 ...
- 非常好用的VS Code插件
Auto-Collapse Explorer 如果希望在VS Code编辑器中打开文件的时候自动展开对应的目录结构,需要开启"Auto Reveal". 具体设置步骤: 1.打开设 ...
- 项目实战:Qt监测操作系统cpu温度v1.1.0(支持windows、linux、国产麒麟系统)
需求 使用Qt软件开发一个检测cpu温度的功能. 兼容windows.linux,国产麒麟系统(同为linux) Demo windows上运行(需要管理员权限): 国产麒麟操作上运 ...
- 【LeetCode回溯算法#09】全排列,排列问题以及其中涉及的去重操作
全排列 力扣题目链接 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 .你可以 按任意顺序 返回答案. 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1, ...
- 【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
问题描述 使用 .NET Azure.Identity 中的 DefaultAzureCredential 认证并连接到Azure Key Vault中, 在Key Vault 的示例中,并没有介绍如 ...
- 【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
问题描述 使用6379端口连接Azure Redis服务,连接失败.因为默认情况下Azure Redis的设置没有打开6379的端口.需要使用SSL(6380端口)进行连接,但是遇见了无法连接的问题. ...