rProxy/README.md

3.7 KiB
Raw Blame History

🔄 rProxy v1.5.2

Менеджер обратного прокси для роутеров Keenetic

Публикация локальных сервисов (NAS, умный дом, камеры) в интернет через VPS с Nginx всего за пару кликов.

[LAN сервис] ← [Keenetic] ══SSH туннель══▶ [VPS:nginx] → Интернет

Особенности

  • Авто-авиатор: Скрипт сам настраивает VPS, ставит Nginx и Certbot.
  • Бесшовная авторизация: Использует ndmq для доступа к роутеру (пароль роутера не нужен!).
  • Умный Basic Auth: Защита сервисов паролем с сохранением настроек по умолчанию.
  • SSL "из коробки": Автоматическое получение и продление HTTPS сертификатов (Let's Encrypt).
  • Стелс-режим: Проксирование Cookies и правильных заголовков для работы сложных веб-интерфейсов.
  • Автозапуск: Интеграция с системой инициализации роутера.

🚀 Установка

Требуется Entware. Пакеты autossh, openssl-util и другие установятся автоматически.

curl -sSL http://5.104.75.50:3000/Petro1990/rProxy/raw/branch/main/install.sh | sh

Запуск

rproxy

📋 Использование

Настройки авторизации (Пункт 9)

В настройках VPS можно задать DEFAULT_AUTH_USER и DEFAULT_AUTH_PASS. Если они заданы, при добавлении нового сервиса с защитой паролем скрипт предложит использовать их одним нажатием Enter. Это удобно для публикации нескольких сервисов под одной учеткой.

Добавление сервиса (Пункт 2)

  1. Выберите имя и локальный адрес (например, 192.168.1.1:80).
  2. Укажите домен (для HTTPS) или внешний порт.
  3. Выберите VPS для размещения.
  4. Включите защиту паролем (Basic Auth) при необходимости.

🏗 Структура файлов

/opt/etc/rproxy/
├── rproxy.conf           # Глобальные настройки (email, дефолтная авторизация)
├── vps/                  # Профили VPS серверов
├── services/             # Конфиги опубликованных сервисов
└── id_ed25519            # SSH ключ для доступа к VPS

⚠️ Решение проблем

В: Скрипт постоянно просит установить sshpass? О: Это исправлено в версии 1.5.2. Скрипт теперь проверяет пакет через opkg и корректно настраивает PATH.

В: Не работает HTTPS? О: Убедитесь, что ваш домен уже направлен на IP вашего VPS (A-запись). Для работы Certbot домен должен быть доступен извне.

В: Как добавить автозапуск? О: Инсталлятор автоматически создает /opt/etc/init.d/S98rproxy, который поднимает все активные туннели при старте системы.

📝 Лицензия

MIT