Proteggere un server Conan Exiles dagli attacchi DDoS

Pubblicato il 22 min di lettura

Quali porte servono davvero a un server Conan Exiles, come mettere in sicurezza RCON e la porta di query, perché i server PvP vengono attaccati proprio nella finestra di raid, e da quale volume di attacco aiuta solo il filtraggio nella rete a monte.

Un server Conan Exiles che diventa irraggiungibile proprio all'inizio della finestra di raid raramente ha un problema hardware. Nella stragrande maggioranza dei casi è in corso un attacco, e parte esattamente quando fa il danno maggiore. Questo articolo mostra perché i server Conan Exiles hanno bisogno di una protezione DDoS, che cosa puoi mettere in sicurezza da solo nei prossimi dieci minuti senza costi aggiuntivi, dove queste misure si fermano dal punto di vista tecnico e che cosa deve succedere poi nella rete davanti al server.

Tutte le indicazioni si riferiscono al server dedicato di Funcom, quindi a ConanSandboxServer.exe oppure a StartServer.bat. La configurazione sta in tre file nella directory ConanSandbox\Saved\Config\WindowsServer\: ServerSettings.ini, Engine.ini e Game.ini. Vale anche se fai girare il server su Linux attraverso uno strato di compatibilità, perché Funcom distribuisce esclusivamente l'applicazione per Windows, e per questo motivo il percorso si chiama WindowsServer anche lì.

Se l'attacco è in corso proprio adesso: metti prima al sicuro i valori misurati (sezione 9), dopo l'attacco non ci sono più. E adesso non modificare nessun file INI. Conan Exiles tiene la propria configurazione in memoria e la riscrive quando termina, quindi ogni modifica fatta a server acceso va persa.

Perché i server Conan Exiles hanno bisogno di una protezione DDoS

Nella maggior parte dei giochi un server che cade è una seccatura. In Conan Exiles, su un server PvP, è una mossa di gioco. Le perdite sono definitive, una base si può danneggiare solo all'interno di una finestra temporale definita, e chi toglie dal gioco i difensori proprio in quella finestra raida senza avere nessuno di fronte. L'attacco ha quindi un guadagno concreto e un momento noto in anticipo, e si ripete non appena ha funzionato una volta.

La finestra temporale non è un segreto. Sta nella ServerSettings.ini sotto RestrictPVPTime per il combattimento fra giocatori e sotto RestrictPVPBuildingDamageTime per il danno agli edifici, e ogni operatore la scrive spontaneamente nel nome del server, nel regolamento e nel Discord, perché altrimenti i giocatori non la conoscerebbero. Chi attacca non deve quindi spiare nulla: legge l'orario del raid là dove viene pubblicizzato e fissa il proprio attacco alla stessa ora.

Lo sforzo dall'altra parte è minimo. I cosiddetti servizi booter o stresser vendono un flood contro un determinato indirizzo IP e una determinata porta, al minuto. Un attacco DDoS sulla porta 7777 UDP non richiede né l'accesso al gioco né conoscenze sul tuo server, bastano indirizzo e numero di porta. Proprio per questo colpisce i server piccoli con la stessa affidabilità di quelli grandi.

A questo si aggiunge una particolarità che distingue Conan Exiles dalla maggior parte dei giochi di sopravvivenza. La ServerSettings.ini conosce l'interruttore LogoutCharactersRemainInTheWorld. Se sta su True, dopo una disconnessione il personaggio resta fermo nel mondo invece di sparire. Un attacco che butta fuori tutti i giocatori nello stesso momento lascia quindi una fila di figure immobili, equipaggiamento compreso. Che cosa succede tecnicamente durante un attacco del genere lo descrive l'articolo Che cos'è un attacco DDoS?.

Sul piano tecnico tutto il traffico di gioco passa da UDP. UDP non prevede alcuna apertura di connessione da pretendere e gli indirizzi mittente si possono falsificare. Chi attacca non deve quindi né entrare nel tuo server né interrogarlo in modo corretto per generare carico. Non deve nemmeno sapere se c'è qualcuno online.

Le porte di cui si tratta davvero

Verso l'esterno un server Conan Exiles ha bisogno esattamente di tre porte UDP: 7777, 7778 e 27015. Tutto il resto è opzionale oppure non deve proprio stare sulla rete aperta. Funcom documenta così la ripartizione:

Porta Protocollo A che cosa serve Dove si imposta
7777 UDP traffico di gioco (movimento, combattimento, costruzione, sincronizzazione) Engine.ini, sezione [URL], Port=7777, parametro di avvio -Port=
7778 UDP pinger, fisso sulla porta di gioco più uno Engine.ini, sezione [URL], PeerPort=7778
27015 UDP richiesta di stato in formato Steam per la lista dei server Engine.ini, [OnlineSubsystemSteam], ServerQueryPort, parametro di avvio -QueryPort=
7777 TCP trasferimento delle mod al client, viene aperta solo se serve identica alla porta di gioco
25575 TCP controllo remoto RCON, disattivato di fabbrica Game.ini, sezione [RconPlugin], RconPort=25575, parametro di avvio -RconPort=

Tre cose vengono sbagliate con regolarità. Primo: la 7778 non è una porta scelta liberamente, ma sempre la porta di gioco più uno. Chi fa girare due istanze sulla stessa macchina deve quindi procedere a passi di due: 7777 e 7778 per la prima, 7779 e 7780 per la seconda, più 27015 e 27016 come porte di query. Chi mette la seconda istanza sulla 7778 toglie il pinger alla prima.

Secondo: l'apertura TCP sulla 7777 è il trasferimento delle mod. Funcom la apre solo su richiesta di un client, e la richiesta arriva esclusivamente dai client dell'Epic Games Store. I client Steam continuano a prendere le mod attraverso l'interfaccia Workshop di Steam. Se i tuoi giocatori arrivano solo da Steam, questa apertura non ti serve.

Terzo: RCON è spento di fabbrica. RconEnabled sta su 0 come impostazione predefinita. Chi trova comunque la porta aperta lo ha acceso da solo oppure ha ripreso un modello già pronto di un hoster.

Che cosa puoi fare da solo prima di spendere

I nove passaggi seguenti non costano nulla e funzionano contro quello che nella pratica capita più spesso: piccoli flood mirati da poche sorgenti, porte di query sfruttate in modo improprio, tentativi di accesso su RCON e sovraccarico causato da una singola mod. Restano utili anche quando davanti lavora già un filtro di rete.

1. Inventario: che cosa è in ascolto?

Prima di scrivere anche una sola regola, guarda che cosa offre il tuo server verso l'esterno. Non tirare a indovinare, controlla. Su Windows:

Get-NetUDPEndpoint | Where-Object LocalPort -in 7777,7778,27015
Get-NetTCPConnection -State Listen | Sort-Object LocalPort
netstat -ano -p UDP | findstr "7777 7778 27015"

Se il server gira su Linux in uno strato di compatibilità, l'equivalente è:

ss -lnup
ss -lntp

La colonna interessante è quella dell'indirizzo locale. 0.0.0.0:7777 significa "raggiungibile da tutta internet", 127.0.0.1:25575 significa "solo in locale" e non richiede alcuna regola firewall. Il punto di vista di chi attacca lo dà una scansione delle porte dall'esterno, ed esplicitamente anche su UDP, perché su Conan Exiles una scansione solo TCP non trova quasi nulla:

nmap -Pn -sU -p 7777,7778,27015 IP.DEL.TUO.SERVER
nmap -Pn -p 7777,25575 IP.DEL.TUO.SERVER

2. Aprire soltanto le tre porte UDP

Su Windows bastano due regole nel firewall integrato. La prima apre il funzionamento del gioco, la seconda limita RCON al tuo indirizzo invece di aprire la porta a tutti:

New-NetFirewallRule -DisplayName "Conan Exiles" -Direction Inbound -Protocol UDP -LocalPort 7777,7778,27015 -Action Allow
New-NetFirewallRule -DisplayName "Conan RCON" -Direction Inbound -Protocol TCP -LocalPort 25575 -RemoteAddress 203.0.113.10 -Action Allow
Get-NetFirewallRule -DisplayName "Conan*" | Format-Table DisplayName,Enabled,Direction,Action

Su Linux la stessa cosa con UFW si presenta così, e proprio in questo ordine, per non restare chiuso fuori dal tuo server:

ufw allow 22/tcp comment 'SSH'
ufw allow 7777/udp comment 'Conan Exiles'
ufw allow 7778/udp comment 'Conan Exiles Pinger'
ufw allow 27015/udp comment 'Conan Exiles Query'
ufw allow from 203.0.113.10 to any port 25575 proto tcp comment 'RCON'
ufw default deny incoming
ufw --force enable
ufw status verbose

Sostituisci 203.0.113.10 con il tuo indirizzo. La guida completa, via di fuga compresa, è in Configurare il firewall UFW senza bloccarsi fuori. L'apertura TCP sulla 7777 la lasci perdere finché nessuno dei tuoi giocatori arriva dall'Epic Games Store.

3. Mettere in sicurezza RCON oppure spegnerlo del tutto

RCON è un controllo remoto con accesso completo al tuo server: espellere giocatori, bannare, inviare messaggi, eseguire comandi. Gira su TCP 25575 e si configura nella Game.ini:

[RconPlugin]
RconEnabled=0
RconPort=25575
RconPassword=
RconMaxKarma=60

Se RCON non ti serve, lascia RconEnabled=0 com'è. È l'impostazione predefinita ed è anche la più sicura. Se invece ti serve, valgono tre regole. Primo: RconPassword deve essere lunga e casuale, perché il protocollo RCON trasmette la password in chiaro sulla linea. Secondo: la porta non va su internet aperto, ma limitata al tuo indirizzo oppure messa dietro un accesso SSH. Terzo: RconMaxKarma è la protezione integrata contro i flood di accesso, il valore predefinito è 60. Il contatore limita quante richieste una sorgente può fare in rapida successione prima di essere respinta.

Una porta RCON aperta è inoltre un indizio affidabile della tua presenza in rete. Chi scandisce in modo esteso la 25575 trova game server, e un game server senza filtraggio davanti è un bersaglio conveniente.

4. Limitare la porta di query invece di chiuderla

La porta 27015 UDP risponde alle richieste di stato in formato Steam. Una richiesta A2S è una breve richiesta UDP con cui un client recupera nome del server, mappa, numero di giocatori e tempo di gioco, senza avviare il gioco. È esattamente quello che serve alla lista dei server, alla tua pagina di stato e a ogni bot Discord che mostra il numero di giocatori.

Non chiudere questa porta. Il tuo server sparirebbe dalla lista dei server e i nuovi giocatori non lo troverebbero più. Il modo giusto è un limite massimo per indirizzo sorgente. Su Linux:

iptables -I INPUT -p udp --dport 27015 -m hashlimit --hashlimit-name conan_query --hashlimit-mode srcip --hashlimit-above 10/sec --hashlimit-burst 20 -j DROP
iptables -L INPUT -n -v | head -20

Dieci richieste al secondo per sorgente bastano ai giocatori veri e a qualsiasi monitoraggio, ma scartano una sorgente che manda migliaia di richieste al secondo. Rendi permanente la regola con apt-get install -y iptables-persistent e netfilter-persistent save, altrimenti dopo il prossimo riavvio sparisce. Con UFW va in /etc/ufw/before.rules.

Qui però c'è un limite netto, e riguarda la maggioranza di chi gestisce server Conan Exiles: il firewall di Windows non conosce alcun limite per indirizzo sorgente. Può aprire una porta, chiuderla o limitarla a indirizzi fissi, ma non può dire "al massimo dieci pacchetti al secondo per mittente". Su un server Windows per questo compito non esistono strumenti di bordo, e il limite deve essere applicato nella rete davanti al server.

Il secondo punto riguarda l'abuso nella direzione opposta. Reflection significa: chi attacca manda richieste con indirizzo mittente falsificato a migliaia di game server, e le risposte arrivano tutte a un terzo. Poiché una risposta A2S è più grande della richiesta che l'ha provocata, il traffico si moltiplica per strada. Il tuo server non è allora la vittima, ma l'arma, e il traffico in uscita lo paghi tu. Valve ha introdotto per questo una procedura a domanda e risposta: il server può rispondere a una richiesta A2S prima con una controdomanda, a cui un mittente con indirizzo falsificato non è in grado di rispondere. È efficace solo dove è anche attivata, motivo per cui un limite di frequenza sulla 27015 ci vuole in ogni caso.

5. Password del server, password di amministrazione e slot

La ServerSettings.ini contiene tre impostazioni che decidono direttamente della superficie di attacco:

[ServerSettings]
AdminPassword=
ServerPassword=
MaxPlayers=40
IsBattlEyeEnabled=True

AdminPassword è il valore più critico di tutto il file. Non è un accesso alla console, ma la password con cui un giocatore regolarmente collegato si assegna i diritti di amministratore dentro al gioco. Una password di amministrazione corta o indovinabile non significa lag, significa la perdita del server. Impostala lunga e casuale, e cambiala non appena un membro del team se ne va.

ServerPassword trasforma un server pubblico in uno privato. Funziona contro i troll, contro gli account usa e getta e contro chiunque usi la normale via di ingresso. Contro un attacco alla linea non funziona: chi inonda il tuo server non vuole affatto entrare. I suoi pacchetti vengono rifiutati, ma sono comunque arrivati, ed è esattamente questo il punto.

MaxPlayers limita il numero di slot e si può impostare anche con il parametro di avvio -MaxPlayers=. Un limite realistico è anche una misura di protezione: ogni client collegato produce pacchetti in modo continuo, e un server con più slot di quanti la macchina ne regga crolla già in funzionamento normale.

6. Che cosa fa BattlEye, e che cosa non fa

Conan Exiles porta con sé un controllo anti-cheat attraverso IsBattlEyeEnabled nella ServerSettings.ini. Dovrebbe essere acceso, ma non è una protezione DDoS, e per un motivo strutturale: l'anti-cheat verifica i client che sono già collegati. Gira nello stesso processo del gioco e vede un pacchetto solo quando il server lo ha comunque già elaborato. Se quel processo è saturo, la logica di controllo cade insieme a lui.

Lo stesso vale per qualsiasi strumento lato server che installi in aggiunta. Tutto ciò che gira sul server può solo scartare qualcosa che è già arrivato. L'anti-cheat protegge le regole del gioco, non la disponibilità.

7. Tenere in ordine le mod

Una parte notevole dei disservizi segnalati sui server Conan Exiles modificati non è un attacco. La lista delle mod sta come modlist.txt nella stessa directory di configurazione, e ogni mod gira nello stesso processo del gioco. Una singola mod con un ciclo, un tick troppo stretto o una query al database senza limiti ferma il server esattamente come un attacco, solo senza frequenze di pacchetti evidenti.

La distinzione è semplice e dovrebbe stare sempre all'inizio. Se la frequenza dei pacchetti della scheda di rete sale molto mentre la macchina lavora appena, è un attacco. Se la frequenza dei pacchetti resta normale e tutto va comunque a scatti, è il software. Nel dubbio togli metà della lista delle mod e riavvia, così restringi la causa in due giri.

Un secondo punto, molto pratico: dopo un aggiornamento del gioco spesso le mod e la versione del server non combaciano più. I giocatori vengono espulsi al momento di entrare, nel Discord compare "server down" e tutti cercano un attacco che non esiste. Dopo ogni aggiornamento controlla per prima cosa la lista delle mod.

8. L'indirizzo e l'orario del raid

Il tuo indirizzo IP non si può tenere segreto. Sta nella voce della lista server, perché altrimenti nessuno potrebbe entrare, e lo conosce ogni giocatore che si è collegato anche una sola volta. Cambiare indirizzo fa guadagnare tempo, ma non è una soluzione: chi attacca legge il nuovo indirizzo dalla stessa fonte del vecchio, di solito nel giro di minuti oppure di ore.

Due abitudini aiutano comunque. Non pubblicare tu stesso l'indirizzo IP grezzo da nessuna parte, quindi né nel Discord né sulla pagina del progetto, e fai collegare i tuoi giocatori tramite un hostname, così un cambio di indirizzo non rompe ogni riferimento. Il classico intoppo è un record A dimenticato che punta al vecchio indirizzo e rende inutile qualsiasi cambio.

Per l'orario del raid vale il contrario del nascondersi: ti serve pubblico, altrimenti il tuo server non funziona. Usalo invece per la diagnosi. Se il tuo server cade per tre sere di fila alle 18:05 e la tua finestra di raid comincia alle 18:00, non è più un sospetto, ma uno schema che puoi allegare a un ticket.

9. Misurare invece di indovinare

Il passo più importante è quello che quasi nessuno compie in anticipo: creare una base di confronto mentre tutto funziona normalmente. Senza un valore di riferimento, dopo un incidente non puoi dire se 40.000 pacchetti al secondo fossero tanti oppure semplicemente un venerdì sera pieno. Su Windows bastano gli strumenti di bordo:

Get-NetAdapterStatistics
typeperf "\Network Interface(*)\Packets Received/sec" -sc 20
typeperf "\Network Interface(*)\Bytes Received/sec" -sc 20

Su Linux l'equivalente è:

sar -n DEV 1 10
ip -s link show eth0
tcpdump -ni eth0 udp port 7777 or udp port 27015 -c 200 -q

Per tcpdump vale una regola: limita sempre con -c, perché una cattura a pieno carico appesantisce ancora di più un server già sovraccarico. Il log del server di Conan Exiles sta nella directory ConanSandbox\Saved\Logs\ e con il parametro di avvio -log viene scritto anche in una finestra a parte. Il salvataggio della partita sta come singolo file in ConanSandbox\Saved\game.db: mettilo al sicuro prima di cambiare qualcosa sotto pressione. Come interpretare i valori misurati lo trovi in Riconoscere un attacco DDoS.

Dove queste misure si fermano: banda e frequenza dei pacchetti

Adesso la parte che nessun file INI può risolvere. Tutte le misure viste finora girano sul tuo server, quindi all'estremità della linea. Una regola firewall decide di un pacchetto che ha già percorso il cavo. Puoi scartarlo, ma non puoi fare in modo che non sia mai stato spedito.

Fai due conti. Un game server tipico ha una connettività da 1 Gbit/s, cioè 125 megabyte al secondo, e la linea è satura non appena qualcuno spedisce di più. Gli attacchi contro i server di sopravvivenza si collocano di solito fra 5 e 50 Gbit/s, quindi da cinque a cinquanta volte la tua linea. A quel punto non conta più quanto sia buona la tua regola dietro, perché i pacchetti dei tuoi giocatori si fermano già prima.

La seconda grandezza è la frequenza dei pacchetti, e colpisce quasi sempre prima della banda. Con pacchetti piccoli da 64 byte, in una linea da 1 Gbit/s entrano circa 1,49 milioni di pacchetti al secondo. Un server normale, a seconda di CPU e scheda di rete, ne elabora qualche centinaio di migliaia prima di cominciare a scartare. Un attacco che non riempie nemmeno un terzo della tua linea può quindi mettere comunque fuori gioco il tuo server Conan Exiles, perché il tempo di calcolo se ne va nello scartare. Chi gestisce un server lo vive così: "l'utilizzo non era nemmeno alto, eppure era sparito tutto".

In Conan Exiles c'è un aggravante: tutto il mondo di gioco gira in un unico processo. Non esiste una seconda istanza che continua mentre la prima è occupata. Non appena quel processo smette di ricevere tempo di calcolo, combattimento, costruzione e salvataggio si fermano nello stesso momento.

Per dare un ordine di grandezza reale: sui server di KernelHost sono stati filtrati, fra gli altri, un attacco da oltre 473,4 Gbit/s con oltre 41,5 milioni di pacchetti al secondo contro un server vocale e un UDP flood da oltre 112,2 Gbit/s contro un game server. Per casi del genere non esiste alcuna impostazione locale. Gli attacchi volumetrici devono finire nella rete, prima del server.

Che cosa mette davanti KernelHost

La protezione permanente inclusa su ogni server

La protezione DDoS di KernelHost è costruita su due livelli ed è permanentemente attiva, senza che tu debba accendere, ordinare o configurare nulla:

  • Livello 1: 17 Tbps di capacità di mitigazione nella rete di scrubbing globale. Gli attacchi volumetrici vengono ripuliti vicino alla loro origine, prima che raggiungano il datacenter.
  • Livello 2: filtraggio Arbor in tempo reale da 3,2 Tbps a Francoforte sul Meno. Subito davanti al server vengono riconosciuti e scartati gli schemi specifici di protocollo, pacchetto per pacchetto.

Due caratteristiche sono decisive. La protezione è sempre attiva e non deve prima reagire a un attacco, quindi non ci sono minuti iniziali in cui il server sparisce. È proprio questo che conta con una finestra di raid che dura comunque solo poche ore. E non viene usato il null-routing: il tuo indirizzo IP resta in rete e vengono scartati solo i pacchetti dannosi. Chi toglie l'indirizzo IP dalla rete ottiene per te lo stesso risultato di chi attacca. Quali giochi e protocolli siano coperti lo elenca Protezione DDoS per game server in tempo reale.

Advanced DDoS Protection per server sotto attacco continuo

Certi server non vengono colpiti ogni tanto, ma in modo mirato e per settimane, di norma sempre alla stessa ora. Per questi casi c'è la Advanced DDoS Protection a partire da 50,00 € al mese, PrePaid, senza durata minima e senza costi di attivazione. La differenza non sta in una capacità maggiore, ma nel controllo:

  • IP di protezione dedicato dal core di Francoforte, sul quale il tuo server viene spostato all'interno della nostra rete. Dalla tua parte non serve alcuna modifica.
  • Regole di protezione gestibili da te per porta e protocollo nell'area clienti: imposti separatamente che cosa è permesso sulla 7777 UDP, sulla 7778 UDP e sulla 27015 UDP. È esattamente questa separazione che manca sul server stesso, soprattutto su Windows.
  • Le modifiche hanno effetto in tempo reale, quindi puoi correggere il tiro durante un attacco in corso invece di aspettare la mattina dopo.
  • Profilo di protezione adatto al gioco, così come per applicazioni modificate e proprie su porte TCP o UDP a piacere.

I due livelli a confronto

Caratteristica Protezione DDoS permanente inclusa Advanced DDoS Protection
Prezzo inclusa in ogni pacchetto server, senza sovrapprezzo da 50,00 € al mese, PrePaid
Capacità di filtraggio 17 Tbps di scrubbing globale più filtraggio Arbor in tempo reale da 3,2 Tbps a Francoforte sul Meno lo stesso filtraggio a due livelli
Indirizzo IP l'indirizzo IP del tuo server IP di protezione dedicato aggiuntivo
Set di regole profili automatici, nessuna configurazione necessaria regole tue per porta e protocollo nell'area clienti
Porta di query 27015 viene filtrata automaticamente insieme al resto limite di frequenza proprio, separato dalla porta di gioco
Modifiche seguono in automatico hanno effetto in tempo reale, anche durante un attacco
Null-routing no no
Durata legata al pacchetto server PrePaid, senza durata minima, senza preavviso di disdetta, senza costi di attivazione

Per la maggior parte dei server Conan Exiles basta la protezione permanente inclusa, insieme a una configurazione pulita. La Advanced DDoS Protection è la risposta al caso in cui qualcuno se la prenda sul personale. Chi al momento fa girare il proprio server da un'altra parte e lì viene tolto dalla rete con regolarità risolve nel modo più affidabile con un trasloco: il filtraggio deve stare nella rete in cui si trova il server.

Errori frequenti e soluzioni

"Le mie modifiche nella ServerSettings.ini dopo il riavvio sono di nuovo sparite": il server era ancora acceso durante la modifica. Conan Exiles tiene la configurazione in memoria e la riscrive nel file quando termina, e così la tua modifica viene sovrascritta. Ferma il server, aspetta, modifica, avvia. Modifica inoltre i file sotto Saved\Config\WindowsServer\ e non i modelli lì accanto, altrimenti il prossimo aggiornamento del gioco sovrascrive tutto.

"Ho cambiato le porte e adesso il server non compare più nella lista": la porta di query non è stata spostata insieme. Porta di gioco e porta di query sono due valori separati, e anche il pinger sulla porta di gioco più uno deve essere libero e aperto. Confronta [URL] Port e PeerPort nella Engine.ini con ServerQueryPort e con le tue regole firewall.

"Ho cambiato indirizzo IP e due ore dopo ero di nuovo offline": chi attacca ha preso il nuovo indirizzo dalla stessa fonte del vecchio, di solito la voce nella lista server, un bot Discord con indicatore di stato oppure un vecchio record DNS. Cambiare indirizzo fa guadagnare tempo, non risolve.

"Nel log di RCON ci sono centinaia di accessi falliti": è un flood di accesso sulla 25575 TCP e colpisce la logica di gioco, non la linea. RconMaxKarma lo rallenta, ma lo fermi davvero solo limitando la porta al tuo indirizzo oppure spegnendo RCON con RconEnabled=0.

"Ogni pochi minuti ci sono picchi di lag, ma il server non è mai del tutto offline": è il quadro tipico di un flood pulsante. Raffiche di pochi secondi bastano a far scartare pacchetti, ma restano sotto qualsiasi soglia che farebbe scattare un allarme. Misura quindi al secondo e non in medie su cinque minuti, altrimenti la tua analisi mostra solo una media tranquilla mentre i tuoi giocatori ogni pochi minuti volano fuori dal combattimento.

"Tutti i giocatori vanno a scatti, ma i contatori di rete sono normali": non è un attacco DDoS. Se Get-NetAdapterStatistics oppure sar -n DEV 1 10 restano nella norma, la causa è nel software. Prima la lista delle mod, poi la versione del server contro le versioni delle mod.

"Il mio provider precedente ha bloccato il mio indirizzo IP": quello è null-routing. Il provider protegge così la propria rete, mentre per te il risultato è identico a un attacco riuscito, di solito ancora per ore dopo. Nel dubbio chiedi se filtrano oppure se fanno null-routing. La risposta decide della tua disponibilità più di qualsiasi dato sull'hardware.

"Nella cattura non vedo nulla di anomalo": se il traffico viene già filtrato nella rete a monte, sul server come previsto non arriva nulla. È la situazione normale quando il filtraggio funziona. Vale però anche il contrario: se la linea è satura, può darsi che non ti raggiunga nemmeno la gestione remota con cui volevi misurare. In quel caso usa la console VNC nell'area clienti, che funziona indipendentemente dalla rete del sistema ospite.

In breve

  • Verso l'esterno un server Conan Exiles ha bisogno esattamente di tre porte UDP: 7777 per il traffico di gioco, 7778 per il pinger e 27015 per la richiesta di stato. La 7777 TCP solo per il trasferimento delle mod ai client Epic, la 25575 TCP solo con RCON attivo.
  • Il pinger sta fisso sulla porta di gioco più uno. Più istanze sulla stessa macchina vanno quindi assegnate a passi di due.
  • RCON è spento di fabbrica con RconEnabled=0 e dovrebbe restare spento finché non ti serve. La password viaggia in chiaro sulla linea.
  • La porta 27015 si limita, non si chiude: chiusa fa sparire il server dalla lista dei server, senza limiti lo rende bersaglio e riflettore allo stesso tempo.
  • Il firewall di Windows sa aprire porte, chiuderle e limitarle a indirizzi, ma non sa limitare la frequenza per indirizzo sorgente. Quel compito va nella rete davanti al server.
  • Con 1 Gbit/s la linea è piena a 125 megabyte al secondo, e con pacchetti da 64 byte questo corrisponde a circa 1,49 milioni di pacchetti al secondo. Oltre quella soglia nessuna regola locale aiuta più.
  • Da KernelHost filtrano in permanenza 17 Tbps di capacità di mitigazione nella rete di scrubbing globale e un filtraggio Arbor in tempo reale da 3,2 Tbps a Francoforte sul Meno, senza sovrapprezzo e senza null-routing.

Se il tuo server gira già su KernelHost, il filtraggio è attivo senza che tu debba fare nulla. Se noti comunque delle anomalie, apri un ticket di supporto con data, ora e i tuoi valori misurati, così le regole di filtraggio per il tuo indirizzo IP vengono affinate. Durante un attacco in corso ci raggiungi anche tramite la chat WhatsApp di emergenza al numero +43 650 8209883.

Domande frequenti

Il mio server Conan Exiles è offline nel bel mezzo della finestra di raid. Che cosa controllo per primo?
La frequenza dei pacchetti della scheda di rete, non il carico della CPU e non il log del gioco. Su Windows Get-NetAdapterStatistics mostra i pacchetti ricevuti, su Linux sar -n DEV 1 10 mostra i pacchetti al secondo. Se i pacchetti in ingresso salgono ben oltre il tuo valore normale mentre la macchina lavora appena, è un attacco. Se i contatori restano tranquilli e tutto va comunque a scatti, la causa sta quasi sempre in una mod, perché ogni mod gira nello stesso processo del gioco.
Quali porte servono davvero a un server Conan Exiles?
Esattamente tre porte UDP: la 7777 per il traffico di gioco, la 7778 per il pinger e la 27015 per la richiesta di stato della lista dei server. A queste si aggiungono due porte TCP opzionali. La 7777 TCP viene aperta solo se serve, per il trasferimento delle mod ai client dell'Epic Games Store, mentre i client Steam prendono le mod dall'interfaccia Workshop. La 25575 TCP è RCON ed è spenta di fabbrica. La porta di gioco sta nella Engine.ini nella sezione [URL], la porta di query sotto [OnlineSubsystemSteam], la porta RCON nella Game.ini sotto [RconPlugin].
A che cosa serve la porta 7778 in Conan Exiles?
La porta 7778 UDP è il pinger e sta fissa sulla porta di gioco più uno. Non si può scegliere liberamente: chi cambia il valore Port nella Engine.ini sposta con esso anche PeerPort. La conseguenza pratica riguarda chiunque faccia girare più istanze su una macchina. Le porte vanno assegnate a passi di due, quindi 7777 e 7778 per la prima istanza e 7779 e 7780 per la seconda. Chi mette la seconda istanza sulla 7778 toglie il pinger alla prima.
Posso semplicemente chiudere la porta di query 27015?
No. Il tuo server sparisce dalla lista dei server, perché è proprio attraverso quella porta che vengono richiesti nome del server, mappa e numero di giocatori. La cosa giusta è un limite massimo per indirizzo sorgente invece di un blocco, su Linux per esempio dieci richieste al secondo con un piccolo margine, tramite iptables e hashlimit. Basta ai giocatori veri e a qualsiasi monitoraggio, ma scarta una sorgente che manda migliaia di richieste al secondo. Il firewall di Windows non sa limitare la frequenza per indirizzo sorgente, e lì il compito passa alla rete davanti al server.
Come metto in sicurezza RCON sulla porta 25575?
Nel modo più sicuro lasciandolo spento: RconEnabled sta di fabbrica su 0 nella Game.ini. Se ti serve RCON, imposta una RconPassword lunga e casuale, perché il protocollo trasmette la password in chiaro sulla linea. Limita la porta 25575 TCP al tuo indirizzo invece di aprirla a tutti. RconMaxKarma con il valore predefinito 60 rallenta i flood di accesso, ma non sostituisce quel limite. Una porta RCON aperta rivela inoltre a chiunque scandisca la rete in cerca di game server che qui ce n'è uno.
Perché i server PvP di Conan Exiles vengono attaccati così spesso?
Perché lì l'attacco ha un guadagno concreto e il momento migliore è pubblicamente noto. Su un server PvP una base si può danneggiare solo all'interno della finestra di raid, che viene fissata con RestrictPVPTime e RestrictPVPBuildingDamageTime nella ServerSettings.ini e poi pubblicizzata nel nome del server, nel regolamento e nel Discord. Chi toglie dal gioco i difensori proprio in quella finestra raida senza avere nessuno di fronte. Se inoltre LogoutCharactersRemainInTheWorld sta su True, le figure espulse restano ferme nel mondo con tutto il loro equipaggiamento.
Un firewall sul server aiuta contro un attacco DDoS?
Contro gli attacchi piccoli e i bot fatti male sì, contro gli attacchi volumetrici no. Una regola firewall decide di pacchetti che hanno già percorso la tua linea. Se la linea è satura, i pacchetti dei tuoi giocatori si fermano già prima, a prescindere da quanto sia buono il tuo set di regole. Con Conan Exiles si aggiunge il fatto che la maggior parte dei server gira su Windows e il firewall di Windows non conosce alcun limite per indirizzo sorgente. Gli attacchi volumetrici devono finire nella rete, prima del server.
Da quale dimensione il mio server Conan Exiles non ce la fa più da solo?
Un game server tipico ha una connettività da 1 Gbit/s, cioè 125 megabyte al secondo. Gli attacchi contro i server di sopravvivenza si collocano di solito fra 5 e 50 Gbit/s. Altrettanto importante è la frequenza dei pacchetti: in 1 Gbit/s, con pacchetti da 64 byte, entrano circa 1,49 milioni di pacchetti al secondo, mentre un server normale ne elabora solo qualche centinaio di migliaia. Un attacco può quindi bloccarti anche senza saturare la banda. Poiché tutto il mondo di gioco gira in un unico processo, combattimento, costruzione e salvataggio si fermano nello stesso momento.
Il mio server Conan Exiles su KernelHost va offline durante un attacco?
No. Non viene usato il null-routing. Il tuo indirizzo IP resta in rete e vengono scartati solo i pacchetti dannosi. La protezione è a due livelli: 17 Tbps di capacità di mitigazione nella rete di scrubbing globale e un filtraggio Arbor in tempo reale da 3,2 Tbps a Francoforte sul Meno. È sempre attiva e non deve prima reagire a un attacco, quindi non ci sono minuti iniziali in cui il server sparisce. È proprio questo che conta con una finestra di raid che dura comunque solo poche ore.
La protezione DDoS di KernelHost ha un costo aggiuntivo?
No. La protezione permanente a due livelli è inclusa senza sovrapprezzo in ogni pacchetto server ed è attiva dal momento della consegna. Non devi ordinarla, attivarla o configurarla. Vale per tutte le porte e per tutti i protocolli del tuo server, quindi per la porta di gioco 7777 UDP come per il pinger sulla 7778 UDP e per la porta di query 27015 UDP.
Quando mi serve anche la Advanced DDoS Protection?
Quando il tuo server non viene colpito ogni tanto, ma in modo mirato e per settimane, di solito sempre alla stessa ora, e vuoi gestire tu stesso il filtraggio. Ricevi un IP di protezione dedicato e amministri da solo le regole di protezione per porta e protocollo nell'area clienti, quindi separate per 7777 UDP, 7778 UDP e 27015 UDP. Le modifiche hanno effetto in tempo reale, quindi puoi correggere il tiro anche durante un attacco in corso. Il prezzo parte da 50,00 € al mese, PrePaid, senza durata minima e senza costi di attivazione.

Conan Exiles Protezione DDoS Conan Exiles Protezione game server Porta 7777 Porta 27015 RCON Advanced DDoS Protection Filtraggio in tempo reale