Установка shadowsocks для домохозяек™

Установка shadowsocks для домохозяек™

special for 2ch.hk/s

Почему именно shadowsocks?

1) Быстрее OpenVPN (даже без обфускации и через UDP).
2)
Даже без обфускации не детектится Великим Китайским Фаерволлом!
3)
С обфускацией, которая ставится в несколько простых шагов, дает пососать абсолютно всем.

По скорости:

SSH ≈ SS > OVPN-UDP > говно > моча > SOFTETHER

И как это всё развернуть?

1) Покупаешь дешевый VPS.
Посмотреть их список можно на lowendstock.com или на vps.menu
Обязательные требования к серверу: ≥128MB RAM, адрес IPv4 (не за NAT).

2) В панели управления сервером выбираем Ubuntu 16.04-17.04

3) Цепляемся к серверу по SSH:
3.1) Windows:
скачиваешь Putty
Hostname: адрес сервера
Port: тот, что предоставит тебе хостер, по дефолту 22

3.2) Android: JuiceSSH (APK можно утащить отсюда)

3.3) iOS: WebSSH Essential

3.4) *nix: ssh адрес -l логин -p порт

Логин и пароль тебе даст хостер. Кто-то показывает его в панели управления, кто-то присылает по почте. Если логин отличный от root - выполни команду "su" перед вводом команд!

4) Устанавливаем SS на сервере:

apt update && apt upgrade -y && apt install software-properties-common nano -y && add-apt-repository ppa:max-c-lv/shadowsocks-libev && apt update && apt install shadowsocks-libev -y

НАЖАТЬ ENTER ПО ЗАПРОСУ!

5) Настраиваем SS:

nano /etc/shadowsocks-libev/config.json

В открывшемся файле подставляешь следующие значения:

{
    "server":"пишешь_сюда_адрес_твоего_сервера",
    "server_port":443,
    "password":"копируешь_тот_что_сгенерирован",
    "timeout":30,
    "method":"chacha20-ietf-poly1305",
    "fast_open":true,
    "reuse_port": true,
    "mode": "tcp_and_udp"
}

Выходим из редактора через Ctrl+X, сохраняешь файл на Y, ENTER. Далее перезапускаем SS:

systemctl enable shadowsocks-libev.service && systemctl restart shadowsocks-libev

6) Скачиваем и настраиваем клиенты:

6.1) Windows: здесь
Тебе нужен zip файл. Скачай и распакуй его куда-нибудь.
Запускаешь shadowsocks.exe, в трейбаре должен появиться его логотип (самолетик).
Жмакаешь ПКМ по этому самолётику - ставишь галочку Start On Boot
Далее идешь в Servers - Edit Servers
Заполняешь поля по аналогии с конфигом на сервере. В строке Proxy Port ставишь тот, который тебе удобен (можно оставить дефолтный 1080).

6.2) Android: Google Play и .apk
Все почти так же, как и на винде. В меню Apps VPN mode выбираешь нужные приложения, трафик которых будет заворачиваться через SS.

6.3) iOS: есть какая-то стрёмная хуита на китайском. Составитель этого гайда за неё не ручается, используйте на свой страх и риск.

6.4) MacOS: ShadowsocksX-NG

6.5) OpenWRT: opkg install shadowsocks-libev
Дальнейшая настройка идентична обычному способу из п6.6

6.6) *nix: быстрый и простой способ через ГУЙ - shadowsocks-qt5 (github)
Однако, он не умеет в Simple-OBFS и вообще в плагины (обещают реализовать в следующем мажорном апдейте). Если тебе нужна обфускация, то делаешь как написано дальше.

Обычный способ: повторяешь пункт 4 (с адаптацией под свой дистрибутив).
Заполняешь конфиг по аналогии с серверным:

sudo nano /etc/shadowsocks-libev/config.json

Добавь строчку "local_port":1080, где-нибудь между строчками.
После выхода из редактора цепляй этот конфиг к SS:

sudo ss-local -c /etc/shadowsocks-libev/config.json

Опционально можно добавить сервис, чтобы соединение было всегда после перезагрузки:

sudo nano /etc/systemd/system/ss-local.service

Вставляем это:

[Unit]
Description=Daemon to start Shadowsocks Client
Wants=network-online.target
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/ss-local -c /etc/shadowsocks-libev/config.json

[Install]
WantedBy=multi-user.target

Выходим с сохранением, выполняем:

sudo systemctl daemon-reload && sudo systemctl enable ss-local.service && sudo systemctl start ss-local.service

7) Скачиваешь для Chrome и/или Firefox аддон SwitchyOmega.
Открываешь его настройки (ЛКМ по иконке - Options)
Profiles - New profile...

Profile name: пишешь что угодно
Profile type: Proxy Profile
Protocol: SOCKS5
Server: 127.0.0.1
Port: тот, что поставил в 6 пункте, по дефолту 1080
Жмешь Apply Changes.
Снова тапаешь ЛКМ по иконке - выбираешь свой профиль.

Устанавливаем Simple-OBFS

Simple-OBFS необходим для того, чтобы наебать провайдера, который троттлит или дропает трафик SS. Настоятельно рекомендуется к установке (даже если у вас и без него всё работает нормально - не исключено, что завтра работать уже не будет).

1) Цепляемся к серверу по SSH. Выполняем:

apt install --no-install-recommends build-essential git autoconf libtool libssl-dev libpcre3-dev libc-ares-dev libev-dev asciidoc xmlto automake -y && git clone https://github.com/shadowsocks/simple-obfs.git && cd simple-obfs && git submodule update --init --recursive && ./autogen.sh && ./configure && make && make install

После установки снова открываем конфиг SS:

nano /etc/shadowsocks-libev/config.json

Между строк reuse_port и mode добавляем:

"plugin":"obfs-server",
"plugin_opts":"obfs=tls",

Выходим с сохранением. Выдаём права Simple-OBFS и перезапускаем shadowsocks:

setcap cap_net_bind_service+ep /usr/local/bin/obfs-server && systemctl enable shadowsocks-libev.service && systemctl restart shadowsocks-libev

2) Установка на клиентах:

2.1) Windows: скачиваешь obfs-local.zip отсюда
Распаковываешь его в ту же папку, что и shadowsocks. Щелкаешь ПКМ по самолету - Servers - Edit Servers. Добавляешь значения к полям:

Plugin: obfs-local
Plugin Options: obfs=tls

Перезапускаешь клиент shadowsocks.

2.2) Android: Google Play (.apk)
После установки заходишь в SS, в профиле сервера выбираешь плагином Simple obfuscation. После идёшь в Configure и в параметре Obfuscation wrapper выбираешь tls. Сохраняешь профиль, перезапускаешь SS.

2.3) iOS: ??? (знающие аноны, отпишитесь в тред)

2.4) *nix: читаешь здесь инструкции под свой дистрибутив.


Какие ещё способы обхода блокировок есть?


Report Page