В минулій статті я показувала як налаштувати безкоштовний сервер для Foundry VTT, і одним із кроків було встановлення гарної адреси для сайту через No-IP. Але кожні 23 дні там вам на email приходить від No-IP Notices, що цей домен треба підтвердити:

Але через рік користування це починає дратувати, або ви просто забуваєте підтвердити домен в 7 днів які вам надаються, і він стає заблокованим:


Звісно, можна просто перейти на іншу DDNS як то https://www.dynu.com/en-US/DynamicDNS або https://www.duckdns.org/ яку радить сам фаундрі тут (на них нічого підтверджувати не треба), але ми не здаємось так просто! Нам же не потрібно мати гарний домен для гри, головне аби на сайт із фаундрі був доступ, але… блокування гарного домену поламало всі налаштування-костилі в ораклі які були нами побудовані.
Як же зробити доступ до сайту з Foundry VTT по айпі?
0. Заходимо в Oracle Cloud і згадуємо паролі.
https://cloud.oracle.com/
Згадуємо свій нік, потім свою пошту і пароль, підтверджуємо вхід в Authentificator.
Також буде корисним заздалегідь знайти свої файли-ключі для входу на сервер з свого компа, ми їх зберігали на етапі створення інстансу, коли можна було завантажити собі кудись “Save private key та Save public key”.

1. Дивимось свій Public IP в Oracle Instance (краще щоб він не змінювався).
Він нам потрібен, бо вхід на сайт буде в форматі http://your.public.ip.address:30000
Коли ми створювали Instance то Oracle уже автоматично дав йому ефемерний Public IP, це значить, що він:
- залишається однаковим навіть коли ребутите “reboot” сервер.
- але якщо будете “terminate” або “stop and restart” він може змінитися.


Також для параноїків є варіант “Reserve a Static Public IP” у вкладці Networking → Public IPs, але я його не використовую.
До речі, якщо ви запускаєте сервер на домашньому (локальному) комп’ютері в Україні, то скоріше за все у вас динамічний IP і треба замовляти послугу “статичний/постійний IP” у свого провайдера (в Tenet це 50 грн/місяць), щоб порти працювали адекватно.

2. Додаємо нове правило для порту 30000 (Ingress Rule)
Ідем в Networking → Virtual Cloud Networks → Default Security List → кнопка Add Ingress Rules

Заповнюємо поля як показано в табличці:
Поле | Що вписуємо |
---|---|
Source Type | CIDR |
Source CIDR |
|
IP Protocol | TCP |
Destination Port(s) |
|

Не забуваємо примінити це (справа внизу кнопка “Add ingress rules”).
Все, ми додали правило для порту, воно відображується внизу, і все повинно працювати.
3. Перевіряємо доступ до сайту Foundry VTT
Можете одразу спробувати крок 4, але можна заздалегідь перевірити чи все працює.
На своєму домашньому ПК, в юзер-папці куди ми додали ключі доступу до серверу Oracle ми правою клавішею мишки натискаємо “Відкрити вікно PowerShell тут” або “Відкрити Термінал”, по-моєму вони однакові щодо нашої задачі.

Підключаємось до свого серверу (тільки замість 0 поставте свою IP адресу):
ssh -i foundry.key [email protected]
Якщо забули як це робиться: замініть числа, копіюйте цей код, потім правою клавішею в Power Shell-і вставляєте то, і тицяєте Enter.
Побачимо шось таке:

Далі перевіряєм чи працює Foundry VTT:
Спосіб 1:
ps aux | grep node
Побачимо шось типу:
ubuntu 12345 0.5 ... node resources/app/main.js --dataPath=/home/ubuntu/foundrydata
Спосіб 2:
sudo lsof -i -P -n | grep LISTEN
Побачимо шось типу:
node 1234 ubuntu 12u IPv4 1234567 0t0 TCP *:30000 (LISTEN)

Якщо не бачите цього, значить Foundry не працює і його треба запустити вручну. Питайте ChatGPT “How to start Foundry VTT Manually”, отак відповість:

4. Заходимо на свій сайт з працюючим Foundry VTT
Згадуємо свій Public IP який шукали в перших кроках, заміняємо слова у посиланні на нього:
http://your.public.ip.address:30000
Буде типу http://00.000.000.000:30000 тільки замість нулів ваші числа. Все, фаундрі повинно працювати!

Якщо у вас вининуть запитання, можете задавати їх у телеграм-чатику ІНРІУМ або Discord ІНРІУМ, там є багато добрих людей, які допоможуть.