Lo sviluppatore Vladimir Stolyarov continua a perfezionare ps3netsrv-go, portando avanti lo sviluppo di uno dei server più moderni e performanti dedicati allo streaming dei giochi PlayStation 3 tramite rete.

Questa nuova versione introduce numerose novità che migliorano la gestione del software sui principali sistemi operativi, incrementando al tempo stesso stabilità, compatibilità e flessibilità d’utilizzo.
Tra le principali innovazioni spicca il supporto completo ai servizi di Windows. Il programma ora può essere installato ed eseguito come un vero e proprio servizio di sistema, permettendo l’avvio automatico insieme al sistema operativo senza richiedere l’intervento dell’utente.
Per semplificare ulteriormente la gestione è stato inoltre aggiunto il nuovo comando svc, che consente di controllare direttamente il servizio Windows, rendendo più immediata l’installazione, l’avvio, l’arresto e la gestione del server.
Sul fronte dell’efficienza è stata implementata una funzione di spegnimento automatico dopo un periodo di inattività, utile soprattutto per ridurre il consumo di risorse quando il server non viene utilizzato.
Questa funzione consente di arrestare automaticamente ps3netsrv-go allo scadere di un timeout configurabile, migliorando l’automazione e l’integrazione in ambienti domestici e server dedicati.
Anche il supporto ai sistemi Unix-like riceve importanti miglioramenti. Su macOS è stato aggiunto un file di configurazione launchd con relativo esempio di configurazione che sfrutta la socket activation, una tecnologia che consente di avviare automaticamente il servizio soltanto quando viene ricevuta una connessione.
La stessa funzionalità è stata implementata anche per systemd su Linux, con unità di sistema aggiornate per gestire correttamente questa modalità operativa.
La gestione delle connessioni è stata ulteriormente migliorata grazie all’introduzione di nuovi metodi per la creazione dei listener, offrendo una maggiore flessibilità nelle configurazioni di rete e facilitando l’integrazione del software in diversi scenari di utilizzo.
Dal punto di vista della compatibilità, il progetto amplia il supporto per le piattaforme ARM grazie alla compilazione della libreria libchdr utilizzando soft-float e glibc 2.10, una modifica introdotta per risolvere problemi segnalati dagli utenti e garantire il funzionamento anche su sistemi più datati.
Sono stati inoltre corretti diversi problemi legati alla gestione dei file di grandi dimensioni. La modalità strict-root ora funziona correttamente anche con file superiori ai 2 GB sui sistemi a 32 bit, mentre il percorso della cartella principale viene automaticamente espanso e verificato per assicurarsi che punti realmente a una directory valida prima dell’avvio del server.
Un’altra novità riguarda la registrazione degli eventi di sistema. ps3netsrv-go ora supporta il Windows Event Log, oltre ai sistemi di logging systemd-journald e syslog su Linux e al logger di sistema di macOS, offrendo un monitoraggio molto più completo e perfettamente integrato con i rispettivi sistemi operativi.
Infine, è stato modificato il comportamento del trascinamento dei file per simulare quello dell’implementazione originale di ps3netsrv, migliorando la compatibilità con i flussi di lavoro già utilizzati dagli utenti e rendendo la transizione alla versione Go ancora più semplice.
Caratteristiche
- Scritto in Go per facilitare la compilazione incrociata e per garantire che i binari risultanti funzionino senza librerie esterne sul sistema di destinazione.
- Attualmente, i file multipart non sono supportati.
- Supporta timeout di scambio dati TCP per ridurre le connessioni “appese”.
- Ora supporta la ricezione di file dalla console (abilitabile con il flag
--allow-write). - Supporta la decrittazione delle immagini 3k3y/redump al volo, con una ricerca delle chiavi che corrisponde completamente al comportamento del ps3netsrv originale.
Esecuzione del server
Per avviare il server, eseguire il comando: ps3netsrv-go server oppure specificare una directory root personalizzata con il flag --root: ps3netsrv-go server --root=/home/user/games
Configurazione
- Il server supporta la configurazione tramite variabili d’ambiente e flag della riga di comando.
- È possibile utilizzare anche un file di configurazione con chiavi di configurazione che corrispondono ai nomi dei flag della riga di comando senza il prefisso
--. - I file di configurazione vengono cercati nell’ordine:
- Flag
--configo variabile d’ambientePS3NETSRV_CONFIG_FILE - File
config.ininella directory corrente. - Directory specifica del sistema operativo per i file di configurazione utente.
- Flag
Suggerimenti per l’esposizione del server
- Limitare l’accesso per indirizzo IP con il flag
--client-whitelist. - Limitare il numero di client con il flag
--max-clients. - Impostare timeout di connessione inattiva con il flag
--read-timeout. - Per esporre il server su NAT, è possibile utilizzare tunnel TCP di ngrok o un tunnel SSH inverso a un host con IP pubblico.
Sicurezza
- Per assicurare la connessione usando TLS, si possono usare terminatori TLS configurati con autenticazione TLS reciproca, notando che il terminatore desiderato deve supportare la “wrapping” di connessioni TCP semplici a TLS con certificato client.
Changelog
- 6ad6c20 Aggiunto il comando
svcper controllare il servizio Windows di ps3netsrv-go. - 8124404 Aggiunta la possibilità di eseguire ps3netsrv-go come servizio Windows.
- 2bd23ee Aggiunto lo spegnimento automatico dopo la scadenza del timeout di inattività.
- ab5ca15 Aggiunto il file plist di launchd per macOS e un esempio di configurazione con socket activation.
- 1b6ef94 Aggiunti diversi metodi per la creazione dei listener di rete.
- 76757ae Compilata libchdr con soft-float e glibc 2.10 per il target ARM in base alla segnalazione del problema #62.
- ec51091 Espanso il percorso principale (root path) e aggiunto il controllo per verificare che sia una directory valida.
- 5d0e101 Risolto il problema della modalità strict-root con file superiori a 2 GB sulle piattaforme a 32 bit.
- ed818b2 Modificate le unità systemd per supportare la modalità socket activation.
- 5cc6bee Spostata la gestione di O_LARGEFILE all’interno del modulo interno osutil.
- 0f3e375 Simulato l’attuale comportamento del trascinamento e rilascio (drag & drop) di ps3netsrv.
- b04c338 Aggiunto il supporto al Windows Event Log come sistema di registrazione degli eventi.
- 326dfd6 Aggiunto il supporto al logging tramite systemd-journald e syslog.
- 50f33bf Aggiunto il supporto alla socket activation su macOS.
- b8fa033 Aggiunto il supporto al logger di sistema su macOS.
Download
Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale. Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.🔥 Prodotti in promozione e articoli più venduti: PS4
Vedi altri prodotti PS4





