3x-ui Admin Guide
Протоколы

Shadowsocks

Протоколы. Глава 13 из 38.

Shadowsocks

Цель

Описать Shadowsocks как легкий proxy-протокол и показать, какие параметры важны для безопасности и совместимости.

Теория

Shadowsocks используется для проксирования TCP и UDP-трафика. В Xray он поддерживается как inbound/outbound-протокол и может быть совместим с разными реализациями Shadowsocks.

Ключевой момент: безопасность зависит от выбранного метода шифрования, паролей, версии формата и запрета небезопасных режимов в публичных сетях.

История

Shadowsocks стал популярным как относительно простой и быстрый proxy-подход. Со временем появились новые форматы и AEAD-методы, а также более строгие требования к replay protection и безопасности UDP.

Архитектура

Типовая цепочка:

1. Клиент использует Shadowsocks-профиль. 2. Сервер принимает TCP, UDP или оба типа трафика. 3. Метод шифрования и пароль должны совпадать. 4. Xray передает трафик в routing. 5. Далее выбирается outbound.

Настройка

Для главы нужно отдельно показывать:

  • network: TCP, UDP или оба;
  • method: выбранный метод шифрования;
  • password: секрет;
  • users: отдельные пользователи, если используется многопользовательская

схема;

  • диагностику TCP и UDP отдельно.

Разбор параметров

  • network — какие типы трафика слушает сервер: TCP, UDP или оба.
  • method — метод шифрования.
  • password — секрет для подключения.
  • level — уровень пользователя для policy.
  • email — метка пользователя.
  • users — список пользователей с индивидуальными параметрами.

Типовые ошибки

  • использовать слабый пароль;
  • включать небезопасный режим без шифрования в публичной сети;
  • забывать UDP при сценариях, где он нужен;
  • диагностировать TCP и UDP как одну и ту же проблему;
  • не проверять совместимость метода шифрования на клиенте.

Безопасность

Нельзя использовать plain/none-режим в публичных сетях. Для production нужны современные методы, уникальные секреты, контроль доступа к конфигурации и отдельная проверка UDP, если он включен.

Чек-лист

  • Сверена актуальная документация Xray.
  • Выбран безопасный метод шифрования.
  • Пароли уникальны.
  • Проверены TCP и UDP.
  • Проверена совместимость клиента.
  • Plain/none не используется в публичной сети.

Источники для сверки

  • Project X: Shadowsocks inbound configuration — https://xtls.github.io/en/config/inbounds/shadowsocks.html