Восстановление подробного README и обновление версии до 1.5.3
This commit is contained in:
parent
17a0dc33b2
commit
baf5dc1ed7
79
README.md
79
README.md
|
|
@ -1,11 +1,11 @@
|
|||
# 🔄 rProxy v1.5.2
|
||||
# 🔄 rProxy v1.5.3
|
||||
|
||||
**Менеджер обратного прокси для роутеров Keenetic**
|
||||
|
||||
Публикация локальных сервисов (NAS, умный дом, камеры) в интернет через VPS с Nginx всего за пару кликов.
|
||||
|
||||
```
|
||||
[LAN сервис] ← [Keenetic] ══SSH туннель══▶ [VPS:nginx] → Интернет
|
||||
```text
|
||||
[LAN сервис] ← [Keenetic] ══SSH туннель══▶ [VPS:Nginx] → Интернет
|
||||
```
|
||||
|
||||
## ⚡ Особенности
|
||||
|
|
@ -14,52 +14,71 @@
|
|||
- **Умный Basic Auth**: Защита сервисов паролем с сохранением настроек по умолчанию.
|
||||
- **SSL "из коробки"**: Автоматическое получение и продление HTTPS сертификатов (Let's Encrypt).
|
||||
- **Стелс-режим**: Проксирование Cookies и правильных заголовков для работы сложных веб-интерфейсов.
|
||||
- **Автозапуск**: Интеграция с системой инициализации роутера.
|
||||
- **Автозапуск**: Интеграция с системой инициализации роутера (`S98rproxy`).
|
||||
|
||||
## 🚀 Установка
|
||||
## 🚀 Быстрый старт
|
||||
|
||||
> Требуется [Entware](https://help.keenetic.com/hc/ru/articles/360021214160). Пакеты `autossh`, `openssl-util` и другие установятся автоматически.
|
||||
### 1. Установка (на роутере Keenetic)
|
||||
> Требуется [Entware](https://help.keenetic.com/hc/ru/articles/360021214160). Пакеты `autossh`, `openssl-util` и другие установятся автоматически при первом запуске.
|
||||
|
||||
```bash
|
||||
curl -sSL http://5.104.75.50:3000/Petro1990/rProxy/raw/branch/main/install.sh | sh
|
||||
```
|
||||
|
||||
### Запуск
|
||||
### 2. Запуск
|
||||
```bash
|
||||
rproxy
|
||||
```
|
||||
|
||||
## 📋 Использование
|
||||
|
||||
### Настройки авторизации (Пункт 9)
|
||||
В настройках VPS можно задать `DEFAULT_AUTH_USER` и `DEFAULT_AUTH_PASS`.
|
||||
Если они заданы, при добавлении нового сервиса с защитой паролем скрипт предложит использовать их одним нажатием Enter. Это удобно для публикации нескольких сервисов под одной учеткой.
|
||||
### Основное меню
|
||||
1. **📋 Список сервисов**: Просмотр статуса, ссылок и портов.
|
||||
2. **➕ Добавить сервис**: Пошаговый мастер публикации нового ресурса.
|
||||
3. **📝 Редактировать сервис**: Изменение параметров (SSL, порты, Auth) без удаления.
|
||||
4. **❌ Удалить сервис**: Полная очистка туннеля и конфигурации на VPS.
|
||||
9. **⚙️ Настройки VPS**: Управление профилями серверов и дефолтной авторизацией.
|
||||
10. **🆙 Обновить rProxy**: Загрузка новой версии прямо из меню.
|
||||
|
||||
### Добавление сервиса (Пункт 2)
|
||||
1. Выберите имя и локальный адрес (например, `192.168.1.1:80`).
|
||||
2. Укажите домен (для HTTPS) или внешний порт.
|
||||
3. Выберите VPS для размещения.
|
||||
4. Включите защиту паролем (Basic Auth) при необходимости.
|
||||
## 🏗 Архитектура
|
||||
|
||||
## 🏗 Структура файлов
|
||||
```text
|
||||
/opt/etc/rproxy/
|
||||
├── rproxy.conf # Глобальные настройки (email, дефолтная авторизация)
|
||||
├── vps/ # Профили VPS серверов
|
||||
├── services/ # Конфиги опубликованных сервисов
|
||||
└── id_ed25519 # SSH ключ для доступа к VPS
|
||||
```
|
||||
### На роутере (Keenetic + Entware)
|
||||
- **autossh** — поддерживает устойчивые SSH-туннели.
|
||||
- **Иннициализация**: `/opt/etc/init.d/S98rproxy` для автозапуска.
|
||||
- **Конфиги**: `/opt/etc/rproxy/`.
|
||||
|
||||
## ⚠️ Решение проблем
|
||||
### На VPS (Debian/Ubuntu/CentOS)
|
||||
- **Nginx** — принимает запросы и прокидывает их в туннель.
|
||||
- **Certbot** — управляет SSL-сертификатами.
|
||||
|
||||
**В: Скрипт постоянно просит установить sshpass?**
|
||||
О: Это исправлено в версии 1.5.2. Скрипт теперь проверяет пакет через `opkg` и корректно настраивает `PATH`.
|
||||
## 🔒 Безопасность
|
||||
- SSH-ключи (Ed25519) — рекомендуемый способ входа на VPS.
|
||||
- Конфиденциальность: Права 600 на ключи и файлы настроек.
|
||||
- Защита хешей: Пароли в `.htpasswd` защищены от раскрытия переменных оболочкой.
|
||||
|
||||
**В: Не работает HTTPS?**
|
||||
О: Убедитесь, что ваш домен уже направлен на IP вашего VPS (A-запись). Для работы Certbot домен должен быть доступен извне.
|
||||
## 🔧 Решение проблем
|
||||
|
||||
**В: Как добавить автозапуск?**
|
||||
О: Инсталлятор автоматически создает `/opt/etc/init.d/S98rproxy`, который поднимает все активные туннели при старте системы.
|
||||
### Туннель не подключается
|
||||
- Проверьте статус в пункте **1**.
|
||||
- Попробуйте **Перезапустить (пункт 7)**.
|
||||
- Проверьте доступность VPS: `ping <IP_VPS>`.
|
||||
|
||||
### Не работает HTTPS
|
||||
- Убедитесь, что домен направлен на IP VPS (A-запись).
|
||||
- Проверьте лог Nginx на VPS: `tail -f /var/log/nginx/error.log`.
|
||||
|
||||
## 📦 Требования
|
||||
- **Keenetic** с прошивкой 3.x+ и Entware.
|
||||
- **VPS** с публичным IP (рекомендуется чистая Ubuntu/Debian).
|
||||
- **sshpass** (ставится автоматически, если нужен вход по паролю).
|
||||
|
||||
## ❓ FAQ
|
||||
|
||||
**В: Как работает "авто-установка" зависимостей?**
|
||||
О: В v1.5.2+ скрипт при старте проверяет наличие `openssl-util`, `curl` и `sshpass`. Если их нет, он сам делает `opkg update` и устанавливает их.
|
||||
|
||||
**В: Что такое "Стелс-режим"?**
|
||||
О: Это набор настроек Nginx, которые передают заголовок `Host` и `Upgrade`, позволяя работать WebSockets и сложным админкам.
|
||||
|
||||
## 📝 Лицензия
|
||||
MIT
|
||||
|
|
|
|||
Loading…
Reference in New Issue