Guida completa alla configurazione e alla gestione di un server Ubuntu

Ultimo aggiornamento: Dicembre 26 2025
  • Ubuntu Server offre una piattaforma stabile, sicura e gratuita per l'hosting di siti web, applicazioni, database e servizi di rete in ambienti fisici, virtuali o cloud.
  • Le versioni LTS, il firewall UFW, l'autenticazione tramite chiave SSH e gli aggiornamenti regolari contribuiscono a rafforzare la sicurezza e l'affidabilità del server nel lungo termine.
  • L'ampia comunità, la ricca documentazione e la facilità di installazione di software come Docker, NGINX, Apache o VNC rendono Ubuntu Server una soluzione molto flessibile e adattabile.
  • Con una buona pianificazione dei dischi, backup e controlli di sicurezza tramite strumenti come Lynis, è possibile mantenere i server Ubuntu ottimizzati, protetti e pronti per la crescita.

Server Ubuntu

Configurare un server con Ubuntu Server è diventata un'opzione molto diffusa sia per progetti personali che per ambienti professionali. È stabile, sicuro, gratuito e altamente flessibile, il che lo rende perfetto per ospitare siti web, applicazioni, database o persino intere infrastrutture cloud senza dover spendere una fortuna in licenze.

In questa guida troverai tutto ciò che ti serve per comprendere, installare, proteggere e ottimizzare Ubuntu Server su un VPS, un server dedicato o un ambiente virtualizzato. Tratteremo nel dettaglio cos'è Ubuntu Server, i suoi vantaggi rispetto ad altre distribuzioni , i requisiti di sistema, l'installazione e la configurazione iniziali, l'utilizzo di SSH, i firewall, i backup, l'installazione di software chiave (Apache, NGINX, Docker, VNC, ecc.) e alcuni suggerimenti per l'ottimizzazione e la risoluzione dei problemi che ti risparmieranno molti grattacapi.

Cos'è Ubuntu Server e perché è così utilizzato sui server?

Ubuntu Server è un'edizione di Ubuntu specifica per server , basata sul kernel Linux e gestita da Canonical. A differenza di Ubuntu Desktop, non include un ambiente grafico e viene quasi sempre gestita tramite riga di comando o utilizzando strumenti di amministrazione remota.

Questa mancanza di un'interfaccia grafica si traduce in un minor consumo di risorse e in una maggiore efficienza per attività come l'hosting di siti web, la gestione di database, la fornitura di servizi di rete ( DNS , DHCP, e-mail, file, ecc.) o la distribuzione di applicazioni in container e nel cloud.

Il nome "Ubuntu" deriva da una filosofia africana che significa qualcosa come "Io sono perché noi siamo ", il che si allinea perfettamente con l'idea di comunità e software open source. Dalla sua prima versione nel 2004, Ubuntu ha costantemente guadagnato terreno, diventando una delle distribuzioni Linux più utilizzate, e la sua edizione server è ormai uno standard di fatto in molti data center, cloud pubblici e progetti aziendali.

Uno dei punti di forza di Ubuntu Server è il suo modello di rilascio con versioni LTS (Long Term Support) , che offrono supporto esteso e aggiornamenti di sicurezza per diversi anni, garantendo tranquillità agli amministratori di sistema e agli sviluppatori alla ricerca di stabilità.

Installazione di Ubuntu Server

Vantaggi dell'utilizzo di un server Ubuntu

Uno dei principali motivi per scegliere Ubuntu Server è che si tratta di un software gratuito e open source : non si pagano licenze o costi di abbonamento per utilizzarlo su VPS, VDS o server dedicati. Questo riduce i costi IT, soprattutto quando si passa a più server o a un cluster completo.

Ubuntu offre aggiornamenti regolari e versioni LTS (come la 20.04, la 22.04 o la 24.04) con patch di sicurezza per anni. Questo permette di mantenere il server protetto dalle vulnerabilità note senza dover migrare continuamente il sistema operativo.

La community di Ubuntu è enorme, e questo si traduce in forum attivi, documentazione ufficiale, tutorial e guide per praticamente qualsiasi cosa tu voglia fare: dalla configurazione di un semplice server web alla creazione di un'infrastruttura complessa con container e alta disponibilità.

A livello tecnico, Ubuntu Server funziona egregiamente con un'ampia varietà di hardware e software , dai piccoli VPS ai grandi server dedicati, inclusi servizi cloud come AWS, Azure e Google Cloud. Inoltre, è fortemente orientato ai container e al cloud, con supporto nativo per Docker, Kubernetes e strumenti simili.

Un altro punto importante è la flessibilità e la personalizzazione : è possibile installare solo i pacchetti e i servizi necessari (ad esempio, solo NGINX e Docker, oppure un classico stack LAMP con Apache, MySQL e PHP), evitando servizi superflui che consumano risorse e aumentano la superficie di attacco.

Requisiti hardware per Ubuntu Server e pianificazione del disco

Ubuntu Server 24.04 LTS e versioni simili hanno requisiti hardware piuttosto modesti , il che le rende adatte all'uso su macchine virtuali o server economici. In generale, per un utilizzo tipico si consigliano una CPU x86-64 da 1 GHz, 1 GB di RAM (2 GB sono preferibili per una maggiore flessibilità) e circa 10 GB di spazio di archiviazione.

Negli ambienti di virtualizzazione come VMware, Proxmox o Hyper-V, i requisiti sono molto simili , anche se in pratica sarà necessario dimensionare CPU, RAM e disco in base al carico effettivo delle applicazioni, dei database e dei container.

Durante l'installazione, la procedura guidata chiederà se si desidera utilizzare un singolo disco intero o più partizioni . Nella maggior parte dei casi, l'opzione consigliata è quella di lasciare che Ubuntu utilizzi l'intero disco e crei le partizioni necessarie. Anche se si sceglie un singolo volume "grande", il programma di installazione creerà internamente partizioni più piccole per il sistema , il bootloader e altri componenti critici.

  Recupero dati in sistemi RAID: una guida completa e gli errori da evitare.

In seguito, se è necessario regolare lo spazio, è possibile utilizzare comandi di gestione del disco come df -h per verificare l'utilizzo delle partizioni, oppure strumenti come resize2fs (insieme alla relativa gestione delle partizioni) per estendere i file system su dispositivi come /dev/sdXY.

Download e installazione di base di Ubuntu Server

Per iniziare, il primo passo è scaricare l'immagine ISO ufficiale di Ubuntu Server dal sito web di Ubuntu (sezione download server). Quando possibile, scegli la versione LTS più recente per assicurarti diversi anni di supporto e aggiornamenti di sicurezza.

Una volta ottenuto il file ISO, è possibile montarlo su un server fisico (tramite USB o la console remota del provider) o sulla propria piattaforma di virtualizzazione (ad esempio, associandolo come unità CD/DVD in VMware, KVM, ecc.). Da lì, si avvia la macchina e si segue la procedura di installazione.

Durante la procedura, ti verrà chiesto di scegliere la lingua, il fuso orario, il nome utente iniziale, la password, le impostazioni di rete e, cosa molto importante, la configurazione del disco . Puoi lasciare la procedura guidata in modo che la procedura guidata crei le partizioni necessarie, oppure farlo manualmente se hai esigenze specifiche (LVM, RAID, ecc.).

Al termine dell'installazione, il sistema si riavvierà e avrai a disposizione un server Ubuntu pronto per la configurazione , solitamente accessibile tramite SSH con l'account utente creato o, in alcuni ambienti provider, con accesso diretto come root.

Ambiente server Ubuntu: ecosistema, comunità e documentazione

Uno dei maggiori punti di forza di Ubuntu Server è che si basa su software open source ampiamente testato , con repository ufficiali completi e migliaia di pacchetti pronti per l'installazione con un semplice comando `apt install`. Questo offre un'enorme libertà di personalizzazione del sistema in base alle proprie esigenze.

È circondato da una comunità molto attiva di sviluppatori e utenti che contribuiscono con patch, miglioramenti e documentazione. Troverete manuali di amministrazione, guide di installazione dettagliate, tutorial video e forum specializzati per risolvere domande e problemi specifici.

Grazie a questa flessibilità, è possibile dedicare il proprio server Ubuntu a una moltitudine di compiti: server web, server di database, server di file , server di posta elettronica , piattaforma per container, nodo cloud ibrido, laboratorio di test, ecc. Lo stesso sistema di base si adatta a contesti molto diversi senza alcuna difficoltà.

Inoltre, i provider di hosting e cloud spesso offrono modelli o immagini di Ubuntu Server preinstallati , consentendoti di implementare un VPS con Ubuntu preconfigurato e concentrarti direttamente sulle tue applicazioni.

Sicurezza e aggiornamenti su un server Ubuntu

Come per qualsiasi distribuzione Linux moderna, la sicurezza è un pilastro fondamentale di Ubuntu Server. Canonical rilascia aggiornamenti frequenti per correggere vulnerabilità e bug, e le versioni LTS ricevono un supporto esteso, semplificando la manutenzione dei sistemi critici senza la necessità di continue modifiche.

Per rafforzare la sicurezza di base, si consiglia vivamente di aggiornare tutti i pacchetti immediatamente dopo l'avvio del server , utilizzando comandi come `apt update` seguito da `apt upgrade -y`. Questo garantisce che l'intero sistema sia aggiornato prima di metterlo in produzione.

Il firewall Uncomplicated Firewall (UFW) è integrato e semplifica notevolmente la gestione delle regole. È possibile visualizzare l'elenco dei profili disponibili con `ufw app list` , consentire il traffico SSH con `ufw allow OpenSSH` e quindi attivare il firewall con `ufw enable`, verificandone lo stato con `ufw status`.

Oltre al firewall, è consigliabile disabilitare i servizi non utilizzati , rafforzare le impostazioni SSH (ad esempio, bloccando l'accesso diretto come root o l'autenticazione tramite password) e utilizzare l'autenticazione basata su chiave pubblica ogni qualvolta sia possibile.

Backup e servizi inclusi sui server professionali

Molti fornitori di server dedicati includono uno spazio di archiviazione di backup aggiuntivo (ad esempio, 500 GB) fisicamente separato dalla macchina principale. L'idea è di poter archiviare lì i file più critici: dati di database, configurazioni, contenuti web, file di posta elettronica, ecc.

Eseguire backup regolari consente di ripristinare rapidamente il servizio in caso di guasti hardware, errori umani o attacchi e, se si utilizza l'archiviazione cloud, di crittografarli con Cryptomator . Con Ubuntu Server, è possibile automatizzare questi backup utilizzando strumenti come rsync, borg, duplicity, script personalizzati o integrazioni specifiche del fornitore.

Oltre allo spazio di backup, molti piani server offrono indirizzi IPv4 e IPv6, protezione DDoS, larghezza di banda garantita e accordi sul livello di servizio (SLA) che assicurano un'elevata disponibilità dell'hardware. Tutto ciò rende Ubuntu Server un componente prezioso di un'infrastruttura ben gestita.

  Virtualizzazione delle applicazioni e prestazioni: una guida completa per ottenere il massimo dalla tua infrastruttura

Poiché Ubuntu Server è un progetto gratuito e open source, ciò che pagherete effettivamente è la potenza di elaborazione del server fisico o virtuale : CPU, RAM, dischi, larghezza di banda di rete, ecc. L'installazione è solitamente automatica tramite il pannello di controllo del provider, senza costi aggiuntivi per la licenza del sistema operativo.

Primi passi dopo l'installazione di Ubuntu Server: utenti, SSH e sudo

Quando si crea un nuovo server Ubuntu (ad esempio, Ubuntu 20.04 o 22.04), è fondamentale eseguire alcune configurazioni di base iniziali per migliorare la sicurezza e la facilità d'uso. In genere, la connessione avviene tramite SSH utilizzando l'indirizzo IP pubblico del server e l'account root o un account utente iniziale.

L'account root ha pieni privilegi di sistema , il che significa che una distrazione può causare seri problemi. Pertanto, è prassi comune creare un account utente normale per le attività quotidiane e utilizzare `sudo` solo quando sono necessari i privilegi di amministratore.

È possibile aggiungere un nuovo utente con un comando come `adduser username` , impostare una password sicura e, se si desidera conferirgli i privilegi di amministratore, includerlo nel gruppo sudo con `usermod -aG sudo username`.

Da lì, è possibile eseguire comandi amministrativi anteponendo `sudo` al comando , consentendo di continuare a lavorare con un normale account utente ma con la possibilità di elevare i privilegi secondo necessità. Il sistema richiederà periodicamente la password dell'utente per confermare l'identità.

Configurazione dell'accesso SSH e chiavi pubbliche

Il servizio SSH (OpenSSH Server) consente di gestire Ubuntu Server da remoto tramite la rete. È preinstallato su molti server; in caso contrario, è possibile aggiungerlo con `apt install openssh-server` e abilitarlo con `systemctl start ssh` e `systemctl enable ssh`.

Se inizialmente accedi utilizzando una password, puoi accedere al server con un comando come `ssh utente@indirizzo_IP_server` . Tuttavia, è considerato molto più sicuro configurare l'autenticazione basata su chiave SSH, in cui il tuo computer locale memorizza la chiave privata e il server memorizza solo la chiave pubblica.

Per configurare questo meccanismo, è possibile utilizzare strumenti come ssh-copy-id , che copia la chiave pubblica nel file ~/.ssh/authorized_keys dell'utente sul server. Se la chiave è già configurata per l'account root, è anche possibile copiare la struttura ~/.ssh al nuovo utente utilizzando rsync con i permessi e la proprietà appropriati.

Nel file `/etc/ssh/sshd_config`, si consiglia di disabilitare il collegamento root (`PermitRootLogin no`) e, se l'autenticazione tramite chiave è già attiva, di disabilitare l'autenticazione tramite password (`PasswordAuthentication no`). Dopo aver modificato queste impostazioni, riavviare il servizio con `systemctl restart ssh`.

Firewall con UFW e controllo del traffico

Ubuntu Server include UFW come semplice livello di gestione firewall . La sua filosofia è che, per impostazione predefinita, tutto il traffico in entrata viene bloccato tranne quello che viene esplicitamente consentito. Ciò riduce il rischio che un servizio configurato in modo errato venga esposto involontariamente.

Prima di attivare UFW, è consigliabile consentire il traffico SSH con `ufw allow OpenSSH` per evitare di perdere l'accesso remoto. Successivamente, è possibile abilitare il firewall con `ufw enable` e verificare che sia attivo e che consenta le connessioni necessarie utilizzando `ufw status`.

Quando si installano nuovi servizi (ad esempio, HTTP per un server web o porte specifiche per un database), è necessario aprire le porte corrispondenti in UFW utilizzando regole aggiuntive. Questa soluzione è ideale per i server in cui si desidera esporre a Internet solo pochi servizi.

Installazione software chiave: SSH, Docker, NGINX e Apache

L'"arsenale" di un tipico server Ubuntu include solitamente un server SSH, un server web, il supporto per i database e, sempre più spesso, strumenti per i container. L'installazione viene effettuata principalmente tramite apt, utilizzando i repository ufficiali di Ubuntu.

Per garantire l'accesso remoto, il pacchetto essenziale è openssh-server . Una volta installato e attivato, è possibile gestire il server senza accedere direttamente alla console fisica o alla console web del provider.

Se lavori con i container, il metodo usuale è installare Docker con `apt install docker.io` (oppure seguendo il repository ufficiale di Docker per le versioni più recenti). Dopodiché, puoi avviare e abilitare il servizio con `systemctl start docker` e `systemctl enable docker`, e aggiungere il tuo utente al gruppo `docker` con `usermod -aG docker $USER` per gestire i container senza utilizzare i privilegi di root.

Per la gestione di pagine web statiche o applicazioni leggere, molti amministratori scelgono NGINX per le sue prestazioni e semplicità. Si installa con `apt install nginx` e si abilita allo stesso modo degli altri servizi con `systemctl start` e `systemctl enable`.

Se preferisci il classico stack LAMP, puoi configurare Apache come server web , insieme a MySQL o PostgreSQL e linguaggi come PHP o Python. Il flusso di lavoro tipico prevede l'installazione di Apache, la verifica del suo stato con `systemctl status apache2`, l'apertura della porta HTTP nel firewall con `ufw allow 'Apache'`, la configurazione dei file del sito in `/etc/apache2/sites-available` e la loro abilitazione con `a2ensite`, e infine il riavvio del servizio.

  Guida completa alle migliori distribuzioni Linux per principianti

Configurazione di un server VNC e di un ambiente grafico leggero

Sebbene Ubuntu Server venga avviato senza interfaccia grafica, in alcuni scenari può essere utile installare un ambiente grafico leggero e accedervi tramite VNC , ad esempio per gli utenti che preferiscono un ambiente desktop o per gestire determinati strumenti visivi.

Un'opzione comune è quella di utilizzare XFCE come ambiente desktop leggero, installandolo con un comando che aggiunge sia l'ambiente sia i suoi componenti aggiuntivi (xfce4 e xfce4-goodies). Questo fornisce un desktop funzionale senza aumentare significativamente il consumo di risorse.

Dopodiché, puoi installare un server VNC come TightVNC , configurarlo con una password di accesso tramite vncserver e creare uno script di avvio in ~/.vnc/xstartup che carichi il tuo ambiente XFCE all'apertura della sessione VNC.

Una volta che lo script è stato contrassegnato come eseguibile e vncserver è stato avviato con la risoluzione desiderata (ad esempio, :1 -geometry 1280×800 -depth 24), sarà possibile connettersi da un client VNC sulla propria macchina locale utilizzando l'indirizzo IP del server e la porta corrispondente, gestendo così il desktop remoto di Ubuntu Server.

Ottimizzazione, scansione delle vulnerabilità e prestazioni

Oltre al semplice funzionamento del sistema, è opportuno dedicare del tempo all'ottimizzazione e alla verifica della sicurezza di Ubuntu Server , soprattutto in ambienti esposti a Internet o contenenti dati sensibili. Uno degli strumenti più utilizzati per l'analisi della sicurezza in Linux è Lynis.

Dopo aver installato Lynis dai repository appropriati, è possibile eseguirlo per analizzare la configurazione del sistema e generare un report con possibili vulnerabilità, punti deboli o aree di miglioramento (autorizzazioni, servizi attivi, configurazioni di rete, ecc.).

Per quanto riguarda le prestazioni, esistono diverse misure che possono essere di grande aiuto: disabilitare i servizi non utilizzati , regolare alcuni parametri del kernel (ad esempio, tramite /etc/sysctl.conf), configurare correttamente l'utilizzo dello swap e rivedere i parametri di rete come code, buffer o limiti di connessione in base al carico previsto.

Questo tipo di regolazioni, insieme a una buona strategia di monitoraggio (strumenti come top, htop, iotop, journalctl o soluzioni più avanzate), consentono al server Ubuntu di rimanere stabile, sicuro e con prestazioni che soddisfano le esigenze delle vostre applicazioni.

Comandi utili e risoluzione dei problemi più comuni

Nella gestione quotidiana, è molto comune dover diagnosticare problemi di spazio, servizi che non si avviano o guasti di rete . Ubuntu Server offre un buon set di comandi che aiutano in queste attività senza la necessità di installare nulla di insolito.

Per verificare lo spazio disponibile su disco, si usa spesso il comando `df -h` , mentre per scoprire quali directory occupano più spazio in un determinato percorso, si può usare `du -sh * | sort -h`. Questo permette di individuare rapidamente i file di log che hanno generato errori o le cartelle di grandi dimensioni che è necessario ripulire o spostare.

Se un servizio non si avvia o si comporta in modo anomalo, oltre a `systemctl status service_name`, è spesso molto utile utilizzare `journalctl -u service_name` per visualizzare i messaggi di log associati e capire cosa non funziona.

Per la configurazione di rete, i comandi ping e traceroute (o tracepath in alcune installazioni) vengono utilizzati per verificare la connettività e i percorsi verso altri host, come google.com o server interni. Se sospetti che il firewall stia bloccando il traffico legittimo, puoi sempre controllare le regole correnti con il comando ufw status.

Dopo gli aggiornamenti del kernel o le modifiche al boot manager, potrebbe essere necessario rigenerare la configurazione di GRUB utilizzando `update-grub` , soprattutto se sono stati aggiunti o modificati dischi e partizioni. Questo garantisce che il sistema continui ad avviarsi correttamente dalla versione del kernel prevista.

È evidente che Ubuntu Server è una piattaforma completa, robusta e flessibile, ideale per configurare qualsiasi cosa, dai piccoli servizi domestici alle complesse infrastrutture aziendali; la sua combinazione di stabilità, sicurezza, comunità, facilità d'uso e costi di licenza pari a zero lo rende una scelta eccellente per chiunque desideri installare un moderno server Linux senza complicazioni.

Ubuntu
Articolo correlato:
Ubuntu: Requisiti e Caratteristiche