分享

开源web终端ssh解决方案

 lycbje 2014-11-13

好久都没来写博客,最近忙啥去了呢?

一是忙于saltstack的二次开发,二是云计算的学习研究中,所以就一直没写东西,今天给大家介绍个工具。

1. 首先来说一下为什么要 web ssh?

许多人不是说,有了 xshell secureRT putty 等众多的 ssh 终端,为嘛还要弄个 web ssh ,不是够二的吗?难道是为了装像么?

有个 web ssh ,的确没有多大作用,的确无法代替 ssh 客户端,但是你想过没有,类似于 xshell secureRT putty ,在运维管理中确实有很多麻烦,不同的用户,需要不同的登录名,授权等等管理,而且存在一定的风险,比如个人电脑被攻击等等安全问题?

2. 是否有解决方案呢?

其实,很多公司目前都会用堡垒机,跳板机等一系列安全措施来防止系统非法访问,有不少公司都已经实现了登录系统需要手机验证码了,当然这个会更安全 , 确实为一种安全解决方案。

3. 是否还有其他解决方案呢?

那么,这里我推荐一个可以替代运维堡垒机的功能的一个软件,那就是这里的 gateone

在说运维堡垒机之前,先来了解下什么是运维堡垒机?

运维堡垒机的理念起源于跳板机

理念一:唯有控制才能真正解决问题

理念二:系统账号无法确认用户身份

理念三:人为操作难免会出问题

可以看到,运维堡垒机具有对 运维人员的身份认证、对运维操作的访问控制和审计等功能 (来自看百度百科的解释 http://baike.baidu.com/view/4274690.htm

4.推荐方案

可以看到,运维堡垒机好处很多,有效的控制了运维风险,而今天给大家介绍的 gateone ,就是一套自己的开源堡垒机解决方案。

5. Gateone 的简介

个人认为 gateone 是一个高端大气上档次的 web ssh ,同类产品中,其他不是体验不好,就是界面看着不顺眼,有的还带着细微的 bug ,知道遇到了 gateone ,才觉得 web ssh 原来可以这么好用。

不妨看看都有哪些web的ssh终端

https://github.com/aluzzardi/wssh

https://code.google.com/p/shellinabox

http://code.google.com/p/web-shell

https://github.com/antonylesuisse/qweb

GateOne 是一款 使用 HTML5 技术编写的网页版 SSH 终端模拟器

· 基于现代的 HTML5 技术, 无需任何浏览器插件 。

· 支持 多个 SSH 进程

· 可以嵌入到其他任意应用程序中。

· 支持 使用 JavaScript Python 甚至纯 CSS 编写的插件

· 支持 SSH 进程副本,打开多个进程而无需重复输入密码。

· 支持各种 服务器端的日志功能 ,支持 Keberos-based 单点登录甚至活动目录。

· 支持操作日志记录,具有操作记录回放功能

项目地址 https://github.com/liftoff/GateOne

开发语言 python

当前版本 1.1

【防盗链,本文出自 http://itnihao.blog.51cto.com/1741976/1311506

6. 安装 gateone

我的系统版本是CentOS release 6.4 64bit

浏览器版本是chrome 30,看官方文档,gateone在ie浏览器不受支持(鄙视ie,虽然我的电脑上有ie浏览器,但是一直都让其躺着睡打觉的),支持的浏览器有chrome,firefox,所以若是你用ie不能显示……

#wget https://github.com/downloads/liftoff/GateOne/tornado-2.4-1.noarch.rpm

#wget https://github.com/downloads/liftoff/GateOne/gateone-1.1-1.noarch.rpm

# rpm -ivh http://mirrors.sohu.com/fedora-epel/6Server/x86_64/epel-release-6-8.noarch.rpm(epel源,可以不用安装的)

234139372.png

234139303.png

# yum localinstall tornado-2.4-1.noarch.rpm
# yum localinstallgateone-1.1-1.noarch.rpm
# easy_install install ordereddict

234139984.png

#cd  /opt/gateone
#./gateone.py
#运行这个脚本,会生成server.conf配置文件

假如出现以下错误

235039294.png

是提示你没有安装 ordereddict

好了,启动服务

#cd /opt/gateone

#./gateone.py

如果你想让其后台运行,请使用serveri来启动

# /etc/init.d/gateone start

235350478.png

ok,服务启动成功,通过浏览器去访问

我的ip地址是192.168.0.201

所以访问地址为https://192.168.0.201,点击继续

234140716.png

如果出现以下提示信息,则按照以下步骤处理即可

235601194.png

提示此url访问被拒绝了,看web日志如下

234140995.png

1.修改

#vim /opt/gateone/server.conf

235741407.png

235744111.png

如果一切顺利,讲看到如下界面

234140308.png

234142290.png

哈哈,终于进入系统, ls 以下

234142126.png

来个 vim /etc/passwd 试试

234145288.png

别急,还有日志审计功能,支持日志回放哦!

000013885.png

一个屏是不是有些单调呢,来,开 4 个屏试试

234146299.png

还有更多好玩的功能,显示图片

000345634.png

000351593.png

000404963.png

000410466.png

怎么样,如果还没有看够,建议你赶快动手试试?去体验以下 web ssh 的魅力!

怎么样,是不是高端大气上档次?

【防盗链,本文出自 http://itnihao.blog.51cto.com/1741976/1311506

8. 说了这么多,不是说好的要弄什么运维堡垒机的功能吗,我怎么没有看到,别急,这正是我要说的功能。

Gateone 提供了基于 web ssh 功能,那么,资产系统,运维系统,其他用户权限分配系统,以及日志回放功能,需要 devops 自己去开发,结合 gateone ,保证让你玩的爽歪歪,至于怎么去开发这个堡垒机功能的系统,自己慢慢体会哦,这里就点到为止!

学习贵在举一反三,欢迎有新想法的童鞋一起交流哦!

另外,本人以前搞过一个opsadmin项目,各位有兴趣的可以看看,同时也欢迎大家共同参与 https://github.com/itnihao/opsadmin

http://www./opsadmin/opsadmin-view.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多