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

一是忙于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源,可以不用安装的)

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

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

假如出现以下错误

是提示你没有安装 ordereddict

好了,启动服务

#cd /opt/gateone

#./gateone.py

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

# /etc/init.d/gateone start

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

我的ip地址是192.168.0.201

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

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

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

1.修改

#vim /opt/gateone/server.conf

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

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

来个 vim /etc/passwd 试试

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

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

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

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

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

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

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

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

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

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

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

开源web终端ssh解决方案-gateone简介的更多相关文章

  1. Web终端SSH功能

    http://www.laozuo.org/10703.html------ CentOS安装配置GateOne实现Web终端SSH功能

  2. gateone安装(web版本ssh)

    前言: 好久都没来写博客,最近忙啥去了呢? 一是忙于saltstack的二次开发,二是云计算的学习研究中,所以就一直没写东西,今天给大家介绍个工具. 好了,开始正文! 1.首先来说一下为什么要web ...

  3. 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://freeze.blog.51cto.com/1846439/677348 此文凝聚 ...

  4. 【G】开源的分布式部署解决方案文档 - Web Deploy

    G.系列导航 [G]开源的分布式部署解决方案 - 导航 微软官方部署方式 右键项目->发布 这个大家应该再熟悉不过,在部署前有个预览界面可以看本次更新到底更新哪些文件. 既然它可以预览部署结果, ...

  5. 【G】开源的分布式部署解决方案文档 - 使用手册

    G.系列导航 [G]开源的分布式部署解决方案 - 导航 已知问题 导航没有联动 因为权限只是做了基础的登录校验,考虑到后面导航要跟权限关联上暂时是写死的. 只有部分界面使用了Vue.js 因为刚开始没 ...

  6. 支持多用户web终端实现及安全保障(nodejs)

    背景 笔者近期从事在线IDE工作的开发,作为本地IDE普遍拥有的功能,terminal(命令行)对项目的git操作以及文件操作有着非常强大的支持.而之前没有web伪终端的情况下,仅仅提供已封装好的gi ...

  7. 一篇文章读懂开源web引擎Crosswalk-《转载》

    前言 Web技术的优势早已被广大应用开发者熟知,比如可与云服务轻松集成,基于响应式UI设计的精美布局,高度的开放性,跨平台能力, 高效的分发与部署等等.伴随着移动互联网的快速发展与HTML5技术的逐步 ...

  8. 12种开源Web安全扫描程序

    转自:https://blog.csdn.net/wh211212/article/details/78620963 赛门铁克的一个有趣的报告显示,76%的被扫描网站有恶意软件 如果您使用的是Word ...

  9. 终端ssh登录mac用shell打包ipa报错:replacing existing signature

    终端ssh登录mac用shell打包ipa报错:replacing existing signature 报错原因:login.keychain被锁定,ssh登录的没有访问权限 解决方法:终端敲入 s ...

随机推荐

  1. windows查看端口占用

    查看占用端口的进程ID netstat -aon | findstr "9000" 再用进程ID查看进程 tasklist | findstr "6048"

  2. C++primer 练习15.26

    定义Quote和Bulk_Quote的拷贝控制成员,令其与合成的版本行为一致.为这些成员以及其他构造函数添加打印状态的 语句,使得我们能够知道正在运行哪个程序.使用这些类编写程序,预测程序将创建和销毁 ...

  3. OLAP如何实现数据的聚合计算-分析过程

  4. PetaPoco.Core.ttinclude修改

    /// <summary> /// Adds the singular rule. /// </summary> /// <param name="rule&q ...

  5. OC基础(22)

    NSMutableString基本概念 NSMutableString常用方法 NSMutableString练习 *:first-child { margin-top: 0 !important; ...

  6. The Ninth Hunan Collegiate Programming Contest (2013) Problem G

    Problem G Good Teacher I want to be a good teacher, so at least I need to remember all the student n ...

  7. 翻译:Knockout 快速上手 - 4: 你需要知道的顶级特性

    Knockout 最棒的一个特点就是它的可扩展性.Knockout 存在大量的扩展点,包含大量的工具来创建我们的应用程序.许多开发者除了 Knockout 核心库之外没有使用任何其他的脚本库 ( 甚至 ...

  8. 剑指Offer:面试题8——旋转数组的最小值(java实现)

    题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入 一个递增排序的数组的一个旋转 输出 旋转数组的最小元素. 例如数组{3,4,5,1,2}为{1,2,3,4,5}的 ...

  9. 关于显示gif的一些方法与讨论

    http://www.2cto.com/kf/201404/292468.html http://www.eoeandroid.com/forum.php?mod=viewthread&tid ...

  10. testng参数化方法:Parameters和DataProvider

    Parameters注解在测试方法上指定参数列表,然后在测试方法中声明对应的形参,形参与参数列表一一对应,但名字可以不同,如下所示: public class Test1 { @Parameters( ...