运维堡垒机----Gateone
简介:
运维堡垒机的理念起源于跳板机。2000年左右,高端行业用户为了对运维人员的远程登录进行集中管理,会在机房里部署跳板机。跳板机就是一台服务器,维护人员在维护过程中,首先要统一登录到这台服务器上,然后从这台服务器再登录到目标设备进行维护。
但跳板机并没有实现对运维人员操作行为的控制和审计,使用跳板机过程中还是会有误操作、违规操作导致的操作事故,一旦出现操作事故很难快速定位原因和责任人。
2004年,人们认识到跳板机的不足,提出了以下运维操作管理理念:
理念一:唯有控制才能真正解决问题
审计是事后行为,从来没有事前审计一说
审计可以发现问题,但是无法防止问题发生
只有在事前严格控制,才能从源头真正解决问题
理念二:系统账号无法确认用户身份
系统账号的作用只是区分工作角色
多人共用一个系统账号是合理的
运维人员的流动不应影响系统账号
理念三:人为操作难免会出问题
人有失手,马有失蹄
不怕出问题,就怕出问题找不到原因
只要机器能做的,就不要人做
在这些理念的指引下,2005年前后,奇智科技研发出世界第一台运维堡垒机,自此运维堡垒机以一个独立的产品形态被广泛部署,有效地降低了运维操作风险,使运维操作管理变得更简单、更安全!
同时,首台运维堡垒机的访问代理模式,对运维人员的身份认证、对运维操作的访问控制和审计等功能,都被运维堡垒机产品一直沿用至今。
Gateone
安装部署
直接git下来就行
github地址:
https://github.com/liftoff/GateOne
git clone https://github.com/liftoff/GateOne.git
或者直接wget
wget https://codeload.github.com/liftoff/GateOne/zip/master
unzip master.zip
cd GateOne-master/
python setup.py install
gateone # 执行启动命令
# 默认使用443端口
配置文件
[root@linux-node1 ~]# tree /etc/gateone/
/etc/gateone/
├── conf.d
│ ├── 10server.conf
│ ├── 20authentication.conf
│ └── 50terminal.conf
└── ssl
├── certificate.pem
└── keyfile.pem

他是可以进行日志回放的,但是他也不是进行视频的录制,而是将他的内容存放到log中,通过javascript的方式展示出来。
下面咱们分析下他是怎么回放的
[root@linux-node1 logs]# cd /usr/lib/python2.7/site-packages/gateone-1.2.0-py2.7.egg/gateone/applications/terminal/
[root@linux-node1 terminal]# ./logviewer.py --flat /var/lib/gateone/users/ANONYMOUS/logs/20160120105930970679-192.168.56.1.golog
其实就是使用上面的那个简本对日志数据进行的回放
gateone还可以嵌入到其他的平台中,嵌入方式如下:
[root@linux-node1 hello_embedded]# ll
total 20
-rw-r--r-- 1 root root 1050 Nov 23 02:26 certificate.pem
-rwxr-xr-x 1 root root 2248 Nov 23 02:26 hello_embedded_world.py
-rw-r--r-- 1 root root 1679 Nov 23 02:26 keyfile.pem
-rw-r--r-- 1 root root 176 Nov 23 02:26 README
drwxr-xr-x 3 root root 4096 Nov 23 02:26 static
[root@linux-node1 hello_embedded]# pwd
/usr/local/src/GateOne-master/gateone/tests/hello_embedded
[root@linux-node1 hello_embedded]# ./hello_embedded_world.py --address=192.168.56.11
Now listening on https://192.168.56.11:443
这里的端口是可以自己指定的 --port=8888
然后访问

运维堡垒机----Gateone的更多相关文章
- 一次运维-堡垒机多次跳转导出及导入mysql数据库
1. 场景描述 记录一次运维,朋友公司要从线上环境同步数据到测试环境,因为公司监管问题,导致数据无法从线上获取,需要通过vpn,堡垒机,3次跳转到目标主机,通过命令导出mysql数据文件,然后再将数据 ...
- 运维堡垒机(跳板机)系统 python
相信各位对堡垒机(跳板机)不陌生,为了保证服务器安全,前面加个堡垒机,所有ssh连接都通过堡垒机来完成,堡垒机也需要有 身份认证,授权,访问控制,审计等功能,笔者用Python基本实现了上述功能. A ...
- 齐治运维堡垒机后台存在命令执行漏洞(CNVD-2019-17294)分析
基本信息 引用:https://www.cnvd.org.cn/flaw/show/CNVD-2019-17294 补丁信息:该漏洞的修复补丁已于2019年6月25日发布.如果客户尚未修复该补丁,可联 ...
- 开源堡垒机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 ...
- Python之路-python(堡垒机)
运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒机所具备的 ...
- day11 堡垒机
项目实战:运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒 ...
- Python之路,Day12 - 那就做个堡垒机吧
Python之路,Day12 - 那就做个堡垒机吧 本节内容 项目实战:运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多 ...
- Day12 - 堡垒机开发
Python之路,Day12 - 那就做个堡垒机吧 本节内容 项目实战:运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多 ...
随机推荐
- SAP SM13 V2更新队列批量执行
SE38输入程序名RSM13005 Function Module 输入MCEX_UPDATE_03 Client 输入800 其他默认 执行
- 20155305《信息安全系统设计基础》10月18日课堂 fork,exic,wait
20155305<信息安全系统设计基础>10月18日课堂 fork,exic,wait fork()函数 1.fork函数作用 一般来讲, 我们编写1个普通的c程序, 运行这个程序直到程序 ...
- 回顾RAC安装过程中对ASM的处理
1 首先建立好节点间共享的磁盘,要注意从各节点看到的磁盘的序号.名称一致. 2 通过某一个节点,对共享磁盘进行格式化. 3 在Grid Infrastructure 中, 有一个为OCR选择存储介质的 ...
- PyQt5 结合 matplotlib 时,如何显示其 NavigationToolbar
本文目的:展示 PyQt5 结合 matplotlib 时,如何显示其 NavigationToolbar. 本人搜遍所有网络无果,没办法,查看PyQt5源代码,最终才搞明白...特此留记. 〇.Py ...
- 任务队列和异步接口的正确打开方式(.NET Core版本)
任务队列和异步接口的正确打开方式 什么是异步接口? Asynchronous Operations Certain types of operations might require processi ...
- 洛谷P1514 引水入城
洛谷P1514 引水入城 原题链接 一道好题...细节真多 第一次提交90分,然后就GG了,不知从何改起 其实比较简单吧... 首先,一个点的水流向最后一排,一定可以形成一个区间. 不行的话肯定GG ...
- C/C++ 下mysql应用封装(连接增删改查)
mysql - 初始化 1) mysql_init():初始化数据库 2) mysql_real_connect()(不推荐用Mysql_connect()):连接数据库 详细代码如下: bool d ...
- Python range() 函数用法
函数语法 range(start, stop[, step]) 参数说明: start: 计数从 start 开始.默认是从 0 开始.例如range(5)等价于range(0, 5); stop: ...
- selenium +java 多个类公用driver问题
问题点:太久没有写selenium代码,居然把driver公用的问题忘记了,即:每写一个测试类,执行过程中都会新建一个窗口,这样应该说是非常不专业的. 大概想了一个方法,虽然看起来也不怎么专业,但感觉 ...
- HDU-4055:Number String
链接:HDU-4055:Number String 题意:给你一个字符串s,s[i] = 'D'表示排列中a[i] > a[i+1],s[i] = 'I'表示排列中a[i] < a[i+1 ...