HighLoad VPN на роутере Keenetic с Entware
techno1dСчитаем, что все необходимые для подключения к HighLoad VPN шаги пройдены, и ссылка вида ss://BASE64_STRING@SERVER:PORT/?outline=1 уже есть. В дальнейшем сведения из этой ссылки потребуются для написания конфига нашего клиента.
Нам потребуется роутер Keenetic с установленным менеджером пакетов Opkg, Вот инструкция по его установке. Думаю, что подойдёт любой роутер с OpenWRT.
Далее необходимо установить клиент Shadowsocks. Пакет shadowsocks-libev, в Opkg отсутствует, но зато есть обнаружились shadowsocks-libev-ss-local, shadowsocks-libev-ss-redir и shadowsocks-libev-ss-tunnel, которые и составляют shadowsocks-libev согласно информации на https://github.com/shadowsocks/openwrt-shadowsocks. Возможно, достаточно установить только первый из них, но утверждать не берусь, т.к. сразу же установил все три.
~ # opkg update
~ # opkg install shadowsocks-libev-ss-local shadowsocks-libev-ss-redir shadowsocks-libev-ss-tunnel
После установки открываем файл конфигурации:
~ # nano /opt/etc/shadowsocks.json
и заполняем его данными из ссылки для подключения. Что здесь что, думаю вполне очевидно, кроме разве что BASE64_STRING. По сути это просто строка, содержащая тип шифрования и пароль для подключения и закодированная в Base64-кодировке. Чтобы извлечь из неё необходимые сведения достаточно воспользоваться любым Base-64 декодером (гугл в помощь). В итоге получим строку вида chacha20-ietf-poly1305:PASSWORD. Теперь можно заполнять конфиг:
{
"server":"SERVER",
"server_port":PORT,
"local_address":"192.168.1.1",
"local_port":1080,
"password":"PASSWORD",
"timeout":60,
"method":"chacha20-ietf-poly1305",
"fast_open": true
}
В качестве local_address указан адрес роутера в локальной сети, чтобы можно было подключаться к нему как к SOCKS5-прокси. Значение local_port оставил установленным по умолчанию.
После того, как сохранили конфиг, запускаем shadowsocks-клиент:
~ # /opt/etc/init.d/S22shadowsocks start
В результате должны увидеть следующее:
Starting ss-local... done.
Теперь можно пробовать подключаться к получившейся прокси. Я это делал в Firefox:
После чего идём на любой сервис проверки нашего IP, например https://whatismyipaddress.com/, и проверяем, всё ли получилось.
Далее уже можно настроить роутер, чтобы он все запросы перенаправлял через это соединение. Вот пример настройки https://github.com/shadowsocks/shadowsocks-libev#transparent-proxy.
Также в Windows можно попробовать настроить системный прокси.