web ssh

article/2025/10/2 17:41:40

前言:

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

一是忙于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的魅力!

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

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

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

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

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

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

预览地址http://www.itnihao.com/opsadmin/opsadmin-view.html


本文出自 “itnihao的运维技术博客” 博客,请务必保留此出处http://itnihao.blog.51cto.com/1741976/1311506


http://chatgpt.dhexx.cn/article/D1TTUXEu.shtml

相关文章

Docker 配置WebSSH

1、基于DockerHub Centos镜像 docker pull centos:centos7 2、 Centos镜像存在的一个自身问题:启动后的容器内部无法使用systemctl命令 Failed to get D-Bus connection: Operation not permitted ## docker run -dit eeb6ee3f44bd /bin/bash ## 切勿忘记宿主机防…

什么是Webshell?

一、什么是Webshell? 顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限。由于webshell其大多是以动态脚本的…

Flask框架:运用SocketIO实现WebSSH

Flask 框架中如果想要实现WebSocket功能有许多种方式,运用SocketIO库来实现无疑是最简单的一种方式,Flask中封装了一个flask_socketio库该库可以直接通过pip仓库安装,如下内容将重点简述SocketIO库在Flask框架中是如何被应用的,最…

网页终端直接操作linux系统【webssh】

1、安装pip linux系统默认都安装了python,但不一定安装了pip,所以先安装pip 我的系统中默认安装的是python2.7版本 curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py python get-pip.py 安装成功如图 2、安装webssh pip install w…

离线 安装webssh

1 安装包 和 webssh 代码准备 1 cmake 安装 安装参考文档: 文档地址 下载地址 $ tar xvfz cmake-3.24.2-linux-x86_64.tar.gz 配置环境全局变量 $ vim /etc/profile ​ # 添加 export PATH/root/webterminal/cmake-3.18.0-Linux-x86_64/bin:$PATH ​ $ source /etc/profil…

webshell是什么?

webshell是什么? 百度百科的定义:webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文…

Docker 容器内体验 WebSSH

Docker容器内体验 WebSSH 项目地址: https://pypi.org/project/webssh/ 容器创建 docker run -tid --name centos -p 8888:8888 -p 122:22 centos:7 /bin/bash # 启动容器写个比较呆的shell脚本&#xff0c;方便安装 cat <<EOF > wssh.sh yum -y install epel-re…

golang实现WebSSH的功能

在最近一次需求里&#xff0c;需要实现一个webSSH的功能&#xff0c;就是把terminal搬到web中来。要实现这个功能&#xff0c;可以采用websocketssh来说实现 1.第一步实现websocket websocket主要是ws或wss协议&#xff0c;其原理就是http协议升级成ws协议&#xff0c;即ws是…

纯Java实现一个网页版的Xshell

前言 最近由于项目需求&#xff0c;项目中需要实现一个WebSSH连接终端的功能&#xff0c;由于自己第一次做这类型功能&#xff0c;所以首先上了GitHub找了找有没有现成的轮子可以拿来直接用&#xff0c;当时看到了很多这方面的项目&#xff0c;例如&#xff1a;GateOne、webss…

webssh

vue djangolinux实现webssh 技术栈 xterm.js&#xff1a;做到vue的表现型 websocket&#xff1a; 做vue和django之间的通信 paramiko&#xff1a; 建立SSH连接通道 ssh&#xff1a; 与linux进行连接 threading&#xff1a;多条数据返回前端&#xff0c;io密集型&#xff0c;用…

webSSH如何安装?如何使用?解决Web端远程连接终端~~运维篇

Hi~由于博主公司业务有相当多的Linux终端设备&#xff0c;每次连上设备需要使用到外部工具&#xff0c;如&#xff1a;Xshell&#xff0c;每次都得去输入IP&#xff0c;端口&#xff0c;账号&#xff0c;密码相当的繁琐&#xff1b;偶尔看到阿里云远程连接终端功能挺有意思的&a…

超强功能WebSSH安装,解决Web远程SSH终端

项目地址&#xff1a;https://github.com/huashengdun/webssh 一个简单的 Web 应用程序&#xff0c;用作 ssh 客户端以连接到您的 ssh 服务器。它是用 Python 编写的&#xff0c;基于 tornado、paramiko 和 xterm.js。 特征&#xff1a; 支持SSH密码认证&#xff0c;包括空密…

webssh —— 浏览器上的终端

需求 近期接到一个需求&#xff0c;实现一个运行在浏览器上的终端&#xff0c;用于快速连接到公司设备。 Tip&#xff1a;只求实现的可直接跳到 「最终方案」 处 。 需求有以下几点 1、设备都不在公网状态下 2、webshell 需要免密登陆 3、动态连接的端口、账号、密码 4、可显…

webssh的安装与使用

最近研究了一下在web端实现一个远程连接终端操作的类似网页版xshell的实现。在网上搜索了一下发现已经有类似的操作在这里主要介绍以下两种。 https://github.com/huashengdun/websshhttps://github.com/billchurch/WebSSH2 我用的是虚拟机centos7系统&#xff0c;别的linux系…

简单分析实现运维利器---webssh终端

背景 现在几乎所有东西都向往着自动化,在运维界更是如此,运维人员都向往自动化代替人工操作、解决人工操作大量重复性工作的问题、故障主动恢复:及时发现;流程;解决。运维规范化:角色定义和责任划分、流程化等。但这些种种的目的,都离不开非常细小的技术支持,下面我们…

WebsocketWebSSH

什么是WebSSH? webssh 泛指一种技术可以在网页上实现一个 SSH 终端ssh终端&#xff1a;用来通过ssh协议&#xff0c;连接服务器进行管理运维开发方向&#xff1a;堡垒机登录、线上机器管理&#xff08;因为运维人员不可能24小时携带电脑&#xff09;在线编程&#xff1a;提供…

WebSSH神器sshwifty的安装与使用

本文章最初发表在XJHui’s Blog&#xff0c;未经允许&#xff0c;任何人禁止转载&#xff01; 为使您获得最好的阅读体验&#xff0c;强烈建议您点击 这里 前往 XJHui’s Blog 查看&#xff01; WebSSH工具 初衷 9.9买的一年服务器&#xff0c;不用实属可惜由于是计算机专业…

Sql Server查看表结构

1、表结构 2、通过 t abc 查询出的表结构 3、存储过程 t CREATE proc t TableName nvarchar(200) as SELECT (select top 1 isnull(value,) from sys.extended_properties ex_p where…

sql 查看表结构改动的记录

系统更新迭代比较大的情况&#xff0c;可能改动了比较多的数据库&#xff0c;留个笔记。。 select * from sys.objects order by modify_date desc 这句是查看数据库表的改动&#xff0c;希望对自己有帮助 -20180613

Access、SQLServer以及SQLite如何查询数据表结构

日期&#xff1a;2021年11月05日 作者&#xff1a;Commas 注释&#xff1a;整理了一下不同数据库如何获取数据表结构&#xff0c;比较有意思的玩法就是将不同数据库进行相互转换&#xff0c;由于篇幅问题&#xff0c;暂且仅讨论"数据表结构"的获取…… 目录 文章目录…