mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 06:24:42 +02:00
Depuis la 1.1, le client ouvre un socket TCP :8888 en plus du jeu UDP :7777. Bloqué par firewalld, le join réussissait puis le client était déconnecté (~60 s) avec « connection to the host has been lost » (log client : LogReliableMessaging: Failed to connect to server socket). - firewalld gpu-01 : + 8888/tcp (variable satisfactory_reliable_port) - gateway s01 : DNAT + forward étendus à 8888/tcp - doc : tableau des 3 sockets + piège n°3 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3 KiB
3 KiB
Serveur dédié Satisfactory (gpu-01)
Serveur de jeu Satisfactory hébergé sur gpu-01 (192.168.10.20), à côté du
llama-server. Installé par le rôle Ansible satisfactory_server (steamcmd, login
anonyme Steam, app 1690800) — service systemd satisfactory-server.
Accès
| Depuis | Adresse |
|---|---|
| LAN domestique (192.168.1.x) | 192.168.10.20:7777 (route via s01) ou 192.168.1.200:7777 (DNAT) |
| Internet (optionnel) | port-forward box → 192.168.1.200:7777 (TCP+UDP) — le DNAT fait le reste |
Dans le jeu : Server Manager → Add Server. Nom du serveur et mot de passe admin se définissent en jeu à la première connexion (pas de fichier de config).
Réseau
Le serveur utilise trois sockets (Satisfactory ≥ 1.1) :
| Port | Proto | Rôle |
|---|---|---|
| 7777 | UDP | Jeu |
| 7777 | TCP | API HTTPS (Server Manager) |
| 8888 | TCP | Reliable Messaging — bloqué = déconnexion ~60 s après chaque join |
- gpu-01 firewalld :
7777/tcp+udp+8888/tcpouverts (gérés par le rôle). Les ports7778/udpet27015/udpencore ouverts sont des restes pré-1.0, inutiles. - storage-01 nftables (rôle
gateway) : DNAT192.168.1.200 → 192.168.10.20(7777 TCP+UDP, 8888 TCP) + règles forward associées. Redéploiement :--tags gateway.
Exploitation
# état / logs (sur gpu-01)
systemctl status satisfactory-server
journalctl -u satisfactory-server -f
# mise à jour du jeu = simple restart (steamcmd +app_update en ExecStartPre)
systemctl restart satisfactory-server
- Install :
/srv/satisfactory/server(~10 Go, disque OS), user systèmesatisfactory - Sauvegardes :
/srv/satisfactory/.config/Epic/FactoryGame/Saved/SaveGames/server/— ⚠️ aucun backup automatisé (gap connu, comme etcd/PostgreSQL) - Garde-fous ressources (32 Go partagés avec llama-server) :
MemoryMax=16G— une usine late-game qui explose la RAM fait tuer le jeu, pas le LLM — etNice=5(priorité CPU au llama-server). À ajuster via host_vars si besoin.
Pièges rencontrés à l'installation (2026-07-02)
- steamcmd « Missing configuration » (rc=8) au tout premier
+app_update— bug connu steamcmd (app info pas encore en cache). Le rôle fait des retries. - SELinux 203/EXEC :
steamcmd.shextrait depuis /tmp gardait le contexteuser_tmp_t, le jeu héritait devar_t(/srv) — systemd (init_t) refuse d'exécuter ces types. Le rôle pose un fcontextbin_tsursteamcmd/etserver/+restorecon. Symptôme :Failed at step EXEC ... Permission denied. - Déconnexion ~60 s après chaque join (« Your connection to the host has been
lost ») : le port 8888/tcp (Reliable Messaging) n'était pas ouvert. Le join UDP
réussit, puis le client tente le socket TCP 8888, se fait rejeter par firewalld et
abandonne. Diagnostic dans le log client
(
.../FactoryGame/Saved/Logs/FactoryGame.log) :LogReliableMessaging: Error: Failed to connect to server socket.