Skip to content

Instantly share code, notes, and snippets.

@Ieveltyanna
Created April 25, 2026 19:24
Show Gist options
  • Select an option

  • Save Ieveltyanna/575ee02a5a23f11ebf9a32018d27a4cc to your computer and use it in GitHub Desktop.

Select an option

Save Ieveltyanna/575ee02a5a23f11ebf9a32018d27a4cc to your computer and use it in GitHub Desktop.
NaiveProxy на RouteRich + Podkop

NaiveProxy на RouteRich + Podkop

Предполагается, что у вас уже развёрнут NaiveProxy-сервер (Caddy + forwardproxy или аналог).

1. Установка

Подключитесь к роутеру по SSH (ssh root@192.168.1.1) и выполните:

cd /tmp
opkg list-installed | grep -q '^xz ' || { opkg update && opkg install xz; }

VERSION=$(wget -qO- https://api.github.com/repos/klzgrad/naiveproxy/releases/latest | sed -n 's/.*"tag_name": "\([^"]*\)".*/\1/p')
echo "Версия: $VERSION"

wget "https://github.com/klzgrad/naiveproxy/releases/download/${VERSION}/naiveproxy-${VERSION}-openwrt-aarch64_cortex-a53.tar.xz"
xz -d naiveproxy-*.tar.xz
tar -xf naiveproxy-*.tar
cp naiveproxy-*/naive /usr/bin/
chmod +x /usr/bin/naive
rm -rf /tmp/naiveproxy-*

2. Конфигурация

mkdir -p /etc/naive
cat > /etc/naive/config.json << 'EOF'
{
  "listen": "socks://127.0.0.1:1080",
  "proxy": "https://USERNAME:PASSWORD@YOUR-SERVER.COM",
  "log": ""
}
EOF

Замените USERNAME, PASSWORD и YOUR-SERVER.COM на данные вашего NaiveProxy-сервера.

3. Проверка

naive /etc/naive/config.json &
curl -x socks5://127.0.0.1:1080 https://ifconfig.me
killall naive

Должен вернуть IP прокси-сервера.

4. Автозапуск

cat > /etc/init.d/naive << 'EOF'
#!/bin/sh /etc/rc.common
START=90
STOP=10
USE_PROCD=1

start_service() {
    procd_open_instance
    procd_set_param command /usr/bin/naive /etc/naive/config.json
    procd_set_param respawn
    procd_set_param stdout 1
    procd_set_param stderr 1
    procd_close_instance
}
EOF
chmod +x /etc/init.d/naive
/etc/init.d/naive enable
/etc/init.d/naive start

Логи доступны через logread -e naive.

Управление автозапуском — LuCI → System → Startup.

5. Podkop

LuCI → Services → Podkop → секция:

  • Тип подключения: Proxy
  • Тип конфигурации: URL подключения
  • URL: socks5://127.0.0.1:1080

NaiveProxy не проксирует UDP. Если нужен UDP через туннель — включите опцию UDP over TCP в дополнительных настройках секции.

6. Обновление

Для обновления naive до новой версии:

/etc/init.d/naive stop
cd /tmp

VERSION=$(wget -qO- https://api.github.com/repos/klzgrad/naiveproxy/releases/latest | sed -n 's/.*"tag_name": "\([^"]*\)".*/\1/p')
echo "Версия: $VERSION"

wget "https://github.com/klzgrad/naiveproxy/releases/download/${VERSION}/naiveproxy-${VERSION}-openwrt-aarch64_cortex-a53.tar.xz"
xz -d naiveproxy-*.tar.xz
tar -xf naiveproxy-*.tar
cp naiveproxy-*/naive /usr/bin/
chmod +x /usr/bin/naive
rm -rf /tmp/naiveproxy-*

/etc/init.d/naive start

7. Удаление

/etc/init.d/naive stop
/etc/init.d/naive disable
rm -f /usr/bin/naive /etc/init.d/naive
rm -rf /etc/naive
@adminka-root

adminka-root commented May 11, 2026

Copy link
Copy Markdown

Еще замечу, что у меня возникли проблемы, когда sing-box не мог запуститься, т.к. не мог скачать списки. Потому что трафик через прокси не ходил, т.к. весь трафик идет на dpi-анализ sing-box, т.е. включая трафик прокси. Т.е. получается петля. Домен не резолвится, т.к. не работает sing-box, а sing-box не работает, т.к. домен не резолвится. Это как я понял... Может я несу дичь XD Но решается все либо добавлением домена в Exclusion секцию, либо добавлением ip в /etc/hosts

Спасибо за заметку! Единственно, можно было бы сделать чуть универсальнее, написав, как определять архитектуру своего роутера.

P.S.:

VERSION=$(curl -s -k https://api.github.com/repos/klzgrad/naiveproxy/releases/latest | grep -o 'releases/tag/[^"]*' | cut -d '/' -f 3)
echo "Получена версия: $VERSION"

# явно указываем имя выходного файла (архитектура mipsel 24kc)
wget -O naiveproxy.tar.xz "https://github.com/klzgrad/naiveproxy/releases/download/${VERSION}/naiveproxy-${VERSION}-openwrt-mipsel_24kc.tar.xz"

@Ieveltyanna

Copy link
Copy Markdown
Author

@adminka-root

Спасибо за дополнение. Да, действительно сейчас наблюдаются проблемы с доступом к CDN github, добавить запись в /etc/hosts самое быстрое решение.

По поводу универсальности, изначально гайд писался для роутера Routerich, поэтому архитектура, можно сказать, захардкожена. Но ничего не мешает доработать гайд под любую архитектуру, суть не меняется.

@dervart

dervart commented Jun 7, 2026

Copy link
Copy Markdown

Спасибо, всё оказалось проще, не пришлось искать альтернативу podkop. Взлетело сразу. Правильно понимаю, что в таком виде не будет проблем с звонками в программах, которые используют udp? Если включать галочку UDP over TCP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment