Files
Personal/remna_node.md
2026-04-01 23:39:56 +00:00

297 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🚀 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` — сертификат
👉 Не перепутай расширения 🚀