Обновить remna.md

Signed-off-by: Reisber <admin@reisber.space>
This commit is contained in:
2026-04-01 23:41:31 +00:00
parent 41846064fe
commit 1e5d9d2777

165
remna.md
View File

@@ -1,66 +1,127 @@
# Установка ремны на основную ноду и дальнейшая настройка её агентов # 🖥 Установка Remna на основную ноду и настройка агентов
## Установка панели на сервер
### Установка докер ---
```
## 🟢 Установка панели на сервер
### 1⃣ Установка Docker
```bash
sudo curl -fsSL https://get.docker.com | sh sudo curl -fsSL https://get.docker.com | sh
``` ```
### Установка обязательных файлов
Создадим директорию проекта ---
```
### 2⃣ Установка обязательных файлов
Создаем директорию проекта:
```bash
mkdir /opt/remnawave && cd /opt/remnawave mkdir /opt/remnawave && cd /opt/remnawave
``` ```
Закурлим необходимые файлы
``` Скачиваем необходимые файлы:
```bash
curl -o docker-compose.yml https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/docker-compose-prod.yml curl -o docker-compose.yml https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/docker-compose-prod.yml
``` ```
###После чего на конфигурим .env файл
Создадим секретные ключи используя и пароли используя ---
### 3⃣ Настройка `.env` файла
Создаем секретные ключи и пароли:
```bash
sed -i "s/^JWT_AUTH_SECRET=.*/JWT_AUTH_SECRET=$(openssl rand -hex 64)/" .env \
&& sed -i "s/^JWT_API_TOKENS_SECRET=.*/JWT_API_TOKENS_SECRET=$(openssl rand -hex 64)/" .env
sed -i "s/^METRICS_PASS=.*/METRICS_PASS=$(openssl rand -hex 64)/" .env \
&& sed -i "s/^WEBHOOK_SECRET_HEADER=.*/WEBHOOK_SECRET_HEADER=$(openssl rand -hex 64)/" .env
``` ```
sed -i "s/^JWT_AUTH_SECRET=.*/JWT_AUTH_SECRET=$(openssl rand -hex 64)/" .env && sed -i "s/^JWT_API_TOKENS_SECRET=.*/JWT_API_TOKENS_SECRET=$(openssl rand -hex 64)/" .env
sed -i "s/^METRICS_PASS=.*/METRICS_PASS=$(openssl rand -hex 64)/" .env && sed -i "s/^WEBHOOK_SECRET_HEADER=.*/WEBHOOK_SECRET_HEADER=$(openssl rand -hex 64)/" .env Рекомендуется изменить пароль PostgreSQL:
```
Так-же рекомендуется изменить дефолтный Postgress пароль ```bash
``` pw=$(openssl rand -hex 24) \
pw=$(openssl rand -hex 24) && sed -i "s/^POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=$pw/" .env && sed -i "s|^\(DATABASE_URL=\"postgresql://postgres:\)[^\@]*\(@.*\)|\1$pw\2|" .env && sed -i "s/^POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=$pw/" .env \
``` && sed -i "s|^\(DATABASE_URL=\"postgresql://postgres:\)[^\@]*\(@.*\)|\1$pw\2|" .env
После этого необходимо открыть .env файл и отредактировать следующие переменные
``` ```
Открой `.env` и отредактируй:
```text
FRONT_END_DOMAIN FRONT_END_DOMAIN
SUB_PUBLIC_DOMAIN SUB_PUBLIC_DOMAIN
``` ```
**FRONT_END_DOMAIN** is the domain name where the panel will be accessible. Enter your domain name here. Example: `panel.yourdomain.com.`
**SUB_PUBLIC_DOMAIN** for now, just enter your panel domain and add /api/sub to the end. - **FRONT_END_DOMAIN** — домен панели, например: `panel.yourdomain.com`
Example: `panel.yourdomain.com/api/sub.` - **SUB_PUBLIC_DOMAIN** — обычно тот же домен + `/api/sub`, например: `panel.yourdomain.com/api/sub`
(скорее всего файл находится `cd /opt/remnawave && nano .env`)
### Дальше запускаем контейнеры Файл находится здесь:
```bash
cd /opt/remnawave && nano .env
``` ```
---
### 4⃣ Запуск контейнеров
```bash
docker compose up -d && docker compose logs -f -t docker compose up -d && docker compose logs -f -t
``` ```
## После этого необходимо настроить reverse=proxy
### Я выбираю Nginx, но в оффициальной доке много других вариантов ---
Установим необходимые зависимости
``` ## 🔄 Настройка Reverse Proxy
### 1⃣ Установка зависимостей
```bash
apt-get install cron socat apt-get install cron socat
``` ```
Потом установим acme.sh
``` Установка acme.sh:
```bash
curl https://get.acme.sh | sh -s email=EMAIL && source ~/.bashrc curl https://get.acme.sh | sh -s email=EMAIL && source ~/.bashrc
``` ```
(можно использовать любую почту, но лучше использовать валидную)
### Далее создадим папку для сертов > Используй валидный email.
`mkdir -p /opt/remnawave/nginx && cd /opt/remnawave/nginx`
И выпускаем сертификат (НЕ ИСПОЛЬЗУЙТЕ ДОМЕННЫЕ ЗОНЫ .ru .su .рф) ---
### 2⃣ Создание папки для сертификатов
```bash
mkdir -p /opt/remnawave/nginx && cd /opt/remnawave/nginx
``` ```
acme.sh --issue --standalone -d 'DOMAIN' --key-file /opt/remnawave/nginx/privkey.key --fullchain-file /opt/remnawave/nginx/fullchain.pem --alpn --tlsport 8443
``` Выпуск сертификата (не используйте `.ru`, `.su`, `.рф`):
Тут, вообще, я-бы даже рекомендовал вам попробовать сделать это через Nginx proxy manager (на случай если вы будете разворачивать другие сервисы на сервере)
Так или иначе, конфигурим nginx ```bash
acme.sh --issue --standalone -d 'DOMAIN' \
--key-file /opt/remnawave/nginx/privkey.key \
--fullchain-file /opt/remnawave/nginx/fullchain.pem \
--alpn --tlsport 8443
``` ```
> Можно использовать Nginx Proxy Manager для других сервисов.
---
### 3⃣ Конфигурация Nginx
Открываем файл:
```bash
cd /opt/remnawave/nginx && nano nginx.conf cd /opt/remnawave/nginx && nano nginx.conf
``` ```
И суём туда следующий конфиг
``` Вставляем следующий конфиг:
```nginx
upstream remnawave { upstream remnawave {
server remnawave:3000; server remnawave:3000;
} }
@@ -81,7 +142,7 @@ server {
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
} }
# SSL Configuration (Mozilla Intermediate Guidelines) # SSL Configuration
ssl_protocols TLSv1.2 TLSv1.3; ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305;
@@ -135,12 +196,18 @@ server {
ssl_reject_handshake on; ssl_reject_handshake on;
} }
``` ```
После чего создаём docker-compose файл
``` ---
### 4⃣ Создание Docker Compose для Nginx
```bash
cd /opt/remnawave/nginx && nano docker-compose.yml cd /opt/remnawave/nginx && nano docker-compose.yml
``` ```
И пихаем туда следующее
``` Вставляем:
```yaml
services: services:
remnawave-nginx: remnawave-nginx:
image: nginx:1.28 image: nginx:1.28
@@ -162,7 +229,11 @@ networks:
driver: bridge driver: bridge
external: true external: true
``` ```
Запускаем контейнеры и идём на наш домен в браузере
``` ---
### 5⃣ Запуск Nginx контейнера
```bash
docker compose up -d && docker compose logs -f -t docker compose up -d && docker compose logs -f -t
``` ```