由 Python 代码及 JS 实现的 webssh 工具

文章
林里克斯

由 Python 代码及 JS 实现的 webssh 工具


实验平台:CentOS Linux release 7.6.1810 (Core)

Python Version:Python 3.9.0

WebSSH Version:webssh 1.5.3



一、介绍


1.官网

https://pypi.org/project/webssh/

2.功能

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

3.运行过程

+ --------- + http + -------- + ssh + ----------- +
| 浏览器| <==========> | webssh | <=======> | SSH服务器|
+ --------- + websocket + -------- + ssh + ----------- +

二、安装


1.WebSSH 是基于 Python 模块,可直接安装

$ pip3 install webssh

2.启动

$ wssh --address='10.10.10.58' --port=8080
#指定 ip 和 端口 启动

3.常用参数

$ wssh --certfile='/path/to/cert.crt' --keyfile='/path/to/cert.key'
#指定 https 访问的证书和密钥

$ wssh --policy=reject
#主机密钥策略

$ wssh --logging=debug
#指定日志级别

$ wssh --log-file-prefix=main.log
#指定日志存放路径

$ wssh --help
#参数详解

4.使用 Nginx 代理

location / {
    proxy_pass http://10.10.10.58:8080;
    proxy_http_version 1.1;
    proxy_read_timeout 300;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Real-PORT $remote_port;
}

5.URL 参数

http://localhost:8888/?hostname=xx&username=yy&password=str_base64_encoded
#传递表单数据(密码必须用base64编码,不支持privatekey)

http://localhost:8888/#bgcolor=green
#传递终端背景色

http://localhost:8888/?title=my-ssh-server
#传递用户定义的标题

http://localhost:8888/#encoding=gbk
#使用字符集编码

http://localhost:8888/?command=pwd
#传递在登录后立即执行的命令

http://localhost:8888/?term=xterm-256color
#传递终端类型

6.查看

由 Python 代码及 JS 实现的 webssh 工具


Over~

版权协议须知!

本篇文章来源于 Uambiguous ,如本文章侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意

788 0 2021-02-23


分享:
icon_mrgreen.gificon_neutral.gificon_twisted.gificon_arrow.gificon_eek.gificon_smile.gificon_confused.gificon_cool.gificon_evil.gificon_biggrin.gificon_idea.gificon_redface.gificon_razz.gificon_rolleyes.gificon_wink.gificon_cry.gificon_surprised.gificon_lol.gificon_mad.gificon_sad.gificon_exclaim.gificon_question.gif
博主卡片
林里克斯 博主大人
一个致力于Linux的运维平台
运维时间
搭建这个平台,只为分享及记载自己所遇之事和难题。

现在时间 2024-05-02

今日天气
站点统计
  • 文章总数:240篇
  • 分类总数:29个
  • 评论总数:10条
  • 本站总访问量 217881 次

@奥奥

@Wong arrhenius 牛比

@MakerFace 厉害了!