Files
sing-warp-socks5/README.md
T

171 lines
7.0 KiB
Markdown
Raw Normal View History

2026-09-17 00:42:11 +03:00
# Sing-Box WARP Project (Additional Proton out)
2026-05-14 15:54:05 +03:00
> Author remark:
> вы спросите - нахуя такие сложности? А потому что нативный warp не поддерживает amneziaWG ключи для обфускации WireGuard. А ебаться в саму амнезию нет желания. К тому же sing-box сразу может поднять локальный сокс что упрощает просовывание этого варпа во всякого рода панели.
2026-05-15 12:07:30 +03:00
> UPD: Теперь в рф захотели блокировать github и появилась проблема установки панелей. Данное решение покрывает проблемы со скачиванием любых репозиториев или иного self-host софта с github и попутно покрывает ряд других блокнутых ресурсов при включении TUN во время установки.
> Список ресурсов будет дополняться.
2026-05-14 15:54:05 +03:00
2026-05-15 12:07:30 +03:00
Проект для запуска sing-box с WARP через systemd.
2026-05-14 15:54:05 +03:00
## Структура проекта
2026-05-15 12:07:30 +03:00
- `quick-install.sh` — установка и настройка systemd-сервиса
- `generate-config.sh` — генератор `config.json` из WireGuard AWG3.0
- `warp.conf.example` — пример WARP-конфигурации
2026-09-17 00:42:11 +03:00
- `proton.conf.example` — пример второй (Proton) WireGuard-конфигурации
2026-05-14 15:54:05 +03:00
## Как это работает
2026-05-15 12:07:30 +03:00
1. При установке вводится WARP-конфиг (AWG 3.0) → сохраняется в `/etc/sing-box-warp/warp.conf`
2026-09-17 00:42:11 +03:00
2. Опционально вводится второй конфиг (Proton VPN, обычный WireGuard или `wg://`) → `/etc/sing-box-warp/proton.conf`
3. `generate-config.sh` парсит конфиги и пишет `/opt/sing-box-warp/config.json`
4. SOCKS5 WARP доступен на порту `2080`; при добавлении Proton — второй SOCKS5 на `3080`
5. Опционально TUN для сплит-маршрутизации
### Схема маршрутизации
Скрипт работает в двух режимах: **только WARP** или **WARP + Proton**.
- SOCKS-инпуты жёстко привязаны к своим выходам: `2080 → warp-out`, `3080 → proton-out`.
- Всё остальное (TUN-трафик, списки маршрутизации `.srs`, сайты проверки IP, proxy-DNS) идёт в
«дефолтный» выход. Дефолт выбирается при установке: **WARP** или **Proton** (вопрос задаётся
только если Proton добавлен).
- Если Proton не добавлен — второй SOCKS-инпут (`3080`) и `proton-out` не создаются, дефолт всегда WARP.
2026-05-14 15:54:05 +03:00
2026-05-15 12:07:30 +03:00
## Установка
2026-09-04 16:58:53 +00:00
Сгенерируйте конфиг на https://warp-generation.github.io (https://t.me/warp_generator_bot) (AWG 2.0 - 3 вариант, если не заработает переустановите с 2 вариант), затем:
2026-05-15 12:07:30 +03:00
```bash
2026-05-16 20:33:03 +03:00
curl -fsSL https://gitea.digitalforest.my/hesoyam/sing-warp-socks5/raw/branch/main/quick-install.sh | sudo bash
2026-05-15 12:07:30 +03:00
```
2026-05-14 15:54:05 +03:00
2026-08-20 06:59:46 +00:00
Вставьте текстом всё содержимое сгенерированного AWG конфига в терминал. Enter затем ctrl+D
2026-09-17 00:42:11 +03:00
Затем скрипт спросит про Proton. Брать протон тут https://account.protonvpn.com/downloads (Нужен аккаунт)
Ответьте `n`, чтобы оставить только WARP, или `y` и вставьте
второй WireGuard-конфиг (формат `[Interface]`/`[Peer]` как у Proton VPN, либо `wg://`), завершив ввод Ctrl+D.
```
Add Proton configuration? (y/n)
```
Далее спрашивается включение TUN. Включите, если с сервера недоступны заблокированные ресурсы (GitHub и т.п.). Без TUN — только SOCKS5.
2026-05-15 12:07:30 +03:00
```
Enable TUN mode? (y/n)
```
2026-09-17 00:42:11 +03:00
Если Proton добавлен — скрипт спросит, куда направлять весь не-SOCKS трафик (дефолтный выход).
SOCKS-инпуты при этом всегда остаются: `2080 → WARP`, `3080 → Proton`.
```
=== Default route ===
1) WARP (warp-out)
2) Proton (proton-out)
Select default route [1/2]
```
2026-05-15 12:07:30 +03:00
Повторный запуск инсталлера останавливает старый сервис, переустанавливает файлы и запускает заново.
## Формат warp.conf
2026-05-14 15:54:05 +03:00
```AWG3.0
[Interface]
PrivateKey = {privkey}
Address = 172.16.0.2, 2606:4700:110:890e:48c0:b073:6ebe:d347
DNS = 1.1.1.1, 1.0.0.1, 2606:4700:4700::1111, 2606:4700:4700::1001
MTU = 1280
S1 = 0
S2 = 0
Jc = 4
Jmin = 40
Jmax = 70
H1 = 1
H2 = 2
H3 = 3
H4 = 4
I1 = {string}
[Peer]
PublicKey = {pubkey}
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = engage.cloudflareclient.com:2408
PersistentKeepalive = 25
```
2026-09-17 00:42:11 +03:00
## Формат proton.conf (опционально)
Обычный WireGuard-конфиг (например, экспорт из Proton VPN) или `wg://`-ссылка.
```ini
[Interface]
PrivateKey = {privkey}
Address = 10.2.0.2/32
DNS = 10.2.0.1
[Peer]
PublicKey = {pubkey}
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 149.50.211.159:51820
PersistentKeepalive = 25
```
2026-05-15 12:07:30 +03:00
## Использование
2026-05-14 15:54:05 +03:00
2026-09-17 00:42:11 +03:00
SOCKS5 без авторизации:
- WARP — `localhost:2080`
- Proton (если добавлен) — `0.0.0.0:3080`
2026-05-14 15:54:05 +03:00
```bash
2026-09-17 00:42:11 +03:00
curl --proxy socks5://localhost:2080 ip-api.com # через WARP
curl --proxy socks5://localhost:3080 ip-api.com # через Proton
2026-05-14 15:54:05 +03:00
```
2026-05-15 11:52:48 +03:00
2026-09-17 00:42:11 +03:00
С TUN трафик по спискам `.srs` идёт через дефолтный выход (WARP или Proton); SOCKS5 при этом остаётся доступным.
2026-05-14 15:54:05 +03:00
```bash
2026-05-15 12:07:30 +03:00
curl ip-api.com
2026-05-14 15:54:05 +03:00
```
2026-05-15 12:07:30 +03:00
## Управление сервисом
2026-05-15 11:56:49 +03:00
```bash
2026-05-15 12:07:30 +03:00
sudo systemctl enable sing-box-warp
sudo systemctl start sing-box-warp
sudo systemctl status sing-box-warp
sudo journalctl -u sing-box-warp -f
sudo systemctl restart sing-box-warp
2026-05-15 11:56:49 +03:00
```
2026-05-14 15:54:05 +03:00
## Обновление конфигурации
2026-09-17 00:42:11 +03:00
Отредактируйте нужные файлы в `/etc/sing-box-warp/`:
- `warp.conf` — конфиг WARP
- `proton.conf` — конфиг Proton (удалите файл, чтобы отключить Proton)
- `enable-tun` — `1`/`0` для TUN
- `default-route` — `warp` или `proton` (куда идёт весь не-SOCKS трафик)
затем:
2026-05-15 12:07:30 +03:00
2026-05-14 15:54:05 +03:00
```bash
2026-05-15 12:07:30 +03:00
sudo /opt/sing-box-warp/generate-config.sh
sudo systemctl restart sing-box-warp
2026-05-14 15:54:05 +03:00
```
2026-08-08 10:52:33 +00:00
## Полная переустановка
Заново запустить скрипт `quick-install.sh`.
2026-08-08 09:19:40 +00:00
## Полное удаление
```bash
sudo rm -rf /opt/sing-box-warp
sudo rm -rf /etc/sing-box-warp
sudo rm -rf /etc/systemd/system/sing-box-warp.service
2026-08-08 10:04:19 +00:00
sudo rm -rf /var/cache/sing-box-warp
sudo rm /usr/bin/sing-box /usr/local/bin/sing-box
2026-08-08 09:19:40 +00:00
```
2026-05-15 12:07:30 +03:00