Содержание

Китайский VPN Shadowsocks простая установка и настройка

Если шифрование трафика до доверенного сервера — ваша единственная цель, то OpenVPN для такой цели слишком сложен в настройке, а Dante - A free SOCKS server не шифрует из коробки.

C 2012 года в Китае создан бесплатный открытый проект Shadowsocks. Это пара из программ для сервера и клиента, работающих по следующему принципу: клиент изображает из себя сервер SOCKS5 прокси, получает входящие соединения, шифрует их, транслирует на сервер и дальше выпускает в интернет. Принцип работы похож на SSH туннель, но имеет массу достоинств и пару недостатков по сравнению с ним.

Достоинства и Недостатки Shadowsocks

Достоинства Shadowsocks:

Недостатки Shadowsocks:

Настройка сервера Shadowsocks

Существуют две версии shadowsocks — референс, написанный на питоне, а shadowsock-libev это то же самое, но переписанное на чистом Си для скорости.

В Ubuntu 22 установим утилиты, Shadowsocks сервер и v2ray плагин:

apt-get install dialog htop lsof
 
apt install shadowsocks-libev shadowsocks-v2ray-plugin

После установки сервер уже запущен с конфигурационным файлом /etc/shadowsocks-libev/config.json:

 systemctl status shadowsocks-libev.service
● shadowsocks-libev.service - Shadowsocks-libev Default Server Service
...
     CGroup: /system.slice/shadowsocks-libev.service
             └─1762 /usr/bin/ss-server -c /etc/shadowsocks-libev/config.json

По умолчанию config.json не работает, для его запуска минимально необходимо изменить параметр server. Можно изменить так же метод шифрования. Приводим файл config.json к виду:

{
    "server":["xxx.xxx.xxx.xxx"],
    "mode":"tcp_and_udp",
    "server_port":8388,
    "local_port":1080,
    "password":"your_password",
    "timeout":86400,
    "method":"aes-256-gsm"
}

Настройка клиентов

Замечание: если в браузере установлены расширения, которые управляют выбором прокси-сервера (VPN-расширения, Switchy Omega), то включение ShadowSocks через System Proxy - Global не будет иметь никакого эффекта на браузер. Нужно их либо выключить, либо перенастроить на системный прокси, если есть такая возможность.

Настройка настольного клиента на примере Windows

  1. Скачайте клиента и распакуйте shadowsocks.
  2. Скачайте плагин v2ray, подходящий под вашу платформу. Достаньте из архива файл и переименуйте его в v2ray.exe (или просто v2ray, если ваш проводник не отображает расширения файлов). Поместите его в одну директорию с shadowsocks.
  3. Запустите shadowsocks.
  4. Настройте подключение. Параметры соответствую серверному конфигу.
  5. Нажмите правой кнопкой мыши на значке shadowsocks в системном трее и включите прокси, выбрав в том же контекстном меню System Proxy - Global.
  6. Готово!

Настройка настольного клиента на примере Linux

Также этот способ можно применять на MacOS и Windows для запуска консольного клиента.

  1. Скачайте и распакуйте go-shadowsocks2.
  2. Скачайте распакуйте плагин v2ray-plugin-linux-amd64-v1.3.2.tar.gz.
  3. Поместите оба исполняемых файла в одну директорию. Перейдите в эту директорию в терминале.
  4. Переименуйте исполняемый файл плагина в v2ray
  5. Сделайте оба файла исполняемыми:
     chmod +x shadowsocks2linux v2ray
  6. Запустите прокси командой, , где вместо DOMAIN (в двух местах) и PASSWORD ваш домен и пароль.
    ./shadowsocks2-linux -c "ss://AEAD_CHACHA20_POLY1305:PASSWORD@DOMAIN:443" -verbose -socks :1080 -u -plugin v2ray -plugin-opts "tls;host=DOMAIN"

После запуска на локальном порту 1080 по адресу 127.0.0.1 будет доступен SOCKS5-прокси. Его уже можно использовать в программах.

Заключение

С самого начала shadowsocks разрабатывался как средство для обхода блокировок в Китае, и достаточно в этом деле преуспевает. С некоторого момента он стал иметь возможность подключения внешних модулей-плагинов для оборачивания трафика shadowsocks в различные виды сетевых соединений. Это значительно расширяет границы его применения. shadowsocks - это шифрованный сетевой туннель, клиентская часть которого предоставляет доступ приложениям к сети как SOCKS-прокси, запущенный на этом же устройстве. Существуют клиентские приложения shadowsocks, которые позволяют заворачивать в него трафик как в VPN.

Obfs-proxy. Позволяет завернуть трафик Shadowsocks в чистый, непримечательный SSL и так пустить на порт 443. Это если у кого уже белые списки протоколов.