运维堡垒机----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

 Image

他是可以进行日志回放的,但是他也不是进行视频的录制,而是将他的内容存放到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

然后访问

Image

 

 

 

 

 

 

 

 

posted @ 2016-01-20 22:09  曹小贱  阅读(4500)  评论(0编辑  收藏  举报