项目地址:https://github.com/huashengdun/webssh

一个简单的 Web 应用程序,用作 ssh 客户端以连接到您的 ssh 服务器。它是用 Python 编写的,基于 tornado、paramiko 和 xterm.js。

特征:

  • 支持SSH密码认证,包括空密码。
  • 支持 SSH 公钥认证,包括 DSA RSA ECDSA Ed25519 密钥。
  • 支持加密密钥。
  • 支持两因素身份验证(基于时间的一次性密码)。
  • 支持全屏终端。 终端窗口可调整大小。 自动检测 ssh 服务器的默认编码。
  • 支持现代浏览器,包括 Chrome、Firefox、Safari、Edge、Opera。

WebSSH安装

方式一:在线安装

通过pip安装webssh

pip install webssh

方式二:离线安装

通过git或下载离线包方式,将源码下载至本地

# 下载源码
git clone https://github.com/huashengdun/webssh.git
# 进入目录
cd webssh
# 安装wenssh
python setup.py install

如果环境中没有libffi等包,先通过以下指令安装

sudo apt-get install build-essential libssl-dev libffi-dev python-dev

启动webssh

wssh

出现[I 221111 11:26:57 main:39] Listening on :8888 (http)提示表示已经启动成功了
超强功能WebSSH安装,解决Web远程SSH终端

访问wenssh

访问 http://ip:8888 即可
超强功能WebSSH安装,解决Web远程SSH终端
超强功能WebSSH安装,解决Web远程SSH终端

使用

后台启动

nohup wssh --fbidhttp=False &

8888端口占用

通过lsof指令查看端口占用情况

lsof -i:8888

再通过kill指令杀死进程

kill -9 pid # pid为对应的端口号

访问403

error:webssh Public plain http request is forbidden.

wssh拦截了http请求,通过--fbidhttp=False参数开放http请求

wssh --fbidhttp=False

在iframe中使用

若出现"XSRF cookie does not match POST argument"提示,通过添加参数wssh --xsrf=False禁用XSRF。

wssh --xsrf=False

通过get请求实现自动登录

访问http://ip:8888/?hostname=服务器地址&username=账号&password=base64加密后的密码&port=端口

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

改变背景色和字体颜色

通过请求访问时,可以增加#fontcolor=black&bgcolor=white参数。访问http://ip:8888/#fontcolor=black&bgcolor=white
超强功能WebSSH安装,解决Web远程SSH终端

参考:
webssh
issue #263

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。