Quando Ampere ha collaborato con Debian, questo ha attirato la nostra attenzione. Eravamo consapevoli che il nostro attuale provider di servizi cloud ARM avrebbe presto interrotto il supporto per i server arm64 (che utilizziamo per i nostri demoni di build) .
In Kali Linux, una delle cose che è importante per noi, è che preferiamo non dover eseguire la cross-compilazione dei nostri binari ARM che spediamo nei nostri pacchetti Kali. I motivi sono vari, alcuni sono:
- Con un vasto elenco di pacchetti, come quello che stiamo mantenendo (oltre 600 al momento della stesura) , ci sarà una certa piccola percentuale che non è pronta per la compilazione incrociata.
- Vogliamo essere in grado di eseguire le suite di test a monte come parte della build e in molti casi il software di test presuppone che tu possa eseguire in modo nativo i binari che hai appena creato.
- Crediamo nel “dogfooding” - creiamo un sistema operativo che funziona su ARM. Vogliamo usare il sistema operativo e gli strumenti in esso contenuti. Lo facciamo sui sistemi ARM per il nostro lavoro quotidiano .
Abbiamo contattato Ampere per vedere se sarebbero stati in grado di aiutarci. Ci siamo presto resi conto che hanno la nostra stessa mentalità, ARM è la via da seguire . Durante lo sviluppo di Kali Linux, trattiamo i dispositivi ARM come "cittadini di prima classe" , proprio come facciamo con le nostre immagini "desktop" (amd64/i386) . Ci sono molti vantaggi in ARM, come usare meno energia (il che significa che non hanno bisogno di raffreddamento) , accendino (utile quando si viaggia per essere sul posto o per inviare i dispositivi di posta come una casella di posta) e dispositivi più economici (il cliente non deve restituire il dispositivo!) . Questi rendono dispositivi con fattore di forma davvero ridotto - che per fare test di penetrazione o esercizi di squadra rossa in loco, amplia le possibilità di dove nascondere vari dispositivi (l'immaginazione è l'unico limite) . Questo è il motivo per cui cerchiamo di offrire la stessa esperienza utente indipendentemente dalla piattaforma su cui stai utilizzando Kali.Ecco perché abbiamo immagini pregenerate e creiamo script per il maggior numero possibile di dispositivi
Ampere ha vari programmi di sensibilizzazione della comunità, consentendo a quante più persone diverse possibile di interagire con il proprio hardware. Le offerte si stanno solo espandendo e ora abbiamo una nuova sede ARM permanente presso l'Open Source Lab della Oregon State University, dove stiamo creando tutti i nostri pacchetti ARM, con l'intenzione di spostare le nostre immagini del sistema operativo ARM da costruire anche qui nel prossimo futuro.
Non è mai un compito divertente dover ricostruire i sistemi, ma abbiamo notato un grande vantaggio nel farlo. C'è stato un enorme aumento delle prestazioni dall'utilizzo dell'hardware di Ampere . Il cambiamento di ambiente è stato subito notato , senza alcuna modifica alla nostra configurazione. Di seguito sono riportati i primi tre pacchetti che abbiamo creato e le differenze di orario.
Pacchetto | Vecchio (HH:MM:SS) | Nuovo (HH:MM:SS) | Differenza (HH:MM:SS) | Percentuale di miglioramento |
---|---|---|---|---|
Kernel Linux | 08:31:38 | 03:09:40 | 05:21:53 | 269,75% |
Framework Metasploit | 00:18:00 | 00:14:30 | 00:03:30 | 124,14% |
programma di installazione debian | 00:24:16 | 00:14:53 | 00:09:23 | 163,05% |
I risultati parlano da soli. Ogni pacchetto è ora creazione drasticamente più veloce . Riteniamo inoltre che modificando alcune configurazioni possiamo ottenere un aumento ancora maggiore delle prestazioni . Questo è possibile solo grazie alla maggiore offerta di RAM con OSUOSL. Ciò consentirà di utilizzare OverlayFS con tmpfs
(file system RAM) che ridurrà senza problemi la necessità di accedere a qualsiasi unità disco.
Siamo molto grati per Ampere che ora sta alimentando i nostri demoni di build per i pacchetti arm64/armhf/armel. Ci sposteremo sulla nostra macchina per la creazione di immagini ARM, oltre a esplorare l'opportunità di fornire loro vari altri servizi generali (ad es. server Web) date le loro prestazioni. Siamo lieti della partnership. Grazie Ampere! Questo tipo di partnership è ciò che riguarda la comunità open source. E siamo lieti di avere un partner come Ampere su cui fare affidamento per una parte così importante del nostro processo di costruzione.