Nel primo episodio di questa serie abbiamo capito cosa stiamo costruendo: un server casalingo diviso in zona privata (accessibile solo via VPN) e zona pubblica (siti, mail, reverse proxy). Ora è il momento di mettere le mani sull’hardware e installare il sistema operativo. Questo episodio è volutamente pratico: al termine avrai un server acceso, raggiungibile in rete locale e pronto a ricevere tutto quello che installeremo nelle prossime puntate.


Quale hardware usare

La buona notizia è che non serve comprare niente di nuovo. Un laptop dismesso degli ultimi dieci anni è più che sufficiente. I requisiti minimi reali — non quelli della documentazione — sono: 4 GB di RAM (8 GB sono meglio), un processore a 64 bit, e almeno 60 GB di spazio su disco. Con questo setup puoi far girare simultaneamente WireGuard, Vaultwarden, Nginx Proxy Manager e qualche servizio in più senza sudare.

I laptop hanno un vantaggio concreto rispetto ai desktop: la batteria integrata funziona da UPS. Se va via la corrente per qualche secondo, il server non si spegne di botto. È un dettaglio che fa la differenza per la stabilità dei dati su disco.

Cosa controllare prima di iniziare: verifica che il BIOS supporti l’avvio automatico dopo un’interruzione di corrente (opzione “Power On After AC Loss” o simile — imposta su “Power On”). Questo garantisce che il server torni online da solo dopo un blackout, senza che tu debba intervenire fisicamente. Controlla anche che il Wi-Fi funzioni su Linux o, meglio ancora, usa un cavo ethernet: la connessione cablata è più stabile e non dipende da driver problematici.


Perché Ubuntu Server (e non Desktop)

Ubuntu Server è la versione di Ubuntu senza interfaccia grafica. All’inizio può sembrare intimidatorio, ma è la scelta giusta per tre motivi. Primo: consuma meno risorse — niente GPU, niente compositing, niente processi grafici in background. Secondo: è progettato per restare acceso senza essere toccato, con aggiornamenti automatici di sicurezza e ottimizzazioni per l’uptime. Terzo: impari a usare il terminale, che è la competenza più trasferibile che puoi acquisire in ambito tech.

La versione consigliata è Ubuntu Server 24.04 LTS (Long Term Support): riceve aggiornamenti di sicurezza fino al 2029, ed è la base su cui si trovano la maggior parte delle guide Docker che useremo.


Installazione passo dopo passo

1. Crea la chiavetta USB di installazione. Scarica l’ISO da ubuntu.com/download/server e usa Balena Etcher (gratuito, disponibile su Mac, Windows e Linux) per scriverla su una chiavetta USB da almeno 4 GB. Il processo cancella tutto ciò che c’è sulla chiavetta.

2. Avvia dal USB. Inserisci la chiavetta nel laptop futuro server, accendilo e accedi al menu di boot (di solito F12, F2 o Esc a seconda del produttore). Seleziona la chiavetta USB come dispositivo di avvio.

3. Seguì l’installer. Ubuntu Server ha un installer testuale ma guidato. Le scelte importanti: seleziona “Ubuntu Server” (non la versione minimized), lascia che l’installer partizioni automaticamente il disco (a meno che tu non abbia esigenze specifiche), e abilita OpenSSH server quando l’installer te lo chiede — è la porta che useremo per gestire il server da remoto.

4. Crea l’utente e scegli l’hostname. Scegli un nome utente semplice (es. admin) e un hostname riconoscibile per la tua rete (es. homeserver). La password deve essere robusta: la userai raramente, ma è l’ultima linea di difesa.

5. Primo avvio e aggiornamento. Dopo l’installazione, il laptop si riavvierà nel terminale. Esegui subito:

sudo apt update && sudo apt upgrade -y

Questo aggiorna tutti i pacchetti al più recente. Riavvia con sudo reboot.


Configurare un IP statico in rete locale

L’ultimo step prima di chiudere questo episodio è assegnare al server un IP fisso nella rete locale. Senza questo, ogni volta che il router assegna un IP diverso al server, tutte le configurazioni che faremo nelle prossime puntate smettono di funzionare.

Il modo più semplice è farlo dal router: cerca la sezione “DHCP reservations” o “Static DHCP” e associa l’indirizzo MAC del tuo server a un IP fisso (es. 192.168.1.100). In alternativa, puoi configurarlo direttamente su Ubuntu editando il file Netplan in /etc/netplan/.

Una volta fatto, prova a connetterti via SSH dal tuo computer principale con:

ssh nomeutente@192.168.1.100

Se vedi il prompt del terminale del server, hai finito. Il server è pronto.


Conclusione

Hai un server Ubuntu acceso, raggiungibile via SSH, con un IP fisso nella rete locale. È una fondamenta solida — e da qui in avanti tutto diventa più interessante. Nel prossimo episodio installiamo WireGuard con wg-easy: la VPN che renderà accessibile la zona privata solo a chi ha le chiavi giuste. È il componente più importante dell’intera architettura, e vedrai che non è affatto complicato da configurare.


Fonti: