6.7 KiB
Передача SbLauncher коллеге
Первый запуск
- Передайте
SbLauncher-v0.1.2-win-x64.zipи файл.zip.sha256либо ссылку на релиз. Если репозиторий закрыт, для скачивания по ссылке нужен доступ к нему; сам ZIP можно передать напрямую. - Коллега распаковывает ZIP в постоянную папку, например
C:\Tools\SbLauncher. Windows 10/11 x64 и .NET Framework 4.x обязательны. Устанавливать Visual Studio, собирать исходники или копировать примеры конфигурации не нужно:bin\sb.exe,doc\doc.srsи базовые серверы уже входят в архив. В комплекте используется sing-box1.12.19,windows/amd64. - Запускает
SbLauncher.exeи подтверждает запрос администратора, необходимый для TUN и сетевых маршрутов. - На вкладке «Настройки» вводит свой приватный ключ WireGuard и
свой локальный IP в формате CIDR, например
10.10.0.2/24. Эти данные должны быть выданы и зарегистрированы для него на сервере WireGuard. В режимеdirectвместо WireGuard выбирает свой сетевой адаптер. - Выбирает базовый сервер и подключается. Дополнительные личные серверы добавляет через поле импорта. При ошибке смотрит сообщение на вкладке «Лог».
Лаунчер автоматически сохраняет введённые настройки. Ваш приватный ключ, локальный IP, сетевой адаптер и личные серверы в архив не попадают.
Как устроены файлы
| Файл | Содержимое | При обновлении |
|---|---|---|
profiles.base.json |
Базовые серверы для всех и общие параметры WireGuard-сервера | Заменяется версией из релиза |
profiles.json |
Только личные серверы пользователя и список скрытых базовых серверов | Сохраняется |
local.json |
Приватный ключ, локальный IP WireGuard, адаптер, тема и выбранный сервер | Сохраняется |
profiles.legacy-backup.json |
Резервная копия старого списка при переходе с v0.1.1 | Сохраняется, в релиз не входит |
templates/*.json |
Общие правила подключения | Обновляются из релиза |
run/config.json |
Сгенерированный конфиг sing-box | Создаётся при подключении |
Базовые и личные серверы отображаются вместе. Добавление личного сервера не меняет базовый каталог. Удаление базового сервера скрывает его для этого пользователя, и обновление не возвращает его в список.
При первом запуске поверх v0.1.1 общий список profiles.json автоматически
разделяется: совпадающие базовые записи берутся из релиза, личные и изменённые
записи сохраняются в личном файле. Перед преобразованием создаётся резервная
копия profiles.legacy-backup.json. local.json сохраняет настройки пользователя.
Обновление без потери настроек
- Остановите подключение и закройте программу через меню значка в трее.
- Для резервной копии сохраните
local.jsonиprofiles.json. - Распакуйте новый релиз поверх той же папки, согласившись на замену файлов программы, базового каталога и шаблонов.
- Запустите лаунчер и проверьте версию в шапке окна.
ZIP намеренно не содержит local.json, profiles.json и резервную копию
старых профилей, поэтому распаковка не заменяет их. Базовые серверы и правила
обновятся, а личные серверы, ключ и IP останутся. Если вы редактировали
шаблоны вручную, сохраните и сравните их перед заменой.
При установке в новую папку перенесите туда только свои local.json и
profiles.json из прежней установки. Не удаляйте старую папку, пока не
проверили запуск и сохранённые настройки.
Проверка архива
В PowerShell рядом с ZIP и .sha256:
$archive = '.\SbLauncher-v0.1.2-win-x64.zip'
$expected = ((Get-Content ($archive + '.sha256') -Raw).Trim() -split '\s+')[0]
$actual = (Get-FileHash $archive -Algorithm SHA256).Hash
if ($actual -ine $expected) { throw 'Контрольная сумма ZIP не совпала.' }
'Контрольная сумма совпала.'
Подготовка следующих релизов
Меняйте общий каталог profiles.base.json, сохраняя id уже существующих
серверов даже при смене их адресов или ключей. В нём разрешены общие данные
доступа и публичные параметры WireGuard-сервера; персональных
private_key и local_address в нём быть не должно.
Не копируйте личный profiles.json в релиз и не формируйте из него базовый
каталог автоматически: в личном файле могут появиться серверы, которые
пользователь не собирался передавать другим. release.ps1 берёт серверы
только из явно подготовленного profiles.base.json.