Skip to main content

Comandi

β–Ά πŸ“ Comandi (100)
β”‚  File di configurazione rete su Debian e derivate (Kali). Definisce interfacce, IP statico o DHCP, gateway. Letto all'avvio dal servizio networking.
β”œβ”€ alias - create command alias [system]
β”‚  Crea scorciatoie per comandi lunghi o complessi. Gli alias temporanei durano solo la sessione corrente, quelli permanenti vanno in ~/.bashrc o ~/.zshrc.
β”œβ”€ apropos - search man pages [system]
β”‚  Cerca una parola chiave nelle descrizioni di tutte le pagine di manuale. E' il Google interno di Linux β€” quando sai cosa vuoi fare ma non ricordi il nome del comando.
β”œβ”€ apt - gestione pacchetti debian/ubuntu [system], [automation]
β”‚  Gestore di pacchetti standard per distribuzioni basate su Debian (Ubuntu, Kali). Serve per installare, aggiornare, rimuovere e gestire il software di sistema.
β”œβ”€ arpspoof - arp cache poisoning tool [network-defense], [dfir]
β”‚  Tool per ARP poisoning β€” manda pacchetti ARP falsi in loop per avvelenare la cache ARP di un target. Usato per simulare attacchi MITM in laboratorio e capire come rilevarli.
β”œβ”€ base64 [malware-analysis]
β”‚  Codifica e decodifica file o flussi di dati in formato testuale ASCII a 64 caratteri.
β”œβ”€ bzip2
β”‚  Comprime file singoli usando l'algoritmo Burrows-Wheeler. È piΓΉ efficiente ma piΓΉ lento di gzip. Il nome sta per block-sorting zip.
β”‚  Legge uno o piΓΉ file e ne stampa il contenuto sullo standard output (terminale). È il comando fondamentale per l'ispezione rapida di file di testo, password e configurazioni.
β”œβ”€ chmod - change mode [iam], [system]
β”‚  Modifica i permessi di accesso di file e directory. Supporta notazione ottale (stato finale esatto) e simbolica (modifica singolo bit). Fondamentale per il principio del minimo privilegio.
β”œβ”€ chown [iam], [system]
β”‚  Cambia il proprietario (owner) e/o il gruppo (group) di un file o di una directory. È essenziale per la gestione dei privilegi e degli accessi in un sistema Linux.
β”œβ”€ compressione e archivi - gzip, bzip2, zip, tar [system], [automation], [dfir]
β”‚  Guida unificata a gzip, bzip2, zip e tar su Linux. Copre compressione singoli file, archiviazione multi-file, formato tar.gz, e uso forense per analisi di archivi sospetti.
β”œβ”€ cp - copia file e directory [system]
β”‚  Copia file e directory. PuΓ² essere usato per creare 'cloni' reali o collegamenti simbolici di massa.
β”œβ”€ curl - client url [network-defense], [automation]
β”‚  Client HTTP da riga di comando. Manda richieste HTTP/HTTPS e mostra la risposta. Piu' versatile di wget per testare API, vedere header e debuggare servizi web.
β”œβ”€ cut [observability]
β”‚  Estrae sezioni (colonne) da ogni riga di un file o di un input testuale.
β”‚  Copia dati a basso livello direttamente tra dispositivi o file, blocco per blocco. Usato per clonare dischi, scrivere immagini su SD/USB, creare backup raw e acquisire immagini forensi.
β”œβ”€ df - disk free [observability]
β”‚  Mostra lo spazio disponibile e usato sui filesystem montati. Primo comando da eseguire quando il disco sembra pieno o un servizio si blocca per spazio insufficiente.
β”œβ”€ diff - confronta differenze tra due file [system], [dfir]
β”‚  Confronta due file riga per riga e mostra le differenze. Fondamentale per rilevare modifiche non autorizzate a file di configurazione o log.
β”œβ”€ dig - domain information groper [network-defense]
β”‚  Invia query DNS a un nameserver e mostra la risposta completa. Strumento principale per diagnosticare DNS, verificare record, seguire la catena di risoluzione e rilevare anomalie.
β”œβ”€ docker [cloud-security]
β”‚  Piattaforma di containerizzazione per eseguire applicazioni in ambienti isolati. Ogni container e' un processo con il proprio filesystem, rete e permessi, isolato dagli altri.
β”œβ”€ docker volume [cloud-security]
β”‚  Comandi per gestire volumi Docker: ispezione, creazione, rimozione, migrazione dati tra volumi.
β”œβ”€ du [observability]
β”‚  Stima e visualizza lo spazio occupato da file e directory sul filesystem. Usato con sort per trovare chi occupa spazio β€” primo step dopo df quando il disco Γ¨ pieno.
β”œβ”€ echo [system]
β”‚  Stampa testo o il risultato di espansioni shell sullo standard output. È il tool principale per capire come la shell interpreta ed espande i comandi prima di eseguirli.
β”‚  Esporta variabili shell nell'ambiente, rendendole visibili ai processi figli. Fondamentale per PATH, EDITOR e variabili di configurazione che devono essere ereditate.
β”œβ”€ file [dfir], [system], [file]
β”‚  Determina il tipo di contenuto di un file esaminando la sua struttura interna (Magic Bytes / Magic Numbers), ignorando completamente l'estensione. È uno strumento critico per distinguere file di testo, binari, script o malware mascherati.
β”œβ”€ find [automation], [system], [search], [file]
β”‚  Cerca file e directory nel filesystem in base a criteri specifici (nome, dimensione, permessi, utente). È uno strumento ricorsivo per natura, fondamentale per l'analisi del sistema e la ricerca di artefatti.
β”œβ”€ getent [iam]
β”‚  Interroga i database del Service Name Switch (NSS), permettendo di consultare utenti, gruppi, host e altri database di sistema indipendentemente dalla loro origine (locale o di rete).
β”‚  Sistema di version control distribuito. Traccia modifiche ai file nel tempo, permette collaborazione, branching e rollback. Ogni sviluppatore ha una copia completa del repository, inclusa tutta la storia.
β”‚  Cerca pattern (stringhe o espressioni regolari) all'interno di file o flussi di dati (Standard Input). È il pilastro fondamentale per l'analisi dei log e l'isolamento di eventi sospetti.
β”œβ”€ gzip - compressione file [system]
β”‚  Utility per la compressione di file singoli tramite l'algoritmo DEFLATE. Il nome sta per GNU zip.
β”œβ”€ head - mostra le prime righe di un file [system], [automation]
β”‚  Visualizza la porzione iniziale (le prime righe o byte) di uno o piΓΉ file o dell'input ricevuto. head (1) - emette la prima parte dei file.
β”œβ”€ help [system]
β”‚  Visualizza un riassunto rapido della sintassi, dei flag e delle opzioni di un comando direttamente nello standard output. È lo strumento di consultazione piΓΉ veloce per recuperare i parametri senza uscire dal flusso di lavoro del terminale.
β”œβ”€ history [automation], [system]
β”‚  Mostra la lista dei comandi eseguiti nella sessione corrente e in quelle precedenti. Permette di richiamare, cercare e riutilizzare comandi senza riscriverli.
β”œβ”€ info [system]
β”‚  Sistema di documentazione avanzato che organizza i manuali in menu navigabili e collegati (ipertestuali). info (1) - legge documenti in formato Info.
β”œβ”€ investigazione incidenti linux - cheat sheet [system], [observability]
β”‚  Comandi essenziali per l'identificazione di anomalie, processi malevoli e connessioni sospette su sistemi UNIX/Linux.
β”œβ”€ investigazione incidenti windows - cheat sheet [system], [observability]
β”‚  Comandi e strumenti essenziali per rilevare anomalie, persistenza e account sospetti in ambiente Windows.
β”‚  Gestisce interfacce di rete, indirizzi IP e tabella di routing. Sostituisce ifconfig (deprecato) e route. Comando fondamentale per diagnosticare e configurare la rete su Linux moderno.
β”œβ”€ iptables - linux packet filtering [network-defense], [system]
β”‚  Firewall nativo del kernel Linux. Gestisce il traffico di rete tramite chain (INPUT, OUTPUT, FORWARD) e tabelle (filter, nat, mangle). UFW e nftables sono frontend/successori.
β”‚  Gestione dei job in foreground e background nella shell. jobs elenca i processi sospesi o in background, fg li riporta in primo piano, bg li riprende senza occupare il terminale.
β”œβ”€ journalctl [observability], [system]
β”‚  Interroga e visualizza i log gestiti da `systemd-journald`. È lo strumento standard per l'analisi dei log di sistema, dei servizi e del kernel nelle distribuzioni Linux moderne.
β”œβ”€ kill - send signal to process [system]
β”‚  Invia segnali ai processi tramite PID. SIGTERM chiede una chiusura pulita, SIGKILL forza la terminazione immediata senza possibilita' di essere ignorata.
β”œβ”€ last / lastb - login history [iam], [observability]
β”‚  last mostra la cronologia dei login riusciti da /var/log/wtmp. lastb mostra i login falliti da /var/log/btmp. Entrambi leggono file binari β€” non usare cat, usare questi comandi.
β”œβ”€ less [system]
β”‚  Permette di visualizzare file di testo lunghi una pagina alla volta senza caricarli interamente in RAM. È il visualizzatore predefinito per i manuali di sistema (`man`) e per l'output di molti comandi di analisi.
β”œβ”€ ln [system]
β”‚  Crea collegamenti (links) tra file. Di default crea 'hard links', ma con il flag `-s` crea 'symbolic links'.
β”‚  Cerca file nel filesystem tramite un database pre-costruito di pathname. Molto piu' veloce di find ma non trova file creati di recente β€” il database viene aggiornato di notte da updatedb.
β”œβ”€ ls [system]
β”‚  Elenca i file e le directory contenuti in un percorso. È lo strumento fondamentale per l'esplorazione del sistema e per individuare vettori di attacco, file di configurazione o artefatti nascosti.
β”œβ”€ lsblk - list block devices [system]
β”‚  Mostra l'albero dei dispositivi a blocchi β€” dischi, partizioni, LVM e relativi punti di mount. Comando moderno preferito a fdisk -l per una panoramica rapida della struttura del disco.
β”œβ”€ lsof - list open files [system], [observability]
β”‚  Elenca tutti i file aperti dal sistema. Fondamentale in incident response per trovare processi sospetti, connessioni anomale e file nascosti (deleted).
β”œβ”€ man - manual pages [system]
β”‚  Visualizza la documentazione ufficiale di comandi, file di configurazione, chiamate di sistema e librerie. Organizzato in 8 sezioni β€” sapere quale sezione cercare e' la chiave per trovare subito quello che serve.
β”œβ”€ more [system]
β”‚  Pager β€” mostra un file una schermata alla volta. Se il contenuto entra in una schermata esce subito. Se non entra va in modalitΓ  interattiva. Usato come vettore di escape in Bandit 25.
β”‚  Aggancia un dispositivo di storage o filesystem a un punto dell'albero delle directory. Senza mount il dispositivo non e' accessibile. umount sgancia in modo sicuro prima di rimuovere fisicamente il device.
β”œβ”€ netcat [network-defense]
β”‚  Utility versatile per leggere e scrivere dati attraverso connessioni di rete TCP e UDP. Usato per banner grabbing, port scan, trasferimento file, e come listener per reverse shell.
β”‚  Tool di configurazione di rete su Ubuntu moderno. Legge file YAML in /etc/netplan/ e genera la configurazione per il backend di rete. Usato per assegnare IP statici alle VM di laboratorio.
β”œβ”€ nmap - network mapper [network-defense], [dfir]
β”‚  Mappa la rete mandando pacchetti TCP/UDP/ICMP verso host e porte target e analizza le risposte. Da un singolo SYN capisce se una porta e' aperta, chiusa o filtrata. Strumento standard per asset discovery, port scanning e audit di sicurezza.
β”œβ”€ nslookup - query dns interattive [network-defense]
β”‚  Interroga i server DNS per ottenere i record associati a un dominio. Utile per verificare configurazioni DNS, investigare domini sospetti e controllare record SPF/DMARC durante analisi phishing. nslookup (name server lookup) β€” ricerca nei nameserver.
β”œβ”€ openssl [crypto]
β”‚  Toolkit per crittografia e SSL/TLS. Permette di creare certificati, cifrare file, e aprire connessioni SSL/TLS da terminale.
β”œβ”€ openssl s_client [crypto], [ctf]
β”‚  Implementa un client SSL/TLS generico che stabilisce una connessione sicura con un server remoto. È essenzialmente un '[netcat](/comandi/netcat/) con i superpoteri della cifratura'.
β”œβ”€ ping - test di raggiungibilita icmp [network-defense]
β”‚  Invia pacchetti ICMP Echo Request a un host e misura il tempo di risposta. Usato per verificare la raggiungibilitΓ  di un host e la latenza della connessione.
β”œβ”€ printenv - print environment [system]
β”‚  Mostra le variabili d'ambiente esportate, visibili ai processi figli. A differenza di set, non mostra variabili shell locali ne' funzioni bash.
β”œβ”€ ps - process status [system]
β”‚  Mostra uno snapshot dei processi in esecuzione con PID, utente, CPU e memoria. Fondamentale in incident response per identificare processi sospetti.
β”œβ”€ rm - elimina file e directory [system]
β”‚  Rimuove (scollega) file o directory dal filesystem. Il nome sta per remove.
β”‚  Sincronizza file e directory localmente o via rete SSH. Trasferisce solo le differenze rispetto alla destinazione β€” efficiente per backup incrementali e sincronizzazione remota.
β”œβ”€ scp - secure copy [network-defense], [automation]
β”‚  Copia file tra host locale e remoto (o tra due host remoti) usando il protocollo SSH come trasporto. Stesso sistema di autenticazione e sicurezza di SSH, incluso il supporto a ~/.ssh/config.
β”œβ”€ sha256sum - sha-256 checksum [system], [crypto]
β”‚  Calcola e verifica hash SHA-256 di file. Usato per verificare l'integrita' di download, immagini ISO, copie forensi e rilevare modifiche non autorizzate ai file.
β”œβ”€ shutdown [system]
β”‚  Spegne, riavvia o pianifica la chiusura del sistema in modo sicuro. Si assicura che tutti i processi ricevano il segnale di terminazione (SIGTERM), i filesystem vengano smontati e i dati sincronizzati su disco (sync).
β”œβ”€ sort [automation]
β”‚  Ordina le righe di un file di testo o dell'input ricevuto in ordine alfabetico o numerico.
β”œβ”€ ss - socket statistics [system]
β”‚  Mostra socket aperti e connessioni di rete. Sostituisce netstat (deprecato) β€” piu' veloce perche' legge direttamente dal kernel invece di parsare /proc. Fondamentale in incident response per vedere chi e' connesso e chi ascolta.
β”œβ”€ ssh [crypto], [system]
β”‚  Protocollo e client per l'accesso remoto cifrato. Permette di comandare una macchina remota (guest) dal proprio terminale locale (host) garantendo riservatezza e integritΓ  dei dati tramite crittografia asimmetrica.
β”œβ”€ ssh config file [system]
β”‚  File di configurazione locale (`~/.ssh/config`) che permette di mappare parametri complessi (IP, porte, utenti, chiavi) su alias mnemonici. Semplifica l'accesso remoto e permette l'integrazione con IDE come VS Code.
β”œβ”€ ssh tunnel [system]
β”‚  Tecnica SSH che apre una pipe cifrata tra una porta locale (host) e una porta remota (target). Il processo `ssh -N` ascolta sulla porta locale e inoltra (forwarda) tutto il traffico al server remoto, agendo come un proxy sicuro senza richiedere servizi in ascolto sulla macchina locale.
β”œβ”€ stats
β”‚  Visualizza lo stato dettagliato di un file o del filesystem, mostrando metadati invisibili a `ls`. Il nome sta per status.
β”œβ”€ strings - estrae stringhe leggibili da file binari [dfir], [network-defense], [search]
β”‚  Analizza file binari o flussi di dati per estrarre e stampare sequenze di caratteri ASCII (testo leggibile) lunghe almeno 4 caratteri (default).
β”œβ”€ su - substitute user [iam], [system]
β”‚  Esegue una shell come un altro utente. Con il flag `-` simula un login completo caricando l'ambiente dell'utente target. Lascia tracce diverse in auth.log rispetto a sudo.
β”œβ”€ sudo - superuser do [iam], [system]
β”‚  Esegue un singolo comando con i privilegi di un altro utente (default: root). A differenza di su, usa la password dell'utente corrente e ogni azione e' tracciata in auth.log.
β”‚  Legge e modifica parametri del kernel Linux a runtime senza riavviare. Usato per abilitare IP forwarding, disabilitare ICMP redirect, e configurare parametri di rete e sicurezza.
β”œβ”€ systemctl [system], [observability]
β”‚  Interfaccia a riga di comando per controllare systemd, il sistema di inizializzazione e il manager dei servizi (demoni) standard nelle distribuzioni Linux moderne. Permette di gestire il ciclo di vita delle unitΓ  di sistema (servizi, socket, target).
β”œβ”€ tail [observability]
β”‚  Visualizza l'ultima porzione di uno o piΓΉ file. È lo strumento principe per il monitoraggio dei log in tempo reale. tail (1) - emette l'ultima parte dei file.
β”œβ”€ tar [system]
β”‚  Acronimo di Tape Archiver. Raggruppa piΓΉ file e directory in un unico file archivio senza comprimerli.
β”œβ”€ tcpdump - dump traffic on a network [observability]
β”‚  Cattura e analizza pacchetti di rete direttamente dal terminale. Legge il traffico sull'interfaccia di rete in tempo reale o da file .dfir. Strumento fondamentale per incident response e analisi traffico.
β”œβ”€ tee - duplica stdout su file [observability]
β”‚  Legge da stdin e scrive contemporaneamente su stdout e su file. Usato con sudo per scrivere file di sistema senza aprire editor come root.
β”‚  Protocollo client-server che permette l'accesso remoto a un computer. A differenza di SSH, non Γ¨ cifrato: tutto viaggia in chiaro. Oggi viene usato quasi esclusivamente per testare se una porta specifica Γ¨ aperta.
β”œβ”€ tmux [system]
β”‚  Terminal multiplexer β€” permette di avere piu finestre e pannelli in un solo terminale, e di lasciare sessioni attive in background anche dopo aver chiuso la connessione SSH.
β”œβ”€ touch - change file timestamps [system]
β”‚  Crea file vuoti o aggiorna i timestamp di file esistenti. Il nome viene da 'touch the timestamps'. Usato spesso per creare file segnaposto negli script.
β”œβ”€ tr [automation]
β”‚  Abbreviazione di translate. Sostituisce, comprime o elimina caratteri specifici dallo standard input.
β”‚  Mostra il percorso che i pacchetti compiono dalla macchina locale a un host remoto, hop per hop. Sfrutta il TTL per scoprire ogni router intermedio e misurare la latenza per tratto.
β”œβ”€ traefik [cloud-security]
β”‚  Edge router e reverse proxy moderno che si configura automaticamente leggendo i metadati dei container Docker. Zero configurazione manuale per ogni nuovo servizio.
β”œβ”€ tree [system], [iam], [observability]
β”‚  Visualizza ricorsivamente il contenuto di una directory in un formato grafico ad albero, arricchendo la vista con metadati del filesystem come Inode, proprietari e permessi. tree (1) - elenca il contenuto delle directory in un formato ad albero colorato.
β”œβ”€ tshark - terminal wireshark [observability]
β”‚  Wireshark da terminale. Stessa logica e stessi filtri display di Wireshark GUI, ma tutto da riga di comando. Cattura traffico live o analizza file .dfir. Indispensabile su server senza GUI e per automatizzare analisi con script bash.
β”œβ”€ type [system]
β”‚  Identifica la natura di un comando (se Γ¨ un eseguibile, un comando interno della shell o un alias). type (1) - indica come viene interpretato un nome di comando.
β”œβ”€ ufw - uncomplicated firewall [network-defense], [system]
β”‚  Frontend semplificato per iptables su Ubuntu/Debian. Gestisce regole firewall in entrata e uscita con comandi leggibili. Default policy: nega tutto il traffico in entrata quando abilitato.
β”œβ”€ uniq [automation]
β”‚  Rileva e rimuove le righe duplicate adiacenti da un file o dall'input.
β”‚  Comandi per creare, modificare ed eliminare utenti e gruppi su Linux. Include adduser, usermod, userdel, groupadd, groupdel, passwd, chown, chgrp e lastlog.
β”œβ”€ vim - vi improved [system]
β”‚  Editor di testo modale a riga di comando. Tre modalita' principali: Normal (navigazione e comandi), Insert (scrittura), Visual (selezione). Presente su tutti i sistemi Unix β€” sapere aprire e chiudere un file e' requisito minimo.
β”‚  Conta il numero di righe, parole e byte contenuti in un file o ricevuti tramite pipe. wc (1) - stampa il conteggio di righe, parole e byte per ogni file.
β”œβ”€ wget - web get [network-defense], [automation]
β”‚  Scarica file da URL in modo non interattivo. A differenza di curl e' ottimizzato per il download β€” riprende automaticamente i download interrotti e puo' scaricare siti interi ricorsivamente.
β”œβ”€ whatis [system]
β”‚  Mostra una descrizione sintetica (una riga) di ciΓ² che fa un determinato comando. whatis (1) - visualizza descrizioni di una riga delle pagine di manuale.
β”œβ”€ which [system]
β”‚  Localizza il percorso esatto del file binario che verrebbe eseguito lanciando il comando indicato. which (1) - localizza un comando.
β”œβ”€ who [system], [observability]
β”‚  Mostra gli utenti attualmente loggati nel sistema. È uno strumento di monitoraggio immediato per identificare sessioni attive, terminali utilizzati e orari di accesso.
β”œβ”€ whois [network-defense], [dfir]
β”‚  Interroga i database WHOIS per ottenere informazioni su un IP o dominio: ASN, organizzazione, paese, range di indirizzi, abuse contact.
β”‚  Converte stdin in argomenti per un comando. Permette di passare l'output di un comando come argomenti a un altro β€” fondamentale per costruire pipeline su grandi liste di file.
└─ xxd [dfir], [crypto]
  Utility che genera hexdump o effettua l'operazione inversa (Hex-to-Binary). Il nome sta per hex dump.