安装与首次运行
四个平台,一个内核。挑好安装包,解锁保险库,连上去。同步服务器是可选的,放在最后。
安装
所有安装包都在发布页上。安装过程中不会向任何地方回传数据。
Linux — AppImage,免安装直接运行
chmod +x Skerry-*.AppImage ./Skerry-*.AppImage需要 FUSE。没有的话,加 --appimage-extract-and-run 运行。
Linux — Debian、Ubuntu
sudo apt install ./skerry_*_amd64.debLinux — Fedora、RHEL
sudo dnf install ./skerry-*.x86_64.rpmWindows — .msi 安装包
构建未做代码签名:SmartScreen 会提示“Windows 已保护你的电脑”→ 更多信息 → 仍要运行。便携版 .zip 不需要安装。
macOS — .dmg,Apple Silicon 或 Intel
未签名也未公证:首次启动请右键点击应用 → 打开。“显示简介”里的版本号是 1.x.y,只因为 macOS 打包要求主版本号 ≥ 1 —“关于”界面显示的才是真实版本。
Android — 已签名的 .apk,手动安装
需 Android 8.0 及以上,arm64-v8a。系统询问时,允许从浏览器或文件管理器安装。
校验下载文件
每个版本都会在安装包旁附上 SHA256SUMS.txt。
拿它核对你下载到的文件
sha256sum -c --ignore-missing SHA256SUMS.txtWindows 上用:certutil -hashfile Skerry-x.y.z.msi SHA256,然后肉眼比对。
首次运行
设置主密码
它用来加密本地保险库,只留在设备上,且无法找回 — 忘了它,数据就再也解不开。Android 上之后可以在 更多 → 安全 里加上生物识别解锁。
添加主机 — 新建连接
地址、端口、用户,然后是密钥或密码。凭据进的是保险库,不是配置文件。
或者把已有的导进来
新建连接 → 从 ssh_config 导入,会读取 ~/.ssh/config 并列出主机供你挑选。密钥不会被导入 — 认证方式在连接时再设定。
给生产主机打标签
打了 prod 标签的主机,每条命令都会过一遍风险检查;破坏性的那条会停下来等你确认。
自建同步服务器
可选。没有它 Skerry 也完全够用 — 它只是为了让多台设备共用一个保险库。这里没有厂商云。
把容器跑起来
docker run -d --name skerry-sync -p 8080:8080 \ -e SKERRY_JWT_SECRET="$(openssl rand -base64 48)" \ -e SKERRY_ADMIN_TOKEN="$(openssl rand -hex 16)" \ -v skerry-data:/data \ secherkasov/skerry-sync:latestSQLite 放在具名卷里,零配置。SKERRY_JWT_SECRET 要留好 — 改了它,所有人都会被登出。
让应用指向它
设置 → 同步 → 服务器地址,然后注册或登录。服务器用 SRP-6a 验证你的密码,自始至终收不到密码本身。
关联第二台设备
在已登录的设备上:设置 → 同步 → 关联设备,然后用另一台扫码。
服务器自带 Web 控制台
/ 是公开页,/account 是你的账号区,/console 是运维视图 — 都由同一个容器提供,完全离线可用。
用 PostgreSQL 替代 SQLite
把 docker-compose.yml 里的 db 服务和 postgres 变量取消注释即可。完整部署指南 — TLS、备份、API — 在 server/README.md 里。
从源码构建
需要 JDK 21;机器上没有的话,Gradle 的 toolchain resolver 会自己拉一个。产出的安装包对应执行构建那台机器的系统与架构。
克隆仓库
git clone https://github.com/SeCherkasov/SkerrySSH.git cd SkerrySSH运行桌面版
./gradlew :composeApp:run打包
./gradlew :composeApp:packageDistributionForCurrentOS # .deb / .rpm / .msi / .dmg ./gradlew :composeApp:packageAppImage # 便携版 Linux .AppImageAndroid
ANDROID_HOME=$HOME/Android/Sdk ./gradlew :androidApp:installDebug只要服务器,不装 Android SDK
./gradlew :server:run -PserverOnly