Pubblicata una versione alternativa e minimalista di ps3netsrv, con il nome di ps3netsrv-go, che permette di installare giochi su console PlayStation 3 jailbroken utilizzando WebMAN/IrisMAN tramite rete, senza dover copiare fisicamente i file sulla console.
Il progetto nasce dalla difficoltà di leggere e compilare il codice originale di ps3netsrv su diverse piattaforme, mentre è stato sviluppato anche per divertimento ed educazione, al fine di comprendere e implementare protocolli di rete personalizzati e generare/servire immagini ISO al volo.
⭐️ps3netsrv-go v0.0.6 updated by @xakep666
"It's a minimal alternative implementation of original ps3netsrv which needed to install games using webMAN/IRISMAN over network (without copying files to console)."It's available for Windows, Linux & MacOShttps://t.co/DkPbJc4Och pic.twitter.com/ibypJd1j5N
— Aldo Vargas (@aldostools) July 16, 2024
Ps3netsrv-go è stato scritto in Go, poiché la compilazione incrociata è molto più semplice rispetto al C/C++ e i binari risultanti funzionano senza librerie esterne sul sistema di destinazione.
Attualmente, i file multipart non sono supportati, ma sono stati aggiunti timeout di scambio dati TCP per ridurre le connessioni “appese”.
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
--config
o variabile d’ambientePS3NETSRV_CONFIG_FILE
- File
config.ini
nella 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
e4e779c
Non provare i wrapper dei file in Open per le directory. Corregge #16.88147e6
Unita la richiesta di pull #17 da xakep666/fix-opendir.
Download: ps3netsrv-go v0.0.6 Linux arm64 (i386) (x86_64)
Download: ps3netsrv-go v0.0.6 MacOS arm64 (x86_64)
Download: ps3netsrv-go v0.0.6 Windows arm64 (i386) (x86_64)
Download: Source code ps3netsrv-go v0.0.6
Fonte: twitter.com