开源web终端ssh解决方案-gateone简介

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

前言:

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

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

好了,开始正文!

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

有人是说,有xshellsecureRTputty等众多的ssh终端,为嘛还要弄个webssh,不是够二的吗?能起多大作用?


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


2.是否有解决方案呢?

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


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

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

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

运维堡垒机的理念起源于跳板机,那么跳板机的弱势在哪里?

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

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

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

于是,产生了后来的运维堡垒机,运维堡垒机具有对运维人员的身份认证、对运维操作的访问控制和审计等功能(来自看百度百科的解释http://baike.baidu.com/view/4274690.htm,目前有不少厂家可以提供运维堡垒机产品,但是,作为devops或是运维人员,喜欢自己动手去实现功能!


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 进程

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

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

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

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

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


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

文档地址 http://liftoff.github.io/GateOne/About/

开发语言 python

框架   tornado+html5

当前版本 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不能显示……

安装gateone,可以rpm包安装,也可以源码包安装,但是本文推荐rpm包安装,源码安装就不说了,请参看官方文档

1
2
3
#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
#wget ftp://ftp.univie.ac.at/systems/linux/fedora/epel/beta/6/i386/python-ordereddict-1.1-2.el6.noarch.rpm

   ftp://ftp.univie.ac.at/systems/linux/fedora/epel/6/x86_64/python-ordereddict-1.1-2.el6.noarch.rpm

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

234139372.png

234139303.png

1
2
3
4
5
#yum localinstall tornado-2.4-1.noarch.rpm
#yum localinstallgateone-1.1-1.noarch.rpm
#rpm -ivh python-ordereddict-1.1-2.el6.noarch.rpm
#当然也可以用源码包安装ordereddict,命令如下
# easy_install install ordereddict

234139984.png

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

假如出现以下错误

235039294.png

是提示你没有安装ordereddict

好了,启动服务

#cd /opt/gateone
#./gateone.py

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

1
# /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.修改server.conf

1
#vim /opt/gateone/server.conf

235741407.png

2,好了,启动服务

235744111.png

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

234140308.png

234142290.png

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

234142126.png

来个vim /etc/passwd试试

234145288.png

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

000013885.png

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

234146299.png


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

000345634.png

000351593.png

000404963.png

000410466.png

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

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

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

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



本文转自it你好 51CTO博客,原文链接:http://blog.51cto.com/itnihao/1311506,如需转载请自行联系原作者

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
11天前
|
SQL 存储 安全
PHP 与现代 Web 应用的安全挑战与解决方案
随着 Web 应用的发展,PHP 作为一种广泛使用的服务器端脚本语言,面临着越来越复杂的安全挑战。本文探讨了当前 PHP 开发中常见的安全问题,并提供了相应的解决方案,帮助开发者构建更安全可靠的 Web 应用。 【7月更文挑战第8天】
26 1
|
1天前
|
前端开发 Python
前后端分离的进化:Python Web项目中的WebSocket实时通信解决方案
【7月更文挑战第18天】在Python的Flask框架中,结合Flask-SocketIO库可轻松实现WebSocket实时通信,促进前后端分离项目中的高效交互。示例展示了一个简单的聊天应用:Flask路由渲染HTML,客户端通过Socket.IO库连接服务器,发送消息并监听广播。此方法支持多种实时通信协议,适应不同环境,提供流畅的实时体验。
11 3
|
14天前
|
数据采集 机器学习/深度学习 数据可视化
Jupyter Notebooks和IPython是交互式数据分析利器,提升效率。Jupyter是开源Web应用
【7月更文挑战第5天】Jupyter Notebooks和IPython是交互式数据分析利器,提升效率。Jupyter是开源Web应用,支持多语言,结合IPython的交互式解释器,便于编程和科学计算。两者提供即时反馈、丰富库支持、跨语言功能及协作共享。基本流程包括:数据导入(使用Pandas)、预处理、分析(借助Pandas、NumPy、Matplotlib)、模型训练(如随机森林)和评估。
23 0
|
2月前
|
安全 Linux 网络安全
SSH 简介:安全远程访问的利器
SSH是加密网络协议,用于安全远程登录和数据传输。它基于公钥和私钥验证,加密传输确保通信安全。默认使用22端口。在Linux和macOS系统上预装,Windows需额外安装。基本用法包括远程登录(ssh username@hostname)、文件传输(scp source destination)和端口转发。推荐使用密钥对认证,限制登录尝试次数,并配置SSH代理以增强安全性。了解这些基础和技巧能提升远程服务器管理和文件传输效率。
37 3
SSH 简介:安全远程访问的利器
|
23天前
|
前端开发 Java
技术经验分享:idyll开源生成交互式web的标记语言试用
技术经验分享:idyll开源生成交互式web的标记语言试用
15 0
|
25天前
|
缓存 负载均衡 应用服务中间件
Nginx 是一个高性能的开源反向代理服务器和 Web 服务器
Nginx 是一个高性能的开源反向代理服务器和 Web 服务器
23 0
|
1月前
|
中间件 Java 生物认证
Web应用&源码泄漏&开源闭源&指纹识别&GIT&SVN&DS&备份
Web应用&源码泄漏&开源闭源&指纹识别&GIT&SVN&DS&备份
|
2月前
|
JavaScript 前端开发 数据可视化
Vue.js 与 ViewDesign:为企业级 Web 应用提供高效可靠的解决方案
Vue.js 是一款开源的渐进式 JavaScript 框架,擅长构建用户界面,适用于各种规模的应用。其特点包括渐进式设计、虚拟 DOM、响应式数据绑定和组件化。ViewDesign(前身为 iView)是基于 Vue.js 的企业级 UI 组件库,提供丰富的组件、遵循企业设计规范,并支持高度定制。两者结合,能提升开发效率、保证界面一致性、简化维护,且两者生态均得到良好支持。Vue.js 3 的支持使得开发更加现代和高效。
|
2月前
|
数据管理 关系型数据库 数据库
web2py,一个好用的开源Web应用框架!
web2py,一个好用的开源Web应用框架!
62 1
|
2月前
|
移动开发 JavaScript 前端开发
Web Worker:JavaScript的后台任务解决方案
Web Worker:JavaScript的后台任务解决方案