
Gestione dell'infrastruttura per competizioni
Framework di automazione dell'infrastruttura per competizioni di sicurezza

Laforge consente lo sviluppo rapido di infrastrutture per competizioni di sicurezza informatica. Utilizzando un linguaggio di configurazione semplice e intuitivo, Laforge gestisce un grafo delle dipendenze e la gestione dello stato, permettendo una collaborazione remota altamente produttiva. Il motore Laforge utilizza un caricatore personalizzato per eseguire sovrapposizioni di configurazione multi-dimensionali e non distruttive. Una buona analogia è Docker: quando si costruisce un container Docker, lo si costruisce strato per strato. È questo potere che ci ha ispirato a creare Laforge. È sicuramente un progetto di nicchia, ma abbiamo trovato un uso incredibile per esso.
NOTA – Attualmente siamo in una versione di anteprima della v0.0.1. Le API sono soggette a modifiche (anche se cercherò di minimizzarle) e probabilmente incontrerai bug. Segnalali e, ancora meglio, inviami una pull request :)
Laforge è un framework che ti permette di progettare e implementare competizioni di sicurezza in modo scalabile, collaborativo e divertente! Scrivi configurazioni nel Laforge Config Language e utilizzi lo strumento CLI per ispezionare, validare, costruire e connetterti all'infrastruttura remota. Storicamente ha supportato principalmente Terraform come suo "backend" (genera configurazioni Terraform sofisticate), ma questo cambierà rapidamente nelle prossime settimane e mesi. Attualmente Laforge alimenta tutta la gestione dell'infrastruttura per la National Collegiate Penetration Testing Competition e ha supportato distribuzioni di gioco con oltre 1400 nodi unici.
Tre motivi:
Non serve entrare in una guerra di fiamme su questo o quello strumento. Francamente ci piacciono. La nostra critica principale è che, data la loro frammentazione, è difficile essere davvero bravi in uno qualsiasi di essi. Apprezziamo Terraform ed è stato il nostro backend principale fin dall'inizio.
Abbiamo usato diverse iterazioni di LaForge per generare ambienti di competizione con centinaia di host totali per quasi 30 squadre. In breve, può scalare tanto quanto la tua immaginazione (e budget/risorse) permette. Inoltre, abbiamo utilizzato questo strumento con un team di oltre 15 sviluppatori volontari, ognuno dei quali lavorava sui propri componenti, e abbiamo utilizzato tale feedback nelle versioni più recenti.
A seconda della complessità del tuo ambiente, la generazione dell'output di LaForge può richiedere secondi o minuti. Alla fine, passerai più tempo ad avviare sistemi nell'ambiente scelto con Terraform o Vagrant che a generare le configurazioni pertinenti per uno di essi.
Se per produzione intendi lo sviluppo di ambienti di competizione live, LaForge è stato utilizzato per oltre tre anni in capacità "produttiva". Se intendi sistemi live nella tua azienda o organizzazione, probabilmente funzionerà bene, ma usalo a tuo rischio.
$ go get github.com/gen0cide/laforge/cmd/laforge
laforge configure
laforge init
laforge example <model>
buildconfiguredepsmentori, contributori e grandi amici di Laforge
downloaddumpenvexampleexplorerinitqueryserveshellstatusuploadBuilder progettataBuildEngine completatoBuildIssuevalidationsnull (specifica per ora)