Публикация INFRAX в продакшн
Обзор
Для публикации INFRAX в продакшн доступны два варианта:
Вариант 1: Прямая публикация
INFRAX можно опубликовать напрямую, используя встроенный веб-сервер с собственными SSL сертификатами. Этот вариант подходит для простых сценариев развертывания.
- ✅ Простота настройки - не требуется установка дополнительного ПО
- ✅ Подходит для небольших и средних установок
Вариант 2: Публикация через Reverse Proxy
Использование reverse proxy сервера (Nginx, Traefik, Caddy, HAProxy, Apache) обеспечивает:
- Централизованное управление SSL сертификатами
- Использование стандартных портов 80/443
- Дополнительный уровень безопасности
- Балансировку нагрузки (при необходимости)
- Единую точку входа для всех сервисов
Для продакшн использования рекомендуется вариант с reverse proxy. Для тестирования и небольших установок подойдет прямая публикация.
INFRAX состоит из нескольких сервисов, которые будут опубликованы через reverse proxy:
- INFRAX - основное приложение (порты 8045 - веб-интерфейс, 8042 - нативные клиенты)
- IDENTYX - система управления пользователями (порт 8040)
Если вы планируете использовать нативные клиенты (RDP, SSH, VNC) для удаленных подключений извне вашей сети, порт 8042 контейнера INFRAX должен быть доступен напрямую, без проксирования. См. раздел Доступ для нативных клиентов.
Настройка URL приложений
Перед настройкой reverse proxy необходимо настроить URL приложений в самой системе INFRAX:
Шаг 1: Запуск меню управления
Linux / macOS / Git Bash:
sudo bash infrax.sh
Windows (Command Prompt или PowerShell):
infrax.bat
Шаг 2: Настройка URL
- Выберите пункт "7. ⚙️ Настроить URL приложений"
- Выберите пункт "3. Полностью ввести свой URL"
- Укажите домены для ваших сервисов:
Введите URL для INFRAX: https://infrax.mydomain.ru Введите URL для IDENTYX: https://auth.mydomain.ru
Используйте реальные доменные имена, которые будут настроены в вашем DNS. Убедитесь, что:
- DNS записи A или CNAME указывают на IP адрес вашего сервера
- Используется протокол
https:// - Домены доступны для проверки при получении SSL сертификатов
Вариант 1: Прямая публикация
INFRAX имеет встроенный веб-сервер, который может быть опубликован напрямую в интернет с использованием собственных SSL сертификатов.
При первом запуске с новыми публичными URL, INFRAX автоматически генерирует самоподписанные SSL сертификаты для этих доменов. После этого вы можете заменить их на свои валидные сертификаты.
Важно: Если заменить сертификаты до первого запуска с новыми URL, приложение перезапишет их самоподписанными при старте!
Шаг 1: Настройка URL
Настройте публичные URL через меню управления INFRAX (см. раздел Настройка URL приложений выше).
Шаг 2: Первый запуск с новыми URL
Запустите приложение с новыми URL. При этом INFRAX автоматически сгенерирует самоподписанные SSL сертификаты для указанных доменов:
# Linux / macOS / Git Bash
sudo bash infrax.sh
# Выберите: 1. ▶️ Запустить приложение
# Windows
infrax.bat
# Выберите: 1. ▶️ Запустить приложение
Подождите 1-2 минуты, пока все сервисы полностью запустятся и самоподписанные сертификаты будут созданы.
Приложение создает самоподписанные сертификаты при первом запуске с новыми URL. Если пропустить этот шаг и сразу заменить сертификаты, то при следующем запуске приложение перезапишет ваши валидные сертификаты на самоподписанные!
Шаг 3: Остановка приложения
Остановите приложение для замены самоподписанных сертификатов на валидные:
# Linux / macOS / Git Bash
sudo bash infrax.sh
# Выберите: 2. ⏹️ Остановить приложение
# Windows
infrax.bat
# Выберите: 2. ⏹️ Остановить приложение
Шаг 4: Замена SSL сертификатов
Теперь замените самоподписанные сертификаты на ваши валидные в папке ./data/identyx/data/ssl:
Путь к папке с сертификатами зависит от места установки:
- Linux (стандартная установка):
/opt/infrax/data/identyx/data/ssl - Другое расположение:
<путь_установки>/data/identyx/data/ssl
В этой папке нужно разместить следующие файлы:
apache.crt- ваш SSL сертификат (с цепочкой сертификатов)apache.key- приватный ключ
Пример замены сертификатов:
# Перейдите в директорию с сертификатами
cd /opt/infrax/data/identyx/data/ssl
# Создайте резервную копию старых сертификатов
sudo mv apache.crt apache.crt.bak
sudo mv apache.key apache.key.bak
# Скопируйте ваши сертификаты
sudo cp /path/to/your/apache.crt ./
sudo cp /path/to/your/apache.key ./
# Установите правильные права доступа
sudo chmod 644 apache.crt
sudo chmod 600 apache.key
Шаг 5: Запуск приложения
Запустите приложение с новыми сертификатами:
# Linux / macOS / Git Bash
sudo bash infrax.sh
# Выберите: 1. ▶️ Запустить приложение
# Windows
infrax.bat
# Выберите: 1. ▶️ Запустить приложение
Шаг 6: Настройка firewall
Откройте необходимые порты в firewall:
# UFW (Ubuntu/Debian)
sudo ufw allow 8040/tcp # Identyx
sudo ufw allow 8042/tcp # Video Gateway (нативные клиенты)
sudo ufw allow 8045/tcp # INFRAX
# Firewalld (CentOS/RHEL)
sudo firewall-cmd --permanent --add-port=8040/tcp
sudo firewall-cmd --permanent --add-port=8042/tcp
sudo firewall-cmd --permanent --add-port=8045/tcp
sudo firewall-cmd --reload
Шаг 7: Проверка
Откройте в браузере ваши домены:
- INFRAX:
https://infrax.mydomain.ru:8045 - Identyx:
https://auth.mydomain.ru:8040
Убедитесь, что:
- ✅ Браузер показывает зеленый замок (валидный SSL сертификат)
- ✅ Вход в систему работает
- ✅ Все функции приложения доступны
Ваша установка INFRAX теперь доступна напрямую через интернет с валидными SSL сертификатами!
При обновлении SSL сертификатов (например, после истечения срока действия) повторите шаги 3-5: остановите приложение, замените сертификаты, запустите приложение.
Вариант 2: Публикация через Reverse Proxy
Ниже представлены готовые конфигурации для различных популярных reverse proxy решений. Все конфигурации идентичны по функциональности и обеспечивают:
- ✅ HTTPS терминацию с SSL сертификатами
- ✅ Поддержку WebSocket для real-time обновлений
- ✅ Загрузку файлов размером до 20GB
- ✅ Увеличенные таймауты (300s) для длительных операций
- ✅ Правильную передачу заголовков (Host, X-Real-IP, X-Forwarded-For, X-Forwarded-Proto)
- ✅ Отключение проверки самоподписанных сертификатов backend
Выберите reverse proxy решение в зависимости от ваших потребностей. Каждое решение описано со своими преимуществами и готовой конфигурацией.
Nginx
Nginx — самый популярный высокопроизводительный веб-сервер и reverse proxy с низким потреблением ресурсов.
Преимущества
- Проверенная технология с огромным сообществом
- Отличная производительность
- Обширная документация и примеры
- Широко используется в продакшене
Убедитесь, что на вашем сервере установлены Nginx и Certbot. Инструкции по установке:
Для временных сертификатов можно использовать пакет ssl-cert (Ubuntu/Debian).
Конфигурация Nginx
Создайте конфигурационный файл:
sudo nano /etc/nginx/conf.d/reverse-proxy.conf
Содержимое файла:
# /etc/nginx/conf.d/reverse-proxy.conf
# Общие настройки прокси
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Reverse Proxy для IDENTYX (IAM система)
server {
listen 443 ssl;
server_name auth.mydomain.ru;
# Временные самоподписанные сертификаты
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass https://127.0.0.1:8040;
proxy_ssl_verify off;
# Поддержка WebSocket для реального времени
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
# Reverse Proxy для INFRAX (основное приложение)
server {
listen 443 ssl;
server_name infrax.mydomain.ru;
# Временные самоподписанные сертификаты
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass https://127.0.0.1:8045;
proxy_ssl_verify off;
# Увеличенный лимит для загрузки файлов
client_max_body_size 20G;
# Отключение буферизации для больших файлов
proxy_buffering off;
proxy_request_buffering off;
# Увеличенные таймауты для длительных операций
proxy_read_timeout 300s;
proxy_send_timeout 300s;
# Поддержка WebSocket
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
# HTTP → HTTPS редирект
server {
listen 80;
server_name auth.mydomain.ru infrax.mydomain.ru;
return 301 https://$host$request_uri;
}
# Переменная для корректной установки Connection на Upgrade/keep-alive
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
Не забудьте заменить auth.mydomain.ru и infrax.mydomain.ru на ваши реальные домены!
Применение конфигурации
# Проверка синтаксиса
sudo nginx -t
# Перезагрузка Nginx
sudo systemctl reload nginx
# Получение SSL сертификатов от Let's Encrypt
sudo certbot --nginx -d infrax.mydomain.ru -d auth.mydomain.ru
Traefik
Traefik — современный облачный reverse proxy с автоматическим обнаружением сервисов и встроенной интеграцией с Let's Encrypt.
Преимущества
- Автоматическое обнаружение сервисов в Docker
- Встроенная интеграция с Let's Encrypt
- Динамическая конфигурация без перезапуска
- Современный веб-интерфейс для мониторинга
Убедитесь, что Traefik установлен на вашем сервере. Инструкции по установке см. в официальной документации Traefik.
Docker Compose конфигурация (опционально)
# traefik-docker-compose.yml
version: '3.8'
services:
traefik:
image: traefik:v2.10
container_name: traefik
restart: unless-stopped
networks:
- infrax-network
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./traefik-data/traefik.yml:/traefik.yml:ro
- ./traefik-data/acme.json:/acme.json
- ./traefik-data/config.yml:/config.yml:ro
networks:
infrax-network:
external: true
Конфигурация Traefik (traefik.yml)
api:
dashboard: true
entryPoints:
http:
address: ":80"
http:
redirections:
entryPoint:
to: https
scheme: https
https:
address: ":443"
transport:
respondingTimeouts:
readTimeout: 300s
writeTimeout: 300s
serversTransport:
insecureSkipVerify: true
forwardingTimeouts:
responseHeaderTimeout: 300s
idleConnTimeout: 300s
providers:
file:
filename: /config.yml
certificatesResolvers:
letsencrypt:
acme:
email: admin@mydomain.ru
storage: acme.json
tlsChallenge: {}
Настройка маршрутов (config.yml)
http:
routers:
# INFRAX основное приложение
infrax:
entryPoints:
- https
rule: "Host(`infrax.mydomain.ru`)"
tls:
certResolver: letsencrypt
service: infrax
middlewares:
- infrax-headers
- infrax-buffering
# IDENTYX IAM система
identyx:
entryPoints:
- https
rule: "Host(`auth.mydomain.ru`)"
tls:
certResolver: letsencrypt
service: identyx
middlewares:
- infrax-headers
services:
infrax:
loadBalancer:
servers:
- url: "https://127.0.0.1:8045"
serversTransport: insecureTransport
identyx:
loadBalancer:
servers:
- url: "https://127.0.0.1:8040"
serversTransport: insecureTransport
middlewares:
infrax-headers:
headers:
customRequestHeaders:
X-Forwarded-Proto: "https"
# Ограничение размера загружаемых файлов - 20GB
infrax-buffering:
buffering:
maxRequestBodyBytes: 21474836480
maxResponseBodyBytes: 21474836480
serversTransports:
insecureTransport:
insecureSkipVerify: true
Применение конфигурации
# Создайте директорию
mkdir -p traefik-data
# Создайте файл для SSL сертификатов
touch traefik-data/acme.json
chmod 600 traefik-data/acme.json
# Запустите Traefik
docker compose -f traefik-docker-compose.yml up -d
Caddy
Caddy — современный веб-сервер с автоматическим HTTPS из коробки. Отличается простейшим синтаксисом конфигурации.
Преимущества
- Автоматический HTTPS по умолчанию
- Простейший синтаксис конфигурации
- Встроенная поддержка HTTP/3
- Автоматическое обновление сертификатов
Убедитесь, что Caddy установлен на вашем сервере. Инструкции по установке см. в официальной документации Caddy.
Конфигурация Caddy (Caddyfile)
# /etc/caddy/Caddyfile
# Глобальные настройки
{
email admin@mydomain.ru
}
# INFRAX основное приложение
infrax.mydomain.ru {
# Увеличенный лимит для загрузки больших файлов (20GB)
request_body {
max_size 20GB
}
reverse_proxy https://127.0.0.1:8045 {
transport http {
tls_insecure_skip_verify
read_timeout 300s
write_timeout 300s
}
header_up Host {host}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
flush_interval -1
}
}
# IDENTYX IAM система
auth.mydomain.ru {
reverse_proxy https://127.0.0.1:8040 {
transport http {
tls_insecure_skip_verify
read_timeout 300s
write_timeout 300s
}
header_up Host {host}
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up X-Forwarded-Proto {scheme}
}
}
Применение конфигурации
# Проверка конфигурации
caddy validate --config /etc/caddy/Caddyfile
# Запуск Caddy
sudo systemctl start caddy
sudo systemctl enable caddy
Caddy автоматически получит SSL сертификаты от Let's Encrypt при первом обращении к доменам!
HAProxy
HAProxy — высокопроизводительный TCP/HTTP load balancer с минимальным потреблением ресурсов.
Преимущества
- Исключительная производительность
- Продвинутые алгоритмы балансировки нагрузки
- Детальная статистика и мониторинг
- Минимальное потребление ресурсов
Убедитесь, что HAProxy и Certbot установлены. Инструкции: HAProxy.
Получение SSL сертификатов
# Получите сертификаты
sudo systemctl stop haproxy
sudo certbot certonly --standalone -d infrax.mydomain.ru -d auth.mydomain.ru
sudo systemctl start haproxy
# Объедините для HAProxy
sudo mkdir -p /etc/haproxy/certs
sudo cat /etc/letsencrypt/live/infrax.mydomain.ru/fullchain.pem \
/etc/letsencrypt/live/infrax.mydomain.ru/privkey.pem \
> /etc/haproxy/certs/infrax.mydomain.ru.pem
sudo cat /etc/letsencrypt/live/auth.mydomain.ru/fullchain.pem \
/etc/letsencrypt/live/auth.mydomain.ru/privkey.pem \
> /etc/haproxy/certs/auth.mydomain.ru.pem
sudo chmod 600 /etc/haproxy/certs/*.pem
Конфигурация HAProxy (/etc/haproxy/haproxy.cfg)
global
log /dev/log local0
chroot /var/lib/haproxy
user haproxy
group haproxy
daemon
ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets
defaults
log global
mode http
option httplog
timeout connect 5000
timeout client 300000
timeout server 300000
# Frontend для HTTP (редирект на HTTPS)
frontend http_front
bind *:80
mode http
redirect scheme https code 301 if !{ ssl_fc }
# Frontend для HTTPS
frontend https_front
bind *:443 ssl crt /etc/haproxy/certs/
mode http
# Увеличенный лимит для больших файлов
maxconn 2000
option http-buffer-request
timeout http-request 300s
http-request set-header X-Forwarded-Proto https
http-request set-header X-Forwarded-For %[src]
http-request add-header X-Real-IP %[src]
acl host_infrax hdr(host) -i infrax.mydomain.ru
acl host_identyx hdr(host) -i auth.mydomain.ru
use_backend infrax_backend if host_infrax
use_backend identyx_backend if host_identyx
# Backend для INFRAX
backend infrax_backend
mode http
option forwardfor
timeout server 300s
server infrax1 127.0.0.1:8045 ssl verify none
# Backend для IDENTYX
backend identyx_backend
mode http
option forwardfor
server identyx1 127.0.0.1:8040 ssl verify none
Применение конфигурации
# Проверка синтаксиса
sudo haproxy -c -f /etc/haproxy/haproxy.cfg
# Перезапуск HAProxy
sudo systemctl restart haproxy
Apache HTTP Server
Apache — один из самых популярных веб-серверов с богатой историей и обширной документацией.
Преимущества
- Широкое распространение и большое сообщество
- Обширная документация
- Множество модулей
- Интеграция с certbot
Убедитесь, что Apache и Certbot установлены. Инструкции: Apache.
Включение модулей
# Ubuntu / Debian
sudo a2enmod proxy proxy_http proxy_wstunnel ssl headers rewrite
# CentOS / RHEL - модули включены по умолчанию
Конфигурация Apache
Создайте файл конфигурации:
# Ubuntu/Debian
sudo nano /etc/apache2/sites-available/infrax.conf
# CentOS/RHEL
sudo nano /etc/httpd/conf.d/infrax.conf
Содержимое:
# INFRAX основное приложение
<VirtualHost *:80>
ServerName infrax.mydomain.ru
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>
<VirtualHost *:443>
ServerName infrax.mydomain.ru
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
LimitRequestBody 21474836480
ProxyTimeout 300
Timeout 300
ProxyPreserveHost On
ProxyRequests Off
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
ProxyPass / https://127.0.0.1:8045/
ProxyPassReverse / https://127.0.0.1:8045/
RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) wss://127.0.0.1:8045/$1 [P,L]
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
</VirtualHost>
# IDENTYX IAM система
<VirtualHost *:80>
ServerName auth.mydomain.ru
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>
<VirtualHost *:443>
ServerName auth.mydomain.ru
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
ProxyTimeout 300
Timeout 300
ProxyPreserveHost On
ProxyRequests Off
RequestHeader set X-Forwarded-Proto "https"
ProxyPass / https://127.0.0.1:8040/
ProxyPassReverse / https://127.0.0.1:8040/
RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) wss://127.0.0.1:8040/$1 [P,L]
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
</VirtualHost>
Применение конфигурации
# Ubuntu/Debian
sudo a2ensite infrax.conf
sudo apache2ctl configtest
sudo systemctl restart apache2
sudo certbot --apache -d infrax.mydomain.ru -d auth.mydomain.ru
# CentOS/RHEL
sudo apachectl configtest
sudo systemctl restart httpd
sudo certbot --apache -d infrax.mydomain.ru -d auth.mydomain.ru
Доступ для нативных клиентов
Если вы планируете использовать нативные клиенты (mstsc.exe для RDP, PuTTY для SSH и т.д.) для удаленных подключений извне вашей сети, необходимо обеспечить прямой доступ к порту 8042 контейнера INFRAX.
Порт 8042 НЕ проксируется через reverse proxy, в отличие от портов 8045 (веб-интерфейс) и 8040 (IDENTYX). Это связано с особенностями работы нативных протоколов RDP/SSH/VNC.
Настройка доступа к порту 8042
Для работы нативных клиентов извне необходимо:
- Открыть порт 8042 в firewall:
# UFW (Ubuntu/Debian) sudo ufw allow 8042/tcp # Firewalld (CentOS/RHEL) sudo firewall-cmd --permanent --add-port=8042/tcp sudo firewall-cmd --reload - Настроить проброс порта на роутере/файерволе (если сервер за NAT)
Режимы подключения
| Режим | Порт | Описание | Требования |
|---|---|---|---|
| Веб-клиент | 8045 | Подключение через браузер | Работает через reverse proxy |
| Нативный клиент | 8042 | Системные приложения (mstsc, PuTTY) | Прямой доступ к порту 8042 |
Только веб-доступ (рекомендуется)
Если пользователи работают только через браузер:
- ✅ Порт 8042 можно НЕ открывать извне
- ✅ Все подключения идут через reverse proxy (порты 80/443)
- ✅ Максимальная безопасность
Установка реальных SSL сертификатов
После настройки reverse proxy с временными сертификатами, установите реальные SSL сертификаты от Let's Encrypt.
Для Nginx
sudo certbot --nginx -d infrax.mydomain.ru -d auth.mydomain.ru
Для Apache
sudo certbot --apache -d infrax.mydomain.ru -d auth.mydomain.ru
Для HAProxy
Создайте скрипт обновления сертификатов:
sudo nano /usr/local/bin/renew-haproxy-certs.sh
#!/bin/bash
certbot renew --standalone --pre-hook "systemctl stop haproxy" --post-hook "systemctl start haproxy"
cat /etc/letsencrypt/live/infrax.mydomain.ru/fullchain.pem \
/etc/letsencrypt/live/infrax.mydomain.ru/privkey.pem \
> /etc/haproxy/certs/infrax.mydomain.ru.pem
cat /etc/letsencrypt/live/auth.mydomain.ru/fullchain.pem \
/etc/letsencrypt/live/auth.mydomain.ru/privkey.pem \
> /etc/haproxy/certs/auth.mydomain.ru.pem
chmod 600 /etc/haproxy/certs/*.pem
systemctl reload haproxy
sudo chmod +x /usr/local/bin/renew-haproxy-certs.sh
# Добавьте в cron (выполняется каждую неделю)
sudo crontab -e
# Добавьте: 0 3 * * 0 /usr/local/bin/renew-haproxy-certs.sh
Для Traefik и Caddy
SSL сертификаты обновляются автоматически. Дополнительных действий не требуется.
Проверка работоспособности
После завершения настройки проверьте доступность сервисов:
Проверка с помощью curl
# Проверка IDENTYX
curl -I https://auth.mydomain.ru
# Проверка INFRAX
curl -I https://infrax.mydomain.ru
Успешный ответ должен содержать HTTP/2 200 или HTTP/1.1 200 OK.
Проверка в браузере
- Откройте
https://infrax.mydomain.ruв браузере - Убедитесь, что отображается зеленый замок (валидный SSL сертификат)
- Войдите в систему
- Проверьте основные функции приложения
Проверка WebSocket соединений
Откройте консоль разработчика (F12) и убедитесь, что:
- Нет ошибок подключения к WebSocket
- Уведомления в реальном времени работают
- Обновления данных происходят мгновенно
Устранение неполадок
502 Bad Gateway
Причина: Reverse proxy не может подключиться к backend.
Решение:
- Убедитесь, что INFRAX запущен:
docker ps - Проверьте порты:
sudo netstat -tlnp | grep -E '8040|8045' - Проверьте логи reverse proxy и INFRAX
SSL сертификат не получен
Причина: Certbot не может подтвердить владение доменом.
Решение:
- Проверьте DNS записи:
nslookup infrax.mydomain.ru - Убедитесь, что порт 80 открыт
- Проверьте firewall
WebSocket не работает
Решение: Убедитесь, что в конфигурации присутствуют заголовки Upgrade и Connection для WebSocket.
Большие файлы не загружаются
Решение: Проверьте настройки лимита размера файлов (20GB) в конфигурации вашего reverse proxy.
Ваша установка INFRAX теперь доступна через доменные имена с валидными SSL сертификатами и готова к продакшн использованию!