mirror of
https://git.reisber.space/Reisber/Personal
synced 2026-04-03 15:38:38 +00:00
297
remna_node.md
Normal file
297
remna_node.md
Normal file
@@ -0,0 +1,297 @@
|
||||
# 🚀 RemnaNode Setup Guide
|
||||
|
||||
> Полное руководство по установке и настройке ноды RemnaNode с использованием Docker
|
||||
> Минимум боли — максимум эстетики ✨
|
||||
|
||||
---
|
||||
|
||||
## 📦 Установка Docker
|
||||
|
||||
Если Docker ещё не установлен — выполни:
|
||||
|
||||
```bash
|
||||
sudo curl -fsSL https://get.docker.com | sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📁 Шаг 1 — Создание директории проекта
|
||||
|
||||
```bash
|
||||
mkdir /opt/remnanode && cd /opt/remnanode
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ➕ Шаг 2 — Добавление Node
|
||||
|
||||
1. Перейди в:
|
||||
```
|
||||
Nodes → Management
|
||||
```
|
||||
2. Нажми кнопку **➕ Add Node**
|
||||
3. Заполни форму
|
||||
|
||||
### ⚠️ Важно
|
||||
|
||||
- Поле **Node Port** используется **только** для внутренних API-запросов между Panel и Node
|
||||
- Этот порт **не используется** нигде больше
|
||||
|
||||
После заполнения:
|
||||
- Нажми **Copy docker-compose.yml**
|
||||
|
||||
---
|
||||
|
||||
## 🧾 Шаг 3 — Создание `docker-compose.yml`
|
||||
|
||||
```bash
|
||||
cd /opt/remnanode && nano docker-compose.yml
|
||||
```
|
||||
|
||||
Вставь скопированную конфигурацию и сохрани файл.
|
||||
|
||||
---
|
||||
|
||||
## ▶️ Шаг 4 — Запуск контейнеров
|
||||
|
||||
```bash
|
||||
docker compose up -d && docker compose logs -f -t
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ Шаг 5 — Завершение настройки
|
||||
|
||||
1. Вернись в панель
|
||||
2. Нажми **Next**
|
||||
3. Выбери нужный **Config Profile**
|
||||
4. Нажми **Create**
|
||||
|
||||
---
|
||||
|
||||
## 🔒 Важно
|
||||
|
||||
> Обязательно закрой `NODE_PORT` в firewall
|
||||
> Разреши доступ **только для IP панели**
|
||||
|
||||
---
|
||||
|
||||
# ⚙️ Advanced Usage
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Кастомные GeoSite и GeoIP
|
||||
|
||||
### ⚠️ Важно
|
||||
|
||||
- Названия `*-zapret.dat` — **пример**
|
||||
- Категория `:zapret` — **пример**
|
||||
- Реальные значения могут отличаться
|
||||
|
||||
### Серверный routing
|
||||
|
||||
- Влияет **только на сервер**
|
||||
- **Не влияет** на DIRECT подключения клиентов
|
||||
|
||||
---
|
||||
|
||||
## 📂 Подключение файлов
|
||||
|
||||
Монтируй файлы в контейнер:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
remnanode:
|
||||
container_name: remnanode
|
||||
hostname: remnanode
|
||||
image: remnawave/node:latest
|
||||
restart: always
|
||||
network_mode: host
|
||||
environment:
|
||||
- NODE_PORT=2222
|
||||
- SECRET_KEY="supersecretkey"
|
||||
volumes:
|
||||
- './geo-zapret.dat:/usr/local/share/xray/geo-zapret.dat'
|
||||
- './ip-zapret.dat:/usr/local/share/xray/ip-zapret.dat'
|
||||
```
|
||||
|
||||
### ⚠️ Осторожно
|
||||
|
||||
- **Не** монтируй всю директорию
|
||||
- Монтируй **только отдельные файлы**
|
||||
|
||||
---
|
||||
|
||||
## 🧠 Использование в Xray config
|
||||
|
||||
```json
|
||||
"routing": {
|
||||
"rules": [
|
||||
{
|
||||
"type": "field",
|
||||
"domain": [
|
||||
"ext:geo-zapret.dat:zapret"
|
||||
],
|
||||
"inboundTag": [
|
||||
"VLESS_TCP_REALITY"
|
||||
],
|
||||
"outboundTag": "NOT_RU_OUTBOUND"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"ip": [
|
||||
"ext:ip-zapret.dat:zapret"
|
||||
],
|
||||
"inboundTag": [
|
||||
"VLESS_TCP_REALITY"
|
||||
],
|
||||
"outboundTag": "NOT_RU_OUTBOUND"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 📜 Логи Node
|
||||
|
||||
## 📁 Подключение логов
|
||||
|
||||
```yaml
|
||||
services:
|
||||
remnanode:
|
||||
container_name: remnanode
|
||||
hostname: remnanode
|
||||
image: remnawave/node:latest
|
||||
restart: always
|
||||
network_mode: host
|
||||
environment:
|
||||
- NODE_PORT=2222
|
||||
- SECRET_KEY="supersecretkey"
|
||||
volumes:
|
||||
- '/var/log/remnanode:/var/log/remnanode'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🧠 Конфиг Xray
|
||||
|
||||
```json
|
||||
"log": {
|
||||
"error": "/var/log/remnanode/error.log",
|
||||
"access": "/var/log/remnanode/access.log",
|
||||
"loglevel": "warning"
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📂 Создание директории
|
||||
|
||||
```bash
|
||||
mkdir -p /var/log/remnanode
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Logrotate
|
||||
|
||||
### Установка
|
||||
|
||||
```bash
|
||||
sudo apt update && sudo apt install logrotate
|
||||
```
|
||||
|
||||
### Конфиг
|
||||
|
||||
```bash
|
||||
nano /etc/logrotate.d/remnanode
|
||||
```
|
||||
|
||||
Вставь:
|
||||
|
||||
```conf
|
||||
/var/log/remnanode/*.log {
|
||||
size 50M
|
||||
rotate 5
|
||||
compress
|
||||
missingok
|
||||
notifempty
|
||||
copytruncate
|
||||
}
|
||||
```
|
||||
|
||||
### Проверка
|
||||
|
||||
```bash
|
||||
logrotate -vf /etc/logrotate.d/remnanode
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 🔐 SSL сертификаты для Xray
|
||||
|
||||
## ⚠️ Внимание
|
||||
|
||||
> Это нужно **только если используешь TLS**
|
||||
> Например: `VLESS-Vision-TLS`
|
||||
> Для Reality — **не требуется**
|
||||
|
||||
---
|
||||
|
||||
## 📂 Монтирование сертификатов
|
||||
|
||||
```yaml
|
||||
remnawave:
|
||||
image: remnawave/backend:latest
|
||||
container_name: 'remnawave'
|
||||
hostname: remnawave
|
||||
restart: always
|
||||
ports:
|
||||
- '127.0.0.1:3000:3000'
|
||||
env_file:
|
||||
- .env
|
||||
networks:
|
||||
- remnawave-network
|
||||
volumes:
|
||||
- '/opt/remnawave/nginx:/var/lib/remnawave/configs/xray/ssl'
|
||||
depends_on:
|
||||
remnawave-db:
|
||||
condition: service_healthy
|
||||
remnawave-redis:
|
||||
condition: service_healthy
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ℹ️ Как это работает
|
||||
|
||||
- Panel автоматически читает файлы
|
||||
- Отправляет сертификаты на Node
|
||||
- Используется директория:
|
||||
|
||||
```
|
||||
/var/lib/remnawave/configs/xray/ssl/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🧠 Использование в Xray
|
||||
|
||||
```json
|
||||
"certificates": [
|
||||
{
|
||||
"keyFile": "/var/lib/remnawave/configs/xray/ssl/privkey.key",
|
||||
"certificateFile": "/var/lib/remnawave/configs/xray/ssl/fullchain.pem"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ Важно
|
||||
|
||||
- `.key` — приватный ключ
|
||||
- `.pem` — сертификат
|
||||
|
||||
👉 Не перепутай расширения 🚀
|
||||
Reference in New Issue
Block a user