kit update скачивает kit и kit-sub из тега релиза, переводит kit-sub на работу без root, убирает cron меню x-ui и исправляет ссылку подписки в панели. При сбое новой kit-sub возвращает прежнюю. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Q7GrBSRPVXhrz3RAprWDnt
4.5 KiB
4.5 KiB
Что нового
v1.1: kit сходил к аудитору, сдал анализы и теперь не доверяет никому, даже GitHub
Подписчик прислал нам полноценный аудит безопасности. Мы почитали, покраснели и всё починили. Спасибо: такие письма лучше любых звёзд на GitHub (но звёзды тоже ставьте).
Безопасность
- Hysteria2 больше не верит на слово. Почта, адрес сервера и сайт маскировки теперь проверяются
строго, а в файл настроек пишутся с экранированием. Раньше особо изобретательная почта могла
выполниться как команда. Теперь
me@gmail.com;rm -rfполучит вежливый отказ. - Установщик 3X-UI сверяем по отпечатку. Мы закрепили не только версию, но и SHA256 файла. Если на GitHub кто-то подменит установщик, скрипт посмотрит на него как на незнакомца в чате с «выгодным предложением» и запускать не станет.
- Hysteria проверяется нашим ключом, а не чужим. Контрольная сумма бинарника теперь записана в сам скрипт, а не скачивается из того же места, что и бинарник. Проверять человека по справке, которую он же и принёс, так себе идея.
- Всё качаем из релиза, а не из черновиков.
kit,kit-subиhy2 updateберут файлы из тега версии, а не из веткиmain, которая может поменяться посреди установки. - Подписка больше не root.
kit-subработает от временного пользователя без прав: конфиг и сертификат ему выдаёт systemd на время работы. Даже если его взломают, ключей от сервера у него нет. - Меню x-ui оставили в покое. Больше не переписываем чужие файлы по расписанию, только один раз при установке.
- Строгие имена. Параметры
--sniи--hostу установщика 3X-UI тоже проверяются.
Для тех, кто хочет проверить сам
- В README появилась установка с проверкой: скачать, прочитать, сверить SHA256, запустить.
SECURITY.md: как сообщить об уязвимости, не публикуя её на весь интернет.- Проверка кода на каждый коммит: ShellCheck, Python, тесты генераторов.
Новая команда: kit update
- Обновляет kit и подписку до новой версии, а пользователи, ссылки и подписки остаются прежними. Раньше, чтобы получить исправление, приходилось сносить всё и раздавать ссылки заново. «Мам, удали старый VPN, вот новый» больше не повторится.
- Если новая подписка вдруг не запустится,
kit updateмолча вернёт старую. Ну, не молча, предупредит.
Как обновиться
- Сервер 3X-UI KIT из версии 1.0 (там ещё нет
kit update), один раз:curl -fsSL https://raw.githubusercontent.com/itsnotkubrick/3X-UI_KIT/v1.1/scripts/kit.sh -o /usr/local/bin/kit && chmod 755 /usr/local/bin/kit && kit update - Дальше хватит
kit update, он сам подскажет, когда выйдет новая версия. - Hysteria2:
hy2 update. - Новые установки получают всё сразу.
v1.0
Первая версия: 11 протоколов одной командой, всё через 443, одна подписка на все приложения,
пользователи через kit user, генераторы конфигов для XKeen.