WebSSH2:基于浏览器的 SSH 终端搭建与配置
WebSSH2 是一个基于 HTML5 的网页终端模拟器和 SSH 客户端。它使用 SSH2 作为客户端,通过 WebSocket/Socket.io 连接到 SSH 服务器,实现真正的浏览器端 SSH 访问。
核心优势
- 零安装 - 直接通过浏览器访问
- 多重认证 - 支持密码、私钥、键盘交互等多种认证方式
- 响应式设计 - 完美适配桌面和移动设备
- 高度可定制 - 支持主题、字体和终端设置
快速安装部署
Docker 方式(推荐)
使用 Docker 是最简单的部署方式:
docker pull ghcr.io/billchurch/webssh2:latest
docker run --rm -p 2222:2222 ghcr.io/billchurch/webssh2:latest
源码安装方式
如果你喜欢从源码开始:
git clone <项目仓库地址>
cd webssh2
npm install --production
npm start
安装完成后,在浏览器中访问 http://localhost:2222/ssh 即可开始使用。
基本配置指南
WebSSH2 遵循 12 要素应用原则,优先使用环境变量进行配置:
# 基础配置
export WEBSSH2_LISTEN_PORT=2222
export WEBSSH2_SSH_HOST=ssh.example.com
export WEBSSH2_HEADER_TEXT="我的 WebSSH2 服务器"
认证方式详解
密码认证
最简单直接的认证方式,适合个人用户和测试环境。
私钥认证
更安全的认证方式,适合生产环境使用。
键盘交互认证
支持多因素认证,提供更高的安全性。
文件传输功能
从 v2.6.0 版本开始,WebSSH2 支持 SFTP 文件传输。你可以直接在浏览器中上传和下载文件,大大提升了操作的便利性。
高级功能特性
执行通道(Exec Channel)
无需打开 shell 即可执行命令,适合自动化脚本和 API 集成。
环境变量转发
可以将自定义环境变量传递到 SSH 会话中,满足复杂的应用场景需求。
子网限制
支持 IPv4/IPv6 CIDR 子网验证,提供精确的访问控制。
实用场景展示
远程服务器管理
随时随地通过浏览器管理你的云服务器,无需安装 SSH 客户端。
移动设备访问
在手机或平板上轻松连接 SSH 服务器,实现真正的移动办公。
团队协作
为团队成员提供统一的 SSH 访问入口,简化权限管理。

