Hai appena avviato una VM Kali Linux e ti ritrovi con un desktop spoglio, strumenti da scaricare uno per uno, nessuna configurazione di rete, nessun alias, nessuna nota. Se inizi un penetration test così, stai perdendo tempo prezioso e rischi di trascurare dettagli critici. Configurare Kali Linux da zero non significa solo installare un sistema operativo: significa costruire una postazione di lavoro per test di sicurezza che sia affidabile, riproducibile e veloce. Noi, di Meteora Web, lo facciamo da anni per i nostri progetti di ethical hacking. Vediamo come si fa, passo dopo passo, con comandi reali e niente teoria inutile.
Scegliere il metodo di installazione giusto
Kali Linux può essere installato in diversi modi. La scelta dipende dal contesto: stai testando una rete interna? Una web app su cloud? Un ambiente embedded? Ogni scenario richiede una configurazione diversa. Ecco le opzioni principali e quando usarle.
Virtual Machine (VM) – il punto di partenza per la maggior parte dei test
La VM è la scelta più flessibile. Isolata dal sistema host, facile da ripristinare (snapshot), portabile. Noi usiamo VirtualBox o VMware Workstation. Scarica l'immagine ISO ufficiale da kali.org – scegli quella preconfigurata per il tuo hypervisor. Se preferisci avere il controllo totale, usa l'ISO generica e installa manualmente.
# Dopo il boot, installa i guest additions per prestazioni migliori
sudo apt update
sudo apt install -y virtualbox-guest-x11
Configura la VM con almeno 4 GB di RAM e 2 core CPU. Per il disco: 40 GB sono il minimo, 80 GB se prevedi di installare molti strumenti o conservare risultati di test.
Bare metal (installazione diretta) – quando serve potenza nativa
Per test che richiedono accesso hardware (WiFi injection, USB device fuzzing) o prestazioni massime, installa Kali direttamente sul disco. La procedura è standard: crea una USB avviabile con Rufus (Windows) o dd (Linux/macOS).
# Su Linux/macOS
sudo dd if=kali-linux-2026.1-installer-amd64.iso of=/dev/sdX bs=4M status=progress
sync
Attenzione: l'installazione bare metal sovrascrive tutto. Usala solo su macchine dedicate, mai su un PC di lavoro quotidiano.
Live USB con persistenza – per test su più macchine
Se devi spostarti tra computer diversi (es. test presso clienti), una chiavetta USB con partizione persistente ti permette di mantenere configurazioni e tool. Dopo aver creato la USB live, aggiungi una partizione ext4 con etichetta persistence e abilita la persistenza.
# Creare la partizione persistente (es. /dev/sdb2)
sudo mkfs.ext4 -L persistence /dev/sdb2
sudo mkdir /mnt/usb
sudo mount /dev/sdb2 /mnt/usb
echo "/ union" | sudo tee /mnt/usb/persistence.conf
sudo umount /mnt/usb
Prima configurazione: hardening essenziale
Appena installato, Kali non è sicuro di default. Il primo accesso è con utente kali e password kali. Cambiala subito. Noi vediamo troppi tester che dimenticano questo passo e lasciano porte aperte.
passwd
# Digita nuova password complessa
Poi aggiorna il sistema: non solo pacchetti, ma anche i repository e il kernel.
sudo apt update && sudo apt full-upgrade -y
sudo apt autoremove -y
sudo reboot
Configura il firewall con ufw o, se preferisci, con iptables semplice.
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
Disabilita servizi non necessari come Bluetooth, print server o cups. Usa systemctl per controllare i servizi attivi.
Installazione mirata degli strumenti di penetrazione
Kali include oltre 600 tool preinstallati, ma non tutti servono a ogni test. Installare l'intera meta-pacchettizzazione kali-linux-large può appesantire il sistema. Meglio scegliere per categoria.
Strumenti per il web penetration testing
Se lavori su web app (come noi spesso facciamo per i clienti e-commerce), ti servono:
sudo apt install -y burpsuite zaproxy nikto dirb gobuster wfuzz sqlmap
Burp Suite è il coltellino svizzero: installa la Professional se hai licenza, altrimenti la Community edition è sufficiente per molti test. ZAP è l'alternativa open source di OWASP.
Network scanning ed enumerazione
sudo apt install -y nmap masscan netexec crackmapexec
Nmap è essenziale. masscan per scansioni massive su grandi subnet. crackmapexec per enumerazione di servizi Windows/Active Directory.
Post-exploitation e framework
sudo apt install -y metasploit-framework powershell-empire starkiller
Metasploit è il framework di riferimento. Empire per post-exploitation su reti Windows. Starkiller è la GUI per Empire.
Password cracking e brute force
sudo apt install -y hashcat john hydra medusa
Hashcat con supporto GPU richiede driver NVIDIA o AMD a parte. Noi usiamo spesso John per crack offline su file di hash.
Personalizzare l'ambiente di lavoro
Un ambiente ben organizzato velocizza il lavoro. Ogni secondo speso a cercare un comando è tempo che non dedichi al test. Configuriamo:
Alias e funzioni bash
Scrivi nel ~/.bashrc:
alias nmapquick='nmap -sV -T4 -Pn'
alias dirbgob='gobuster dir -u'
alias scanweb='nmap -p80,443 -sV --script=http-enum'
function mktestdir() {
mkdir -p ~/tests/$1/{recon,exploit,evidence,report}
echo "Directory created: ~/tests/$1"
}
Poi esegui source ~/.bashrc.
Prompt personalizzato
Mostra IP e directory corrente:
export PS1='\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
# Ottieni l'IP attivo
export IP=$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
Colorare output di nmap con grep + output formattato
Aggiungi uno script per estrarre porte aperte in modo pulito:
function nmap_ports() {
nmap -p- --min-rate=1000 $1 | grep ^[0-9] | cut -d'/' -f1 | tr '\n' ',' | sed 's/,$//'
}
Automazione e riproducibilità
Un penetration test professionale deve essere riproducibile. Usa script per registrare ogni azione e salvare output. Noi, di Meteora Web, abbiamo costruito una pipeline che parte da un singolo comando e produce un report baseline.
Script di setup rapido
Salva questo come setup-pt-env.sh e rendilo eseguibile:
#!/bin/bash
# Setup ambiente PT veloce per un target
TARGET=$1
mkdir -p ~/tests/$TARGET/{recon,exploit,evidence,report}
cd ~/tests/$TARGET
echo "Eseguo NMAP base..."
nmap -sV -sC -O $TARGET -oA recon/nmap_initial
echo "Eseguo dirb per directory discovery..."
# Usa wordlist rockyou se presente, altrimenti default
dirb http://$TARGET /usr/share/wordlists/dirb/common.txt -o recon/dirb_scan.txt 2>/dev/null
echo "Setup completato per $TARGET. Output in ~/tests/$TARGET/recon/"
Esegui: ./setup-pt-env.sh 192.168.1.100
Versioning con Git
Inizializza un repository git nella directory di test per tracciare modifiche e mantenere uno storico:
cd ~/tests/$TARGET
git init
git add .
git commit -m "Initial recon phase"
Gestione note e reportistica
Un penetration test senza note è come un e-commerce senza tracking: non sai cosa ha funzionato e cosa no. Noi usiamo CherryTree (gerarchico) o Joplin (supporto markdown e sincronizzazione). Per note rapide da terminale, ttyrec registra sessioni.
sudo apt install -y cherrytree ttyrec
Crea un file di note strutturato per ogni test: scope, risultati, comandi eseguiti, vulnerabilità trovate, comandi di exploit. Alla fine del test, esporta in PDF con pandoc.
In sintesi — cosa fare adesso
- Scegli il metodo di installazione in base allo scenario: VM per flessibilità, bare metal per potenza, live USB per portabilità.
- Esegui hardening immediato: cambia password, aggiorna tutto, attiva firewall.
- Installa solo gli strumenti necessari per il tipo di test (web, network, post-exploitation).
- Personalizza il tuo ambiente con alias, funzioni e prompt per velocizzare il lavoro.
- Automatizza la fase di setup con script che creano directory e lanciano scansioni di base.
- Tieni traccia di tutto con note strutturate e versioning.
Non serve un server da 10.000 euro per fare penetration testing professionale. Con Kali Linux configurato bene, hai tutto ciò che serve. Ma attenzione: il tempo speso male nella configurazione è denaro perso. Noi lo vediamo ogni giorno anche nei progetti dei nostri clienti: aziende che investono in test di sicurezza ma trascurano l'ambiente di lavoro. Inizia col piede giusto.
Se vuoi approfondire la sicurezza dei sistemi, dai un'occhiata alla nostra guida su Phishing e Social Engineering e alla gestione dei privilegi su AWS.
Sponsored Protocol