Доступ до дашборда через інтернет

Що ввімкнути, перш ніж відкривати зал назовні — і чому без цього не можна.

Cord Arena створена для локальної мережі клубу. Але власник часто хоче бачити зал із дому — і тоді сервер треба відкрити назовні правильно, бо разом із дашбордом назовні дивляться й чужі.

1. Ніякого «прокинути порт»

Не відкривайте порт 5000 на роутері. Правильний спосіб — тунель (Cloudflare Tunnel або подібний): він сам зʼєднується назовні, порт у роутері лишається закритим, а трафік іде через HTTPS із сертифікатом.

2. Скажіть серверу, що він за тунелем

У appsettings.json:

"Club": { "BehindProxy": true }

Без цього сервер бачить звичайний http і не позначає cookie входу як Secure — тобто браузер може віддати її незашифрованим зʼєднанням. У локальній мережі цей перемикач має лишатись вимкненим: там заголовки проксі може підробити будь-хто.

3. Приберіть вічний код реєстрації

"Club": { "EnrollmentToken": "" }

І користуйтесь кодами з дашборда: обмеженими в часі, ліченими, відкличними.

4. Агенти — тільки через wss

Якщо машини теж ходять до сервера через інтернет (зазвичай ні — вони в тій самій мережі), адреса в агенті має починатись із wss://, не ws://:

"Agent": { "ServerUrl": "wss://club.ваш-домен/agent" }

По ws:// через інтернет коди чеків і паролі гравців ідуть відкритим текстом. Агент попереджає про це в журналі при старті, якщо бачить неприватну адресу без шифрування.

5. Змініть пароль власника

Той, який ви поставили при першому запуску «щоб швидше», — тепер він відкритий світу. Дашборд блокує вхід на пʼять хвилин після шести невдалих спроб, але це захист від підбору, а не від відомого пароля.

Чого це не замінює

Сервер клубу лишається в залі. Тунель дає вам погляд ззовні, але не переносить систему в хмару: коли інтернет зникає, клуб працює далі, а ви просто тимчасово не бачите зал із дому.