文档

快速开始 + 每部分每设备的功能说明(持续更新中)

安装与卸载

本文详细说明如何安装、升级与卸载 SSH Everywhere 面板,重点讲清「改了安装目录后怎么卸载」以及命令里的格式细节(空格、引号)。

1. 安装(一行命令)

在一台有公网 IP 的 Linux 服务器上运行:

curl -fsSL https://ssheverywhere.com/install.sh | bash

脚本会自动完成:检测系统 → 安装依赖(Python3 / venv / pip / git / curl)→ 下载代码 → 建虚拟环境 → 安装 Python 依赖 → 注册并启动 systemd 服务。

支持 Debian / Ubuntu / CentOS / Rocky / AlmaLinux / Fedora / WSL(无 systemd 时自动改用后台运行)。

安装参数

参数说明示例
`--lang zh\en`语言(默认按系统环境自动判断)--lang en
--dir <目录>安装目录(默认 /opt/ssh-everywhere--dir /opt/my-panel
--port <端口>面板端口(默认 5501--port 8080

管道方式传参要加 bash -s --

curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --dir /opt/my-panel --port 8080

也可以先下载再运行(交互式,会逐步询问语言、目录、升级确认):

curl -fsSL https://ssheverywhere.com/install.sh -o install.sh && bash install.sh

> 大厂云(腾讯云 / 阿里云)默认禁用 root 登录,普通用户对 /opt 无写权限时,脚本会自动改推荐安装到你的 HOME 目录(~/ssh-everywhere),无需手动处理。

2. 升级

再次运行安装命令即可,脚本内置版本检测,发现新版本会提示升级(数据保留、全自动):

curl -fsSL https://ssheverywhere.com/install.sh | bash -s -- --yes

--yes 表示升级时自动确认,无需交互。

3. 卸载

默认目录卸载(交互式,推荐)

curl -fsSL https://ssheverywhere.com/uninstall.sh -o uninstall.sh && bash uninstall.sh

脚本会先列出待卸载内容并询问确认,输入 yes 才会执行。

非交互 / 脚本化卸载

--yes 跳过确认(安全校验仍保留):

curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --yes

卸载参数

参数说明
--dir <目录>安装目录(默认 /opt/ssh-everywhere改过目录时必须指定
--keep-data卸载前把 data(服务器配置 / 数据库)备份成 tar 包
--yes非交互模式下确认卸载

4. 改了安装目录怎么卸载?(重点)

安装时如果用了 --dir 改了目录,卸载时必须用同样的 --dir 指定,否则脚本找不到安装目录会自动中止(这是安全保护,防止误删)。

目录路径不含空格

curl -fsSL https://ssheverywhere.com/uninstall.sh -o uninstall.sh && bash uninstall.sh --dir /opt/my-panel

管道方式(--dir 放在 bash -s -- 之后):

curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --dir /opt/my-panel --yes

目录路径含空格

如果目录名里带空格,必须用双引号把整个路径包起来,否则 shell 会把路径拆成两段、脚本找不到目录:

bash uninstall.sh --dir "/opt/my panel"

管道方式同理(引号包住整个路径,别只包一半):

curl -fsSL https://ssheverywhere.com/uninstall.sh | bash -s -- --dir "/opt/my panel" --yes

想保留数据再卸载

bash uninstall.sh --dir /opt/my-panel --keep-data

data(服务器配置 / 数据库)会被备份到 <安装目录>-data-backup-<时间戳>.tar.gz,卸载后可找回。

> 💡 建议:安装时就避免在目录名里用空格,改用短横线或下划线(如 my-panelmy_panel),能省掉引号带来的麻烦。

5. 安全说明

卸载脚本内置三层保护,避免误删:

1. 绝对路径校验 —— 拒绝相对路径。

2. 系统关键目录黑名单 —— 拒绝 //root/etc/usr/var 等。

3. 安装目录指纹校验 —— 必须同时存在 VERSIONapp.py 才会删除,否则中止。

> 卸载只删除面板本身,目标服务器 / 设备上的 Agent 不受影响(面板删除后它们会显示离线)。