D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
В данной статье я опишу самые относительно популярные методы обфускации трафика, такие как: ShadowSocks, V2Ray/X-Ray и Cloak.
Поскольку в большинстве случаев эти решения используют для обхода ограничений интернет-цензуры в Китае, то и документация по настройке этих решений на китайском, но я опишу всё это на более понятном языке.
И так, для начала я опишу каждый из этих 3 протоколов по отдельности.
ShadowSocks - это протокол с открытым исходным кодом на основе прокси, предназначенный для обхода интернет-цензуры и шифрованния трафика. Он работает путем создания защищенного туннеля между клиентом и сервером, через который направляется весь трафик. Он похож на другие технологии VPN, но он оптимизирован для соединений с низкой задержкой, что делает его подходящим для приложений, требующих быстрого времени отклика, таких как онлайн-игры и трансляция видео в реальном времени.
Он использует прокси-сервер в качестве посредника между клиентом и сервером назначения. Клиент отправляет свой трафик на прокси-сервер, который затем пересылает его на целевой сервер. Трафик между клиентом и прокси-сервером шифруется с помощью AES, а трафик между прокси-сервером и сервером назначения не шифруется.
Протокол ShadowSocks использует технику, называемую "обфускацией", чтобы скрыть факт его использования. Обфускация включает в себя изменение характеристик трафика таким образом, чтобы он выглядел как нечто иное. Например, может быть изменен IP-адрес назначения или номер порта, или в трафик могут быть добавлены случайные данные. Это затрудняет обнаружение и блокирование трафика цензорами.
ShadowSocks популярен, потому что он прост в использовании и относительно легок. Он не требует специального программного или аппаратного обеспечения на стороне клиента и может быть развернут на различных платформах, включая Windows, macOS, Linux и мобильные устройства. Он также хорошо настраивается, поддерживая множество алгоритмов шифрования и методов обфускации.
Инструкции по настройке ShadowSocks:
Нам понадобится выделенный виртуальный сервер, на котором мы будем поднимать и устройство под управлением Windows/Linux/macOS, с которого мы будем поднимать наш прокси-сервер.
В данном примере я буду использовать сервер под управлением Debian 11 и устройство под управлением Whonix.
Для начала скачиваем программу Outline Manager с официального сайта - https://getoutline.org/
Для Linux данная программа поставляется в виде портативного приложения формата AppImage, чтоб запустить данный файл, необходимо сделать его исполняемым
Вводим в терминале команду:
Код: Скопировать в буфер обмена
После выполнения команды файл станет исполняемым и его можно запустить двойным щелчком мыши
Откроется вот такое окно:
Выбираем пункт “Настроить Outline где угодно”
В следующем окне вы увидите команду, которую надо будет ввести на вашем сервере, для этого подключаемся к серверу по ssh командой:
Код: Скопировать в буфер обмена
На сервере вводим команду из данного окна, в моем случае это:
Код: Скопировать в буфер обмена
Если у вас не установлен Docker, то система оповестит об этом и предложит установить его, жмем Enter и ждем окончания установки
По окончанию установки система выдаст вам ссылку, выделенную оранжевым цветом, копируем её и вставляем в окно Outline Manager в пункт 2 (отмечено красным)
Жмем “Готово” и получаем ссылку для подключения к нашему серверу.
Для смартфона я рекомендую приложение shadowsocks - https://github.com/shadowsocks/shadowsocks-android
В нем вы можете подключиться к серверу по ссылке и там уже увидеть ключ и пароль, чтоб подключиться через другие клиенты на ПК или роутере.
V2Ray (X-Ray) - это универсальное и мощное прокси-программное обеспечение, которое работает как коммуникационная платформа. Она предназначена для обхода сетевых ограничений и обеспечения безопасного и приватного доступа в Интернет для пользователей. V2Ray поддерживает различные протоколы, такие как HTTP, TCP, mKCP, WebSocket, xTLS, xUDP, протоколы системы доменных имен (DNS) и другие, и может быть настроен для работы с несколькими операционными системами.
Он работает путем создания сети узлов, которые работают вместе для направления трафика. Эти узлы называются "входящими" и "исходящими" соединениями. Входящие соединения принимают трафик, а исходящие соединения передают трафик. Архитектура V2Ray позволяет ему выполнять сложные операции по маршрутизации трафика, что делает его более безопасным и надежным прокси-решением.
Одним из основных преимуществ V2Ray является его способность шифровать и маскировать сетевой трафик с помощью различных протоколов, таких как xTLS, mKCP и WebSocket. Эта функция обеспечивает конфиденциальность и безопасность сетевой активности, которую трудно обнаружить или заблокировать. Кроме того, V2Ray имеет встроенную функцию балансировки нагрузки, которая может распределять сетевой трафик между различными серверами для повышения производительности и надежности.
Гибкие возможности конфигурации V2Ray позволяют легко настроить прокси-сервер в соответствии с конкретными требованиями. Пользователь может настраивать различные параметры, такие как порты, протоколы, методы шифрования и правила маршрутизации.
Инструкции по настройке V2Ray:
В данной статье я расскажу, как поднять V2Ray с протоколами VMESS и VLESS на своем сервере. Данная инструкция будет полезна в случае организации жесткой интернет-цензуры на территории какой-либо страны, либо при посещении таких стран, как Иран и Китай, где уже внедрена жесткая цензура и ограничения.
Стоит отметить, что VMESS и VLESS работают не в связке, а параллельно, т.е. можно подключиться к любому из этих протоколов в зависимости от скорости работы и эффективности противодействия блокировкам
Начнем с описания этих протоколов:
VMESS - это протокол, используемый прокси-сервером V2Ray для обеспечения зашифрованной связи между клиентом и сервером. Это один из самых передовых протоколов, предоставляющий множество функций и опций для настройки сетевого трафика.
VMESS использует комбинацию симметричного шифрования AES и ассиметричного шифрования RSA для защиты трафика между клиентом и сервером. Протокол также использует технику, называемую обфускацией трафика, чтобы затруднить обнаружение и блокирование трафика.
Одной из ключевых особенностей VMESS является поддержка множества входящих и исходящих протоколов, таких как TCP, UDP, HTTP, HTTPS и DNS.
Еще одной важной особенностью VMESS является поддержка нескольких транспортных протоколов, включая mKCP, TCP, WS, HTTP/2 и QUIC. Это позволяет протоколу адаптироваться к различным условиям сети и обеспечивать стабильное и быстрое соединение.
VMESS также поддерживает расширенные функции, такие как динамическое распределение портов, балансировка нагрузки и маршрутизация на основе доменных имен. Эти функции позволяют настраивать и оптимизировать сетевой трафик для различных случаев использования и сценариев.
VLESS - это более новый протокол, который был представлен в версии v2ray 4.23.0, и расшифровывается как "VMESS-less". VLESS разработан как более легкая и безопасная версия VMESS, без ущерба для гибкости и возможностей, которые пользователи привыкли получать от V2Ray.
Одно из основных отличий между VLESS и VMESS заключается в том, что VLESS по умолчанию использует шифрование TLS, что обеспечивает дополнительный уровень безопасности по сравнению с VMESS. Это означает, что сервер и клиент VLESS обмениваются данными через зашифрованное соединение, что предотвращает подслушивание и несанкционированное вмешательство третьих лиц. Кроме того, VLESS разработан как более эффективный протокол, чем VMESS, что означает, что он может обрабатывать больше трафика при меньших ресурсах.
Еще одной ключевой особенностью VLESS является упрощенная конфигурация. VLESS требует только один UUID для аутентификации клиента, в то время как VMESS требует как ID, так и alterID. Это упрощает его настройку и использование, особенно для пользователей, которые только начинают работать с V2Ray. Тем не менее, VLESS по-прежнему поддерживает расширенные возможности, такие как несколько пользователей и правила маршрутизации, поэтому он остается мощным и гибким протоколом.
В целом, VLESS обладает рядом преимуществ по сравнению с VMESS, включая повышенную безопасность, эффективность и простоту использования. Однако важно отметить, что VLESS все еще относительно новый протокол, и не все клиенты и серверы V2Ray могут его поддерживать.
Теперь приступим к настройке, все действия я буду производить на выделенном сервере под управлением Debian 11. Поскольку в репозиториях Debian старая версия V2Ray, использовать будем Docker-контейнер. Для начала подключаемся к серверу по SSH командой:
Код: Скопировать в буфер обмена
Устанавливаем Docker по инструкции с официального сайта Docker - https://docs.docker.com/engine/install/debian/
Скачиваем необходимый Docker-контейнер командой
Код: Скопировать в буфер обмена
Теперь необходимо сгенерировать UUID для конфигурации через сайт https://www.uuidgenerator.net/version4
Копируем этот UUID, он понадобится для подключения к нашему серверу по этим протоколам
Теперь создаем конфигурационный файл V2Ray (в пункте id вписываем сгенерированный UUID для обоих протоколов):
Код: Скопировать в буфер обмена
Устанавливаем Docker-контейнер командой:
Код: Скопировать в буфер обмена
После этого контейнер работает, проверить работоспособность можно через мобильное приложение V2RayNG (https://github.com/2dust/v2rayNG)
При подключении выбирайте нужный протокол, указывайте название, порт и UUID для подключение, остальные настройки по умолчанию.
В данной инструкции была показана простейшая конфигурация, её можно настроить и более тонко для различных сценариев использования.
Cloak - это тип протокола обфускации, который предназначен для обфускации VPN- и прокси-трафика, что затрудняет обнаружение и блокировку трафика сетевыми администраторами и интернет-провайдерами.
Он работает, используя комбинацию методов, чтобы трафик VPN или прокси выглядел как обычный трафик HTTPS. Во-первых, он шифрует трафик VPN или прокси с помощью шифрования TLS, которое является тем же протоколом шифрования, что и HTTPS. Он также использует технологию фронтирования домена , которая позволяет VPN или прокси-трафику выглядеть так, как будто он идет с легитимного HTTPS-сайта.
Когда пользователь подключается к VPN или прокси-серверу, использующему Cloak, сервер сначала устанавливает TLS-соединение с устройством пользователя. Это начальное соединение используется для обмена ключами и установления зашифрованного канала между двумя устройствами. После установления зашифрованного канала трафик пользователя передается по этому каналу с помощью техники, называемой туннелированием.
В процессе туннелирования трафик пользователя встраивается в HTTP-запросы и отправляется на VPN или прокси-сервер с использованием доменного фронтирования. Таким образом, создается впечатление, что трафик идет с легитимного HTTPS-сайта, что значительно затрудняет обнаружение и блокировку трафика сетевыми администраторами и интернет-провайдерами.
Сравнение этих протоколов и определение того, какой из них лучше использовать, зависит от конкретных случаев использования и индивидуальных предпочтений. Каждый протокол имеет свои сильные и слабые стороны, и выбор лучшего протокола для конкретной ситуации требует глубокого понимания характеристик протокола и требований сети.
Эти протоколы можно совмещать между собой и с популярными VPN-протоколами, такими как Wireguard и OpenVPN, такое решение поможет скрыть факт использования VPN в случаях, если VPN будет заблокирован на уровне протокола.
автор CyberSec
источник RuTOR
Поскольку в большинстве случаев эти решения используют для обхода ограничений интернет-цензуры в Китае, то и документация по настройке этих решений на китайском, но я опишу всё это на более понятном языке.
И так, для начала я опишу каждый из этих 3 протоколов по отдельности.
ShadowSocks - это протокол с открытым исходным кодом на основе прокси, предназначенный для обхода интернет-цензуры и шифрованния трафика. Он работает путем создания защищенного туннеля между клиентом и сервером, через который направляется весь трафик. Он похож на другие технологии VPN, но он оптимизирован для соединений с низкой задержкой, что делает его подходящим для приложений, требующих быстрого времени отклика, таких как онлайн-игры и трансляция видео в реальном времени.
Он использует прокси-сервер в качестве посредника между клиентом и сервером назначения. Клиент отправляет свой трафик на прокси-сервер, который затем пересылает его на целевой сервер. Трафик между клиентом и прокси-сервером шифруется с помощью AES, а трафик между прокси-сервером и сервером назначения не шифруется.
Протокол ShadowSocks использует технику, называемую "обфускацией", чтобы скрыть факт его использования. Обфускация включает в себя изменение характеристик трафика таким образом, чтобы он выглядел как нечто иное. Например, может быть изменен IP-адрес назначения или номер порта, или в трафик могут быть добавлены случайные данные. Это затрудняет обнаружение и блокирование трафика цензорами.
ShadowSocks популярен, потому что он прост в использовании и относительно легок. Он не требует специального программного или аппаратного обеспечения на стороне клиента и может быть развернут на различных платформах, включая Windows, macOS, Linux и мобильные устройства. Он также хорошо настраивается, поддерживая множество алгоритмов шифрования и методов обфускации.
Инструкции по настройке ShadowSocks:
Нам понадобится выделенный виртуальный сервер, на котором мы будем поднимать и устройство под управлением Windows/Linux/macOS, с которого мы будем поднимать наш прокси-сервер.
В данном примере я буду использовать сервер под управлением Debian 11 и устройство под управлением Whonix.
Для начала скачиваем программу Outline Manager с официального сайта - https://getoutline.org/
Для Linux данная программа поставляется в виде портативного приложения формата AppImage, чтоб запустить данный файл, необходимо сделать его исполняемым
Вводим в терминале команду:
Код: Скопировать в буфер обмена
sudo chmod +x ‘перенести файл в окно терминала’
После выполнения команды файл станет исполняемым и его можно запустить двойным щелчком мыши
Откроется вот такое окно:

Выбираем пункт “Настроить Outline где угодно”

В следующем окне вы увидите команду, которую надо будет ввести на вашем сервере, для этого подключаемся к серверу по ssh командой:
Код: Скопировать в буфер обмена
ssh root@ip_адрес_сервера
На сервере вводим команду из данного окна, в моем случае это:
Код: Скопировать в буфер обмена
sudo bash -c "$(wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)"
Если у вас не установлен Docker, то система оповестит об этом и предложит установить его, жмем Enter и ждем окончания установки
По окончанию установки система выдаст вам ссылку, выделенную оранжевым цветом, копируем её и вставляем в окно Outline Manager в пункт 2 (отмечено красным)
Жмем “Готово” и получаем ссылку для подключения к нашему серверу.
Для смартфона я рекомендую приложение shadowsocks - https://github.com/shadowsocks/shadowsocks-android
В нем вы можете подключиться к серверу по ссылке и там уже увидеть ключ и пароль, чтоб подключиться через другие клиенты на ПК или роутере.
V2Ray (X-Ray) - это универсальное и мощное прокси-программное обеспечение, которое работает как коммуникационная платформа. Она предназначена для обхода сетевых ограничений и обеспечения безопасного и приватного доступа в Интернет для пользователей. V2Ray поддерживает различные протоколы, такие как HTTP, TCP, mKCP, WebSocket, xTLS, xUDP, протоколы системы доменных имен (DNS) и другие, и может быть настроен для работы с несколькими операционными системами.
Он работает путем создания сети узлов, которые работают вместе для направления трафика. Эти узлы называются "входящими" и "исходящими" соединениями. Входящие соединения принимают трафик, а исходящие соединения передают трафик. Архитектура V2Ray позволяет ему выполнять сложные операции по маршрутизации трафика, что делает его более безопасным и надежным прокси-решением.
Одним из основных преимуществ V2Ray является его способность шифровать и маскировать сетевой трафик с помощью различных протоколов, таких как xTLS, mKCP и WebSocket. Эта функция обеспечивает конфиденциальность и безопасность сетевой активности, которую трудно обнаружить или заблокировать. Кроме того, V2Ray имеет встроенную функцию балансировки нагрузки, которая может распределять сетевой трафик между различными серверами для повышения производительности и надежности.
Гибкие возможности конфигурации V2Ray позволяют легко настроить прокси-сервер в соответствии с конкретными требованиями. Пользователь может настраивать различные параметры, такие как порты, протоколы, методы шифрования и правила маршрутизации.
Инструкции по настройке V2Ray:
В данной статье я расскажу, как поднять V2Ray с протоколами VMESS и VLESS на своем сервере. Данная инструкция будет полезна в случае организации жесткой интернет-цензуры на территории какой-либо страны, либо при посещении таких стран, как Иран и Китай, где уже внедрена жесткая цензура и ограничения.
Стоит отметить, что VMESS и VLESS работают не в связке, а параллельно, т.е. можно подключиться к любому из этих протоколов в зависимости от скорости работы и эффективности противодействия блокировкам
Начнем с описания этих протоколов:
VMESS - это протокол, используемый прокси-сервером V2Ray для обеспечения зашифрованной связи между клиентом и сервером. Это один из самых передовых протоколов, предоставляющий множество функций и опций для настройки сетевого трафика.
VMESS использует комбинацию симметричного шифрования AES и ассиметричного шифрования RSA для защиты трафика между клиентом и сервером. Протокол также использует технику, называемую обфускацией трафика, чтобы затруднить обнаружение и блокирование трафика.
Одной из ключевых особенностей VMESS является поддержка множества входящих и исходящих протоколов, таких как TCP, UDP, HTTP, HTTPS и DNS.
Еще одной важной особенностью VMESS является поддержка нескольких транспортных протоколов, включая mKCP, TCP, WS, HTTP/2 и QUIC. Это позволяет протоколу адаптироваться к различным условиям сети и обеспечивать стабильное и быстрое соединение.
VMESS также поддерживает расширенные функции, такие как динамическое распределение портов, балансировка нагрузки и маршрутизация на основе доменных имен. Эти функции позволяют настраивать и оптимизировать сетевой трафик для различных случаев использования и сценариев.
VLESS - это более новый протокол, который был представлен в версии v2ray 4.23.0, и расшифровывается как "VMESS-less". VLESS разработан как более легкая и безопасная версия VMESS, без ущерба для гибкости и возможностей, которые пользователи привыкли получать от V2Ray.
Одно из основных отличий между VLESS и VMESS заключается в том, что VLESS по умолчанию использует шифрование TLS, что обеспечивает дополнительный уровень безопасности по сравнению с VMESS. Это означает, что сервер и клиент VLESS обмениваются данными через зашифрованное соединение, что предотвращает подслушивание и несанкционированное вмешательство третьих лиц. Кроме того, VLESS разработан как более эффективный протокол, чем VMESS, что означает, что он может обрабатывать больше трафика при меньших ресурсах.
Еще одной ключевой особенностью VLESS является упрощенная конфигурация. VLESS требует только один UUID для аутентификации клиента, в то время как VMESS требует как ID, так и alterID. Это упрощает его настройку и использование, особенно для пользователей, которые только начинают работать с V2Ray. Тем не менее, VLESS по-прежнему поддерживает расширенные возможности, такие как несколько пользователей и правила маршрутизации, поэтому он остается мощным и гибким протоколом.
В целом, VLESS обладает рядом преимуществ по сравнению с VMESS, включая повышенную безопасность, эффективность и простоту использования. Однако важно отметить, что VLESS все еще относительно новый протокол, и не все клиенты и серверы V2Ray могут его поддерживать.
Теперь приступим к настройке, все действия я буду производить на выделенном сервере под управлением Debian 11. Поскольку в репозиториях Debian старая версия V2Ray, использовать будем Docker-контейнер. Для начала подключаемся к серверу по SSH командой:
Код: Скопировать в буфер обмена
ssh root@ip_сервера
Устанавливаем Docker по инструкции с официального сайта Docker - https://docs.docker.com/engine/install/debian/
Скачиваем необходимый Docker-контейнер командой
Код: Скопировать в буфер обмена
docker pull teddysun/v2ray
Теперь необходимо сгенерировать UUID для конфигурации через сайт https://www.uuidgenerator.net/version4
Копируем этот UUID, он понадобится для подключения к нашему серверу по этим протоколам
Теперь создаем конфигурационный файл V2Ray (в пункте id вписываем сгенерированный UUID для обоих протоколов):
Код: Скопировать в буфер обмена
Код:
cat > /etc/v2ray/config.json <<EOF
{
"inbounds": [
{
"port": 9000,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "2aec9185-49a5-4aef-bf7e-1f486a9ac919",
"level": 1,
"alterId": 64
}
]
}
},
{
"port": 9000,
"protocol": "vless",
"settings": {
"clients": [
{
"id": "2aec9185-49a5-4aef-bf7e-1f486a9ac919",
"level": 1
}
],
"decryption": "none",
"fallbacks": [
{
"dest": 9000
}
]
},
"streamSettings": {
"network": "tcp"
}
}
],
"outbounds": [
{
"protocol": "freedom",
"settings": {}
},
{
"protocol": "blackhole",
"settings": {},
"tag": "blocked"
}
]
}
EOF
Код: Скопировать в буфер обмена
docker run -d -p 9000:9000 --name v2ray --restart=always -v /etc/v2ray:/etc/v2ray teddysun/v2ray
После этого контейнер работает, проверить работоспособность можно через мобильное приложение V2RayNG (https://github.com/2dust/v2rayNG)
При подключении выбирайте нужный протокол, указывайте название, порт и UUID для подключение, остальные настройки по умолчанию.
В данной инструкции была показана простейшая конфигурация, её можно настроить и более тонко для различных сценариев использования.
Cloak - это тип протокола обфускации, который предназначен для обфускации VPN- и прокси-трафика, что затрудняет обнаружение и блокировку трафика сетевыми администраторами и интернет-провайдерами.
Он работает, используя комбинацию методов, чтобы трафик VPN или прокси выглядел как обычный трафик HTTPS. Во-первых, он шифрует трафик VPN или прокси с помощью шифрования TLS, которое является тем же протоколом шифрования, что и HTTPS. Он также использует технологию фронтирования домена , которая позволяет VPN или прокси-трафику выглядеть так, как будто он идет с легитимного HTTPS-сайта.
Когда пользователь подключается к VPN или прокси-серверу, использующему Cloak, сервер сначала устанавливает TLS-соединение с устройством пользователя. Это начальное соединение используется для обмена ключами и установления зашифрованного канала между двумя устройствами. После установления зашифрованного канала трафик пользователя передается по этому каналу с помощью техники, называемой туннелированием.
В процессе туннелирования трафик пользователя встраивается в HTTP-запросы и отправляется на VPN или прокси-сервер с использованием доменного фронтирования. Таким образом, создается впечатление, что трафик идет с легитимного HTTPS-сайта, что значительно затрудняет обнаружение и блокировку трафика сетевыми администраторами и интернет-провайдерами.
Сравнение этих протоколов и определение того, какой из них лучше использовать, зависит от конкретных случаев использования и индивидуальных предпочтений. Каждый протокол имеет свои сильные и слабые стороны, и выбор лучшего протокола для конкретной ситуации требует глубокого понимания характеристик протокола и требований сети.
Эти протоколы можно совмещать между собой и с популярными VPN-протоколами, такими как Wireguard и OpenVPN, такое решение поможет скрыть факт использования VPN в случаях, если VPN будет заблокирован на уровне протокола.
автор CyberSec
источник RuTOR