Sign inSign up

lihaixin/webssh

By lihaixin

Updated almost 4 years ago

基于alpine 构建的 amd64 arm64 镜像 WebSSH

Image
4

10K+

lihaixin/webssh repository overview

WebSSH

Build Status codecov PyPI - Python Version PyPI

基于alpine 构建的 amd64 arm64 镜像 WebSSH, 一个可以通过浏览器进行SSH连接的客户端(图形登陆),它是基于 tornado、paramiko 和 xterm.js 用 Python 编写的。

功能

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

截图

Login Terminal

此镜像优点

  • 可视化的终端功能提示(见下图)
  • 基于alpine 构建的 amd64 arm64 镜像 (<40M)
  • 支持在爱快x86_64路由器上部署,支持ORACE arm64 CPU架构部署

终端面板

      __          __         _                                                         _                   _     
       \ \        / /        | |                                                       | |                 | |    
        \ \  /\  / /    ___  | |   ___    ___    _ __ ___     ___    __      __   ___  | |__    ___   ___  | |__  
         \ \/  \/ /    / _ \ | |  / __|  / _ \  | '_ ` _ \   / _ \   \ \ /\ / /  / _ \ | '_ \  / __| / __| | '_ \ 
          \  /\  /    |  __/ | | | (__  | (_) | | | | | | | |  __/    \ V  V /  |  __/ | |_) | \__ \ \__ \ | | | |
           \/  \/      \___| |_|  \___|  \___/  |_| |_| |_|  \___|     \_/\_/    \___| |_.__/  |___/ |___/ |_| |_|
                                                                                                                  
                                                                                                                  
 # --------------------------------------------------------------------------------------------------------------- #
 # WEB在线SSH登陆小工具,部署到海外机房 特别适合需要经常测试访问外网的用户 
 # WEBSSH (外网IP) 访问地址: http://*.*.*.*:8888 (如更改映射的端口,请使用对应端口替换8888)
 # WEBSSH (内网IP) 访问地址: http://*.*.*.*:8888 (如更改映射的端口,请使用对应端口替换8888)
 # 
 # 建议搭配https反向代理安全访问: https://hub.docker.com/r/lihaixin/npm 
 # 更多信息访问网页查看: https://hub.docker.com/r/lihaixin/webssh 
 # 
 # --------------------------------------------------------------------------------------------------------------- #

原理

+---------+     http     +--------+    ssh    +-----------+
| browser | <==========> | webssh | <=======> | ssh server|
+---------+   websocket  +--------+    ssh    +-----------+

运行

CLI
docker run -id \
    --restart=always \
    --name webssh \
    --hostname webssh \
    -p 8888:8888 \
    lihaixin/webssh
docker-compose
version: "3.7"
services:
  webssh:
    image: lihaixin/webssh
    container_name: webssh
    hostname: webssh
    restart: unless-stopped
    network_mode: "bridge"                      # 修改网络共享服务名称 "bridge" "host"  "none" "service:[service name]"  "container:[container name/id] *"
    environment:
      - QQ=***                                  # 在终端显示你的QQ号码
    ports:
      - "8888:8888"

Tag summary

Content type

Image

Digest

sha256:f05083be6

Size

38.1 MB

Last updated

almost 4 years ago

docker pull lihaixin/webssh