Обновить правила репозитория и подписи исходников в 99 заметках, не затрагивая пользовательские незакоммиченные файлы. Сделать Forgejo Actions содержательным: проверять опубликованный commit, а не пустое рабочее дерево после checkout.
19 KiB
| date | tags | aliases | link | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-07-17 |
|
|
https://github.com/shtorm-7/sing-box-extended |
📦 sing-box-extended — форк sing-box с расширенными функциями
[!info] О чём заметка Обзор sing-box-extended — форка универсальной прокси-платформы sing-box от разработчика shtorm-7, в который добавлены десятки протоколов и функций, отсутствующих в оригинале: от Cloudflare WARP и MTProxy до лимитеров трафика и веб-панели администратора. Про экосистему Xray (главную «соседнюю» платформу) — в xray/project-x.
TL;DR
- sing-box — универсальная прокси-платформа на Go (проект SagerNet): один бинарник, который умеет быть и клиентом, и сервером для множества протоколов обхода блокировок; главная альтернатива Xray-core.
- sing-box-extended — форк, куда автор добавил то, чего в оригинале нет: протоколы WARP, MASQUE, MTProxy, Mieru, OpenVPN, Snell, TrustTunnel и другие; лимитеры скорости/трафика/соединений; обфускацию amnezia-2-0/reference для WireGuard; VLESS encryption и xray/xhttp из мира Xray; веб-панель администратора и API для управления пользователями и узлами.
- Проект живой: на июль 2026 — 46 релизов (последний
v1.13.14-extended-2.5.1), около 400 звёзд на GitHub, поддержка через Telegram-чат. - Лицензия GPLv3 с оговоркой: производные работы не могут использовать название или подразумевать связь с проектом без согласия автора.
- От стабильных релизов оригинала форк почти не отстаёт (стабильный v1.13.14 от 25 июня 2026 влит в тот же день); отставание на ~2,5 тыс. коммитов видно только от dev-ветки
testing(альфы 1.14.0) — подробнее в разделе «Отстаёт ли форк от оригинала». - Это сторонний форк с экспериментальными функциями — для критичных к безопасности сценариев учитывай, что код ревьюит меньше глаз, чем у оригинала (подробнее в разделе «Оговорки»).
Что такое sing-box и зачем ему форк
sing-box — открытая платформа для проксирования от проекта SagerNet, написанная на Go. Идея: один универсальный бинарник, который заменяет зоопарк отдельных клиентов и серверов — он умеет xray/vless, VMess, Shadowsocks, Trojan, Hysteria/00-overview, TUIC, WireGuard и многое другое, плюс гибкую маршрутизацию трафика по правилам. На ядре sing-box работают популярные клиенты вроде NekoBox — пример настройки маршрутизации в таком клиенте есть в xray/clients-and-routing.
Проще говоря: sing-box — это «швейцарский нож» обхода блокировок, конкурент и во многом совместимая альтернатива xray/project-x, но с собственным форматом конфигурации (JSON со своей схемой) и собственным набором протоколов.
Оригинальный sing-box развивается консервативно: мейнтейнеры не спешат принимать экзотические протоколы и «серверные» функции вроде панелей управления. sing-box-extended закрывает этот разрыв — разработчик shtorm-7 ведёт форк (ветка extended), в который регулярно вливает upstream-изменения оригинала и поверх них добавляет собственные возможности. Версионирование это отражает: релиз v1.13.14-extended-2.5.1 означает «оригинальный sing-box 1.13.14 плюс extended-надстройка версии 2.5.1».
Что добавлено сверх оригинала
Список ниже — по README репозитория (июль 2026).
Протоколы
| Протокол | Что даёт |
|---|---|
| WARP | Интеграция Cloudflare WARP через WireGuard — бесплатный выходной узел Cloudflare как outbound |
| MASQUE | Прокси Cloudflare поверх QUIC/HTTP — второй, более современный транспорт WARP |
| MTProxy | Сервер Telegram-прокси с FakeTLS — про сам протокол и его маскировку см. [[mtproxy/mtproto-zig |
| Mieru | Прокси-протокол, спроектированный так, чтобы его было трудно классифицировать DPI |
| OpenVPN | Клиент с поддержкой tls-auth, tls-crypt, tls-crypt-v2 — можно подключаться к обычным OpenVPN-серверам |
| TrustTunnel | Обфусцированный VPN-протокол от AdGuard |
| Sudoku | Обфускация трафика «на основе головоломок» |
| Snell | Лёгкий шифрованный прокси, версии v1–v5 (родом из экосистемы Surge) |
| SSH | Клиент и сервер с аутентификацией по сертификатам |
| VPN | Маршрутизируемый туннель поверх любых TCP-протоколов |
| Bond | Агрегация нескольких каналов для суммирования пропускной способности |
| Fallback / Failover | Группы outbound с приоритетным переключением и автоматическим восстановлением сессий при падении узла |
Лимитеры — квоты и ограничения
В оригинальном sing-box нет встроенных инструментов для «продажи» или раздачи доступа с ограничениями. Форк добавляет четыре лимитера: Bandwidth (ограничение скорости загрузки/отдачи), Connection (число одновременных соединений), Traffic (квота объёма трафика на пользователя) и Rate (частота запросов). Это превращает sing-box-extended в основу для мультипользовательского сервиса без внешней панели.
Обфускация и заимствования из Xray
- Amnezia 2.0 — обфускация WireGuard-трафика по схеме AmneziaWG; что это и как работает — в amnezia-2-0/reference.
- VLESS encryption — пост-квантовое шифрование VLESS из Xray-core (в оригинальном sing-box не поддерживается).
- XHTTP — транспорт Xray для работы через CDN; устройство и режимы — в xray/xhttp.
- mKCP — надёжный транспорт поверх UDP из экосистемы V2Ray.
DNS
- SDNS (DNSCrypt) — зашифрованные DNS-запросы по протоколу DNSCrypt (адреса серверов в формате DNS stamps).
- DNS Fallback — параллельные или последовательные запросы к нескольким DNS-серверам с переключением при отказе.
Управление: панель и API
Форк включает серверную обвязку, которой нет в оригинале: Admin Panel (веб-интерфейс администратора), Manager (сервис конфигурации пользователей и узлов), Manager API (HTTP/gRPC API) и Node Manager API (синхронизация узлов с удалённым менеджером). Проще говоря: из одного бинарника можно поднять не только прокси-сервер, но и мини-панель управления парком серверов и пользователями — нишу, которую обычно закрывают отдельные панели типа Marzban или Remnawave.
Удобства конфигурации
- Providers — подписки на списки outbound из локального файла, встроенного списка или удалённого URL; понимает форматы sing-box JSON, Clash YAML, SIP008 и share-ссылки.
- Link Parser — outbound можно задать прямо share-ссылкой (
vless://,vmess://,ss://,trojan://,hysteria://,hysteria2://,tuic://) вместо развёрнутого JSON. - Расширенные опции WireGuard и Unified Delay (унифицированное измерение задержки узлов, как в Clash).
Установка и примеры
Проект собирается из исходников на Go 1.26 (Makefile/goreleaser), готовые сборки публикуются в релизах на GitHub. Примеры конфигураций для добавленных функций лежат в директории examples репозитория. Формат конфига — тот же JSON sing-box, расширенный новыми типами inbound/outbound и сервисов.
Отстаёт ли форк от оригинала
Короткий ответ: от стабильных релизов — практически нет, от ветки разработки — да, и это нормально.
Форк ведётся поверх стабильной линии sing-box (1.13.x), а не поверх ветки разработки. Цифры на 17 июля 2026 (по данным GitHub):
- Последний стабильный релиз оригинального sing-box — v1.13.14 от 25 июня 2026. Форк подхватил его в тот же день: релиз
v1.13.14-extended-2.5.0вышел 25 июня 2026. История релизов показывает ту же скорость и раньше (v1.13.12 → extended-сборки в начале июня 2026). - Сравнение веток
extended↔ upstreamtestingпоказывает отставание на 2485 коммитов — ноtestingэто ветка разработки будущего 1.14.0 (на июль 2026 — alpha-стадия,v1.14.0-alpha.46). От неё отстают и сами стабильные релизы оригинала: это отставание от «завтрашней» версии, а не от актуальной.
Проще говоря: пользователь sing-box-extended получает те же исправления, что и пользователь обычного стабильного sing-box, с задержкой порядка дней. Не получает он только того, что пока живёт исключительно в альфах 1.14.0 — новых протоколов и фич ветки разработки (часть из них, впрочем, автор форка добавляет сам раньше upstream: например, Snell появился в extended до того, как upstream добавил его в 1.14.0-alpha).
[!note] Критично ли это для безопасности протоколов Скорее нет, с одной оговоркой. Исправления уязвимостей в стабильном коде upstream выпускает патч-релизами линии 1.13.x — форк вливает их в течение дней, так что окно уязвимости почти не расширяется. Оговорка в другом: криптография и реализации протоколов в форке частично живут в собственных форках библиотек автора (
shtorm-7/sing,shtorm-7/wireguard-goи др. — см. sing-box/architecture) плюс в тысячах строк собственного кода — фиксы upstream-библиотек доезжают туда только после ручного перебазирования автором, а собственный код форка upstream не аудирует вовсе. То есть риск не в «отставании по коммитам», а в обычном для любого форка расширении поверхности кода, за которой следит один мейнтейнер.
Оговорки
[!warning] Сторонний форк — доверяй с оглядкой sing-box-extended — проект одного основного разработчика, а не команды SagerNet. Кодовая база большая (тысячи коммитов поверх оригинала), и её аудирует заметно меньше людей, чем upstream. Для личного обхода блокировок это обычно приемлемый риск, но для сценариев, где компрометация прокси-сервера критична, стоит взвесить: чем больше экспериментальных функций в одном бинарнике, тем шире поверхность атаки. Часть функций (панель, Manager API) по определению открывает управляющие интерфейсы — их нужно закрывать аутентификацией и firewall-ом так же тщательно, как любую панель управления.
[!note] Числа устаревают Статистика в заметке (46 релизов, ~400 звёзд, версия
v1.13.14-extended-2.5.1, Go 1.26) — снимок по данным GitHub на июль 2026. Актуальное состояние смотри в самом репозитории.
📚 См. также
- sing-box/architecture — разбор исходников: ядро, registry-паттерн, реализация протоколов, лимитеры, manager-подсистема
- sing-box/wire-protocol-explained — с нуля: почему разные программы понимают друг друга и что такое двойная реализация протокола
- sing-box/protocols-origin — sing-box vs Xray-core: независимые реимплементации, а не общий код
- sing-box/hardcoded-defaults — порты по умолчанию, таймауты, магические числа
- xray/project-x — главная альтернативная экосистема; сравнение ролей ядер
- Clash/08-vs-sing-box — сравнение трёх универсальных ядер по осям: конфиг, маршрутизация, экосистема, роль в сети
- protocols/naiveproxy — протокол, который из трёх ядер поддерживает только sing-box
- protocols/00-overview — карта протоколов обхода и таблица поддержки в ядрах
- Clash/02-mihomo — третье живое ядро; его YAML-подписки sing-box умеет разбирать как один из форматов провайдера
- xray/vless — протокол, чьё шифрование форк переносит из Xray
- xray/xhttp — транспорт через CDN, добавленный в форк
- xray/clients-and-routing — синтаксис маршрутизации sing-box на примере клиента NekoBox
- amnezia-2-0/reference — обфускация WireGuard, поддерживаемая форком
- Hysteria/00-overview — один из протоколов, поддерживаемых и оригинальным sing-box
- mtproxy/mtproto-zig — устройство протокола, серверную часть которого добавляет форк
- 🔗 github.com/shtorm-7/sing-box-extended — репозиторий форка
- 🔗 github.com/SagerNet/sing-box — оригинальный sing-box
- 🔗 sing-box.sagernet.org — документация оригинального sing-box
[!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование и скачивание всего репозитория одним zip-архивом доступны в Forgejo: исходник этой заметки · весь репозиторий.