From f8534c572fd27bb58c5851aa00914e6d29e079f5 Mon Sep 17 00:00:00 2001 From: gSpot Date: Thu, 24 Aug 2023 19:42:29 +0300 Subject: [PATCH] Updated --- ...ние-бесплатных-Shadowsocks-прокси-проекта-Outline.md | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 Использование-бесплатных-Shadowsocks-прокси-проекта-Outline.md diff --git a/Использование-бесплатных-Shadowsocks-прокси-проекта-Outline.md b/Использование-бесплатных-Shadowsocks-прокси-проекта-Outline.md new file mode 100644 index 0000000..13d969c --- /dev/null +++ b/Использование-бесплатных-Shadowsocks-прокси-проекта-Outline.md @@ -0,0 +1,81 @@ +Сервис [Outline](https://outline.network) даёт возможность использовать бесплатные прокси-серверы Shadowsocks. В OpenWrt можно настроить обход блокировок с помощью shadowsocks-libev и ruantiblock (в конфигурации прозрачного прокси). Это неплохой вариант в ситуации когда необходим обход блокировок, но нет возможности (или желания) оплачивать подписку на VPN-сервис или поднимать собственный сервер на зарубежном хостинге. Также, это хорошая альтернатива использованию Tor в качестве прокси. Представленная далее инструкция предлагает применение утилиты [ss_checker](https://github.com/gSpotx2f/ss_checker) для декодирования параметров сервера из URL-ключа, а также для проверки доступности самого прокси-сервера Shadowsocks. + +**1. Установка shadowsocks-libev:** + + opkg install shadowsocks-libev-ss-local shadowsocks-libev-ss-redir shadowsocks-libev-ss-rules shadowsocks-libev-ss-tunnel shadowsocks-libev-config + +**2. Установка приложения для web-интерфейса luci-app-shadowsocks-libev:** + + opkg install luci-app-shadowsocks-libev + +**3. Установка ss_checker:** + + opkg update + wget --no-check-certificate -O /tmp/ss_checker_1.0-0_all.ipk https://github.com/gSpotx2f/packages-openwrt/raw/master/current/ss_checker_1.0-0_all.ipk + opkg install /tmp/ss_checker_1.0-0_all.ipk + rm /tmp/ss_checker_1.0-0_all.ipk + +**4. Выбор сервера Outline:** + +На странице [https://outline.network/servers/](https://outline.network/servers/) нужно выбрать страну, далее выбрать сервер (Access key). На странице сервера скопировать URL-ключ (Outline Access key) вида `ss://...`. + +**5. Автоматическая настройка shadowsocks-libev с помощью скрипта ss_set_server.sh:** + +Даже если на сайте Outline сервер помечен как стабильный (stable), в реальности он может быть недоступен. Поэтому его необходимо проверить. Для этого удобно использовать ss_checker, передав аргументом URL-ключ Shadowsocks сервера (`ss://...`) (в кавычках ""!): + + ss_checker "ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpDb2VhZzVGcmlobXhCVWwxVVo0aG0x@ak1834.www.outline.network.fr8678825324247b8176d59f83c30bd94d23d2e3ac5cd4a743bkwqeikvdyufr.cyou:443#www.outline.network%20(NL)" + +В выводе утилиты будет информация о проверке доступности сервера (OK или FAILED), а также декодированные параметры сервера для клиента Shadowsocks. Их нужно использовать при создании нового удалённого сервера на странице службы Shadowsocks-libev в веб-интерфейсе LuCI, либо при настройке через UCI (в консоли). + +Для автоматизации настройки в пакете ss_checker есть скрипт `ss_set_server.sh`, который выполнит настройку shadowsocks-libev для указанного вами сервера. Скрипт сначала вызывает ss_checker для проверки сервера, и если он доступен, выполняет настройку через UCI и после перезапускает службу shadowsocks-libev. Запуск: + + ss_set_server.sh "ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpDb2VhZzVGcmlobXhCVWwxVVo0aG0x@ak1834.www.outline.network.fr8678825324247b8176d59f83c30bd94d23d2e3ac5cd4a743bkwqeikvdyufr.cyou:443#www.outline.network%20(NL)" + +**6. Настройка ruantiblock, конфигурация прозрачного прокси:** + + uci set ruantiblock.config.proxy_mode="3" + uci set ruantiblock.config.t_proxy_port_tcp="1100" + uci commit ruantiblock + /etc/init.d/ruantiblock restart + + +## Дополнительно. Ручная настройка shadowsocks-libev через UCI: + +**1.1 Добавление сервера вручную (с известными заранее параметрами):** + + uci set shadowsocks-libev.current="server" + uci set shadowsocks-libev.current.server="" + uci set shadowsocks-libev.current.server_port="" + uci set shadowsocks-libev.current.method="" + uci set shadowsocks-libev.current.password="" + +где значения в `<...>` необходимо заменить параметрами вашего Shadowsocks сервера. + +**1.2 Добавление сервера с помощью ss_checker (из URL-ключа с декодированием параметров и проверкой доступности сервера):** + + eval `ss_checker "ss://Y2hhY2hhMjAtaWV0Zi1wb2x5MTMwNTpDb2VhZzVGcmlobXhCVWwxVVo0aG0x@ak1834.www.outline.network.fr8678825324247b8176d59f83c30bd94d23d2e3ac5cd4a743bkwqeikvdyufr.cyou:443#www.outline.network%20(NL)" | awk -F ":\t*" '{if(NR < 3) next; printf $1 "=\"" $2 "\";"}'` + uci batch << EOI + set shadowsocks-libev.current="server" + set shadowsocks-libev.current.server="$server" + set shadowsocks-libev.current.server_port="$server_port" + set shadowsocks-libev.current.method="$method" + set shadowsocks-libev.current.password="$password" + EOI + +где URL-ключ (`ss://...`), передаваемый аргументом ss_checker, нужно заменить на свой. + +**2. Привязка сервера к ss-redir (к экземпляру ss_redir.hi):** + + uci batch << EOI + set shadowsocks-libev.hi.local_address="0.0.0.0" + set shadowsocks-libev.hi.local_port="1100" + set shadowsocks-libev.hi.server="current" + set shadowsocks-libev.hi.disabled="0" + EOI + +**3. Применение конфигурации и перезапуск shadowsocks-libev:** + + uci set shadowsocks-libev.ss_rules.disabled="1" + uci commit shadowsocks-libev + /etc/init.d/shadowsocks-libev restart + /etc/init.d/shadowsocks-libev enable