FreeBSD Creare repository custom con Poudriere

Introduzione: Poudriere ha come scopo quello di facilitare e migliorare la gestione dei ports su molteplici macchine, esso infatti permette di creare delle jail (con varie versioni di OS) e compilarsi i port creando dei pacchetti in modo da poter tener traccia e installare le stesse versioni di sowtware su server diversi.   Prepariamo la macchina: – Aggiorniamo l’albero dei ports con portsnap fetch update – Ci spostiamo nell port di Poudriere e lo compiliamo: cd /usr/ports/ports-mgmt/poudrier make install clean (Vanno bele le opzioni di default) – Installiamo portmaster per facilitare la gestione dei ports: cd /usr/ports/ports-mgmt/portmaster make install clean – Infine ci serve un webserver per permettere alle macchine di scaricare i pacchetti, per visualizzare lo stato della compilazione e avere una visuale d’isime dei nostri alberi dei ports. A questo scopo useremo Nginx: cd /usr/ports/www/nginx make install clean (Vanno bele le opzioni di default) Ora bisogna ricaricare i PATH con il comando rehash   Certificati SSL Quando creiamo i pacchetti con Poudriere, vogliamo essere in grado di firmarli con una chiave privata. Questo permetterà alle altre macchine di sapere con certezza che i pacchetti hanno una fonte legittima. Per prima cosa quindi creiamo le cartelle necessarie: mkdir -p /usr/local/etc/ssl/{keys,certs} Per sicurezza ulteriore modifichiamo i permessi con la sola lettura dell’utente: chmod 0600 /usr/local/etc/ssl/keys Ora non ci resta che generare una chiave, la chiameremo poudriere.key e sarà a 4096 bit: openssl genrsa -out /usr/local/etc/ssl/keys/poudriere.key 4096 Creiamo il certificato: openssl rsa -in /usr/local/etc/ssl/keys/poudriere.key -pubout -out /usr/local/etc/ssl/certs/poudriere.cert Bene, ora che abbiamo tutto il necessario a firmare i pacchetti possiamo cominciare a configurare poudriere!   Configuriamo Poudriere Il file di configurazione...