Installazione e configurazione di Ubuntu Server 16.10 — guida passo passo
Sommario rapido
- Partizionamento guidato con LVM consigliato per flessibilità.
- Impostare indirizzo IP statico in /etc/network/interfaces per server.
- Installare OpenSSH per accesso remoto; usare sudo per i comandi amministrativi.
- Cambiare password predefinita della VM prima di esporre il sistema.
Importante: se non sei sicuro delle modifiche al partizionamento o alla rete, esegui prima un backup o testa la procedura in una VM isolata.
1. Controllo del fuso orario
Verifica che l’installatore abbia rilevato correttamente il fuso orario. Se è corretto, seleziona Sì, altrimenti seleziona No e scegli il fuso giusto.

2. Partizionamento del disco
Per semplicità in questa guida viene usato “Guidato - usa l’intero disco e configura LVM”. Questa scelta crea un unico volume group con due volumi logici: uno per il filesystem / e uno per lo swap. Se sei esperto, puoi configurare le partizioni manualmente.

Seleziona il disco su cui vuoi operare:

Quando ti viene chiesto “Scrivere le modifiche sui dischi e configurare LVM?”, scegli Sì:

Se hai scelto il partizionamento guidato con LVM, il partizionatore creerà un volume group che usa tutto lo spazio del disco. Qui puoi specificare quanto spazio assegnare ai volumi logici per / e per swap. È una buona pratica lasciare un po’ di spazio non allocato per future espansioni.

Al termine, conferma con Sì quando ti verrà chiesto di scrivere le modifiche sul disco:

Dopo la conferma, le nuove partizioni verranno create e formattate.
3. Installazione del sistema base e aggiornamenti
Dopo il partizionamento, il sistema base verrà installato. Questo processo richiede alcuni minuti.

Successivamente il gestore pacchetti apt verrà configurato. Se non usi un proxy HTTP, lascia vuoto il campo del proxy:


Io preferisco aggiornare i server automaticamente, quindi seleziono “Installa aggiornamenti di sicurezza automaticamente”. La scelta è comunque a discrezione tua.

Seleziona i pacchetti base che desideri: almeno OpenSSH server e Standard System Utilities per poter connetterti via SSH una volta terminata l’installazione.

L’installazione continua e alla fine ti verrà chiesto se vuoi installare il boot loader GRUB nel record di avvio principale: seleziona Sì.

Quando l’installazione è terminata vedrai un messaggio di conferma:

Rimuovi il CD di installazione (o l’immagine ISO) e premi Continua per riavviare:

4. Primo accesso
Ora accedi alla shell localmente oppure da remoto via SSH usando l’utente creato durante l’installazione (nell’esempio: administrator). Il nome utente potrebbe essere diverso se ne hai scelto un altro.

5. Ottenere privilegi di root
Per eseguire i comandi di questa guida avrai bisogno dei privilegi di root. Puoi anteporre sudo a ogni comando oppure diventare root con:
sudo -sIn alternativa, puoi abilitare il login di root impostando una password per root:
sudo passwd rootAssegnando una password al root, potrai accedere direttamente come root. Tuttavia gli sviluppatori e la comunità di Ubuntu sconsigliano l’uso del login diretto di root per motivi di sicurezza. Per approfondire: https://help.ubuntu.com/community/RootSudo
6. Installare OpenSSH (opzionale)
Se non hai selezionato OpenSSH durante l’installazione, installalo ora:
apt-get install ssh openssh-serverDopo l’installazione potrai collegarti al server con un client SSH come PuTTY.
7. Installare editor di testo in shell (opzionale)
Installiamo due editor: nano (più semplice per i principianti) e vim-nox (versione migliorata di vim):
apt-get -y install nano vim-noxUsa nano per modifiche rapide o vim-nox se preferisci l’ambiente vi/ Vim.
8. Configurare la rete: scegliere IP statico
I server dovrebbero avere un indirizzo IP statico. Se vuoi mantenere DHCP puoi saltare questa sezione.
A partire da Ubuntu 12.04 non si modifica più direttamente /etc/resolv.conf: i nameserver devono essere specificati nella configurazione di rete. Consulta il manuale di resolvconf se necessario:
man resolvconfApri il file di configurazione della rete con nano:
nano /etc/network/interfacesDopo l’installazione, il file apparirà così (uso di esempio dell’interfaccia ens33 con DHCP):
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens33
iface ens33 inet dhcpPer impostare un IP statico 192.168.1.100 modifica il file come segue:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens33
iface ens33 inet static
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4Dopo il salvataggio, riavvia il servizio di rete per applicare le modifiche:
service networking restartPoi modifica il file /etc/hosts:
nano /etc/hostsE applica questo esempio:
127.0.0.1 localhost
192.168.1.100 server1.example.com server1
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersOra cambiamo il nome host della macchina:
echo server1 > /etc/hostname
hostname server1Il primo comando scrive server1 nel file /etc/hostname (letto al boot). Il secondo imposta il nome host nella sessione corrente senza bisogno di riavvio.
In alternativa puoi usare hostnamectl (systemd):
hostnamectl set-hostname server1Verifica con:
hostname
hostname -fOutput di esempio:
root@server1:/home/administrator# hostname
server1
root@server1:/home/administrator# hostname -f
server1.example.com
root@server1:/home/administrator#9. Verifiche post-installazione (test e criteri di accettazione)
Esegui questi test per assicurarti che l’installazione sia corretta:
- Test SSH: da una macchina remota esegui
ssh administrator@192.168.1.100e verifica l’autenticazione. - Test rete:
ping -c 3 8.8.8.8per controllare la connettività verso Internet. - Test DNS:
host server1.example.comoppurenslookup google.com. - Test hostname:
hostnameehostname -fdevono restituire rispettivamente il nome corto e il FQDN. - Test servizi:
systemctl status sshper verificare che il servizio SSH sia attivo.
Criteri di accettazione:
- Accesso SSH riuscito usando le credenziali fornite.
- Indirizzo IP statico e /etc/hosts correttamente configurati.
- Il nome host è persistente dopo il reboot.
10. VM pronta all’uso (OVA/OVF)
Questa guida è disponibile come immagine virtuale pronta in formato OVA/OVF per gli abbonati. Il formato è compatibile con VMware, VirtualBox e altri strumenti che importano OVA/OVF.
Dettagli di login della VM di esempio:
Accesso SSH
Username: administrator
Password: howtoforge
L’utente administrator ha permessi sudo. Cambia le password al primo avvio.
La VM è configurata con IP statico 192.168.1.100; puoi modificarlo in /etc/network/interfaces come mostrato nella sezione 8.
11. Suggerimenti di sicurezza iniziali
- Cambia tutte le password di default immediatamente.
- Disabilita il login root via SSH impostando
PermitRootLogin noin /etc/ssh/sshd_config e riavvia sshd. - Abilita l’autenticazione con chiave pubblica e disabilita l’autenticazione con password se possibile.
- Configura un firewall minimale (ufw) ed apri solo le porte necessarie: ad esempio
ufw allow OpenSSHeufw enable.
Esempio rapido:
ufw allow OpenSSH
ufw enableNota: Se abiliti il firewall da remoto assicurati di avere già accesso SSH funzionante e regole corrette per evitare di bloccarti fuori.
12. Checklist ruolo-based (ruoli comuni)
Admin di sistema:
- Verificare i backup prima della partizione.
- Documentare lo schema di partizione LVM.
- Configurare monitoraggio (es. agenti di SLI/monitor).
DevOps / Infrastruttura:
- Automatizzare la configurazione via script/Ansible.
- Gestire key rotation e segreti in vault centralizzato.
- Includere la VM nella pipeline di build/test.
Sviluppatore:
- Verificare i permessi sui file di configurazione.
- Evitare di usare l’utente root per operazioni ordinarie.
13. Decisione rapida: guidata o manuale per il partizionamento
Se non sei sicuro, usa il partizionamento guidato con LVM. Scegli manuale se:
- Hai requisiti di crittografia avanzati.
- Vuoi partizioni separate per /var, /home o docker.
- Devi usare tabelle GPT/partizioni specifiche per boot UEFI.
Diagramma di flusso (aiuta a decidere):
flowchart TD
A[Devo installare Ubuntu Server] --> B{Ho bisogno di partizionamento personalizzato?}
B -- No --> C[Usa Guidato con LVM]
B -- Sì --> D{Richiedo crittografia o partizioni separate?}
D -- No --> E[Usa partizionamento manuale semplice]
D -- Sì --> F[Progetta schema personalizzato con cifratura LUKS]
C --> G[Continua installazione base]
E --> G
F --> G14. Piccola metodologia suggerita per ambienti di produzione
- Test in VM: esegui l’intera procedura su una VM di staging.
- Verifica checklist di sicurezza e criteri di accettazione.
- Automatizza con strumenti di provisioning (Ansible/Cloud-Init).
- Documenta il risultato e cattura snapshot/backup prima di cambiare la produzione.
15. Glossario rapido (1 riga ciascuno)
- LVM: Logical Volume Manager, consente di gestire volumi logici flessibili.
- GRUB: boot loader che avvia il sistema operativo.
- DHCP: protocollo per assegnare indirizzi IP automaticamente.
- FQDN: fully qualified domain name, nome host completo con dominio.
16. Collegamenti utili
Ubuntu: http://www.ubuntu.com/
Riepilogo: hai installato Ubuntu Server 16.10, impostato LVM, configurato rete statica, installato SSH e editor, e preparato la VM. Prima di esporre il server cambia le password, abilita le difese di base (firewall, chiavi SSH) e documenta la configurazione.