UFW gestisce regole del firewall su Ubuntu. Su un server remoto, la priorità è mantenere il percorso da cui lo amministri. Questa guida riguarda un nuovo server senza una politica di firewall già organizzata: non azzerare regole esistenti su una macchina in produzione per adattarla agli esempi.
1. Controlla come accedi
Annota porta SSH e indirizzo della macchina. Mantieni aperta la sessione funzionante e verifica di poter usare una console locale o del provider in caso di blocco. Sul server controlla i servizi in ascolto:
sudo ss -lntp
Individua la porta di SSH e confermala anche con la configurazione o i dati del provider. Su alcune installazioni il servizio usa attivazione tramite socket, quindi leggere soltanto una riga di sshd_config non basta a descrivere il listener effettivo.
2. Installa e osserva lo stato
sudo apt update
sudo apt install ufw
sudo ufw status verbose
Se il firewall è già attivo, esamina le regole prima di aggiungerne o cambiare le politiche. Il profilo OpenSSH normalmente rappresenta la porta standard; non usarlo senza controllo quando il server ascolta su una porta diversa. Nessun comando di reset è necessario per questo percorso.
3. Consenti prima la porta SSH corretta
Per SSH sulla porta standard 22:
sudo ufw allow 22/tcp
Se hai verificato una porta personalizzata, ad esempio 2222, usa invece:
sudo ufw allow 2222/tcp
Non aggiungere entrambe per abitudine: apri la porta effettivamente usata. Queste regole consentono l’accesso da qualsiasi sorgente che raggiunga il server. Una restrizione a un indirizzo sorgente può essere utile, ma va pianificata tenendo conto di VPN e IP pubblici che cambiano.
4. Attiva e verifica
Sul nuovo server, dopo aver predisposto la regola SSH, imposta le politiche di base e abilita UFW:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
sudo ufw status verbose
L’attivazione può influire sulle connessioni esistenti. Dal PC apri subito un secondo terminale e prova un nuovo accesso SSH alla stessa porta. Non considerare sufficiente la vecchia sessione ancora aperta. Verifica lo stato e le regole anche per IPv6 quando la macchina è raggiungibile su quel protocollo.
5. Apri solo i servizi necessari
Per un server web che espone davvero HTTP e HTTPS, puoi consentire separatamente 80/tcp e 443/tcp. Non aprire porte per applicazioni ancora inesistenti. Sul cloud può esserci anche un firewall del provider, da controllare separatamente. Su un server domestico il router e la rete locale costituiscono altri livelli: una regola UFW non crea una pubblicazione Internet.
Se il nuovo accesso non riesce
Usa la console di recupero, controlla porta e regole e correggi l’accesso. Come intervento temporaneo dalla console puoi disabilitare UFW con sudo ufw disable, poi sistemare le regole prima di riabilitarlo. Se utilizzi Docker, VPN o altri strumenti che gestiscono regole di rete, verifica le loro interazioni: UFW da solo non descrive necessariamente tutto il traffico consentito sul server.
Documentazione ufficiale
Il prossimo passo
- Installare Ubuntu Server LTS e preparare il primo accesso SSH
- Collegarsi a un server con SSH da Windows, Linux e macOS
- Chiavi SSH Ed25519: crearle e usarle su un server Linux
Una prova anche dal lato del client
Dopo aver consentito la porta SSH effettiva, controlla le regole con sudo ufw status verbose e prova una seconda connessione dal PC prima di chiudere la prima. Un servizio può restare irraggiungibile anche con la regola corretta: potrebbe ascoltare soltanto su localhost oppure essere bloccato dal router o dal firewall del provider. In questo caso aggiungere altre regole UFW non risolve la causa. Per un server remoto prepara la console di recupero prima delle modifiche. Documenta lo scopo di ciascuna porta aperta: quando rimuovi un servizio potrai rimuovere anche la relativa autorizzazione.