mirror of
https://github.com/gSpotx2f/ruantiblock_openwrt.git
synced 2026-05-14 14:40:58 +00:00
Updated
@@ -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="<server>"
|
||||||
|
uci set shadowsocks-libev.current.server_port="<server_port>"
|
||||||
|
uci set shadowsocks-libev.current.method="<method>"
|
||||||
|
uci set shadowsocks-libev.current.password="<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
|
||||||
Reference in New Issue
Block a user