Guida: Installazione di Debian Server

In questa guida spiegherò come installare la distribuzione Debian in versione server su un computer. Questo tutorial è valido anche per tutte le varie distribuzioni del mondo Linux, poiché alla fine cambia solo l’aspetto grafico, ma il procedimento è lo stesso, se non per qualche piccola eccezione.

Per prima cosa saranno necessari:

  1. Un computer che volete utilizzare come server, va bene anche datato;
  2. Un CD con la versione minimale di Debian Server, in questa guida utilizzeremo la versione 8.0 della nota distribuzione.

Scarichiamo quindi l’immagine ISO del CD di Debian, bisogna però effettuare una semplice scelta tra la versione a 32 bit (i386) o a 64 bit (amd64), il file corretto è il “CD1”, ovvero:

debian-8.0.0-i386-CD-1.iso
debian-8.0.0-amd64-CD-1.iso

AGGIORNAMENTO: dalla versione 9.0 il file corretto per questa guida è “netinst“, quindi nel caso della versione a 64 bit:

debian-9.4.0-amd64-netinst.iso

Dopodiché accendiamo il PC sul quale vogliamo installare Debian, entriamo nella configurazione del BIOS premendo il tasto F2 o Canc o in alternativa il tasto F8 se avete a disposizione un BIOS recente e configuratelo per fare il boot da CD/DVD, impostando come prima voce il lettore CD/DVD. Nel caso in cui abbiate premuto il tasto F8, basterà selezionare dall’elenco il nome del lettore CD/DVD e premere il tasto Invio per effettuare il boot da CD.

Fatto ciò ci ritroveremo la seguente schermata:

Schermata di Boot

Scegliamo Install e premiamo Invio.

Ci verrà presentata la seguente schermata:

Selezione lingua

Scegli la lingua che desideri utilizzare, altrimenti installerai il sistema in lingua inglese.

Dopodiché sarà necessario scegliere la propria zona, per il fuso orario:

Selezione zona e fuso orario

Premiamo invio e cerchiamo l’Italia:

Selezione PAese

Dopodiché impostiamo la lingua della tastiera a italiano (Italia), la prima scelta.

A questo punto verranno eseguiti dei controlli sul CD, sull’hardware del PC in uso e sulla rete (quest’ultima verrà configurata automaticamente con DHCP, se sarà possibile).

Caricamento componenti aggiuntivi

Configurazione di rete

Inseriamo l’hostname per il nostro server, ad esempio:

Inserimento hostname

E il dominio:

Inserimento dominio

Dopodiché impostiamo la password dell’utente root, ovvero l’amministratore totale del sistema:

Password di root

È sempre buona regola utilizzare una password complicata e sufficientemente lunga.

Fatto ciò, confermiamo la password appena inserita:

Conferma password

E andiamo a creare un utente standard, con i permessi per effettuare i comandi da root tramite la parola chiave “sudo”:

Creazione utente standard

Impostiamo l’username (che va sempre scritta in minuscolo):

Inserimento Username

La password:

Inserimento Password

Inserimento Password (Verifica)

Fatto ciò bisognerà partizionare l’hard disk. Per semplicità scegliamo il partizionamento guidato, in modo tale da creare automaticamente una partizione per tutto il sistema e una per l’area di SWAP (area del disco utilizzata come RAM):

Partizionamento HDD

Seleziona il disco da partizionare:

Selezione del disco

Scegliamo la prima voce, quella che ci permette di installare tutti i files sulla stessa partizione:

Installazione files sulla stessa partizione

Quindi rispondiamo affermativamente alla seguente richiesta:

Applicazione delle modifiche

E poi:

Fine e inizio applicazione delle modifiche al partizionamento

E ancora:

Scrittura delle modifiche su disco

Adesso partirà l’installazione vera e propria:

Installazione in corso...

Bisognerà quindi selezionare un mirror dal quale reperire gli aggiornamenti. È utile utilizzare un mirror (cioè un server che condivide gli stessi files del server principale) vicino, poiché la connessione a tale server è più veloce.

Aggiornamento

Cerchiamo quindi l’Italia e premiamo il tasto Invio.

Successivamente bisognerà selezionare il mirror FTP:

Selezione del mirror FTP

E se utilizziamo un proxy per collegarci a internet bisognerà impostarlo qui:

Impostazione del proxy

Altrimenti lasciare tutto vuoto e premere Invio.

Verranno così installati gli ultimi aggiornamenti software:

Download aggiornamenti software

Rispondiamo di no:

Sondaggio

E adesso ci basterà selezionare ciò che vogliamo installare automaticamente sul server Debian. Se ad esempio volessimo usare il nostro PC con Debian Server come server HTTP ci basterà selezionarlo andando a cercare la relativa voce e premendo la barra spaziatrice per far capire all’installer che vogliamo quella risorsa:

Installazione dei software

Premiamo quindi il tasto Invio e attendiamo il download dei files:

Download dei pacchetti software selezionati

E la relativa installazione:

Installazione dei pacchetti software selezionati

Adesso bisognerà installare il boot loader, GRUB, lo strumento che si occupa di caricare il sistema operativo:

Installazione di GRUB - boot loader

Rispondiamo di sì e andiamo avanti:

Configurazione di GRUB

Rimuoviamo quindi il CD. Il PC si riavvierà.

Scegliamo di avviare la voce già selezionata nel menù di GRUB, nel caso in cui ci venisse richiesto (oppure basterà attendere 10 secondi), dopodiché effettuare il login con nome utente e password impostati precedentemente.

Ci ritroveremo davanti a una shell. Da lì potremo andare a installare i vari software desiderati e configurare ogni aspetto del sistema. Se ad esempio volessimo cambiare le impostazioni di rete ci basterà impartire il comando:

nano /etc/network/interfaces

Nel caso in cui vi avvertisse che “nano” non è installato, procedete installandolo con il seguente comando:

apt-get install nano -y

Tale comando permette di installare l’editor di testo da consolle automaticamente, senza richiedere “se siete sicuri di voler procedere con l’installazione”, grazie all’opzione -y. In sostanza, nelle distro Debian si tende sempre ad utilizzare il comando:

apt-get install/purge <nome-pacchetto>

Per installare (install) o rimuovere (purge) un software.

Configuriamo quindi la nostra connessione di rete come desiderato:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp
auto eth0
iface eth0 inet static
        address 192.168.0.8
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Fatto ciò premiamo la combinazione [Ctrl] + [X] e rispondiamo affermativamente.

Riavviamo quindi la connessione alla rete, con il comando:

/etc/init.d/networking restart

Nel caso in cui volessimo associare ad esempio alla parola “debian” un indirizzo IP ci basterà modificare il file degli hosts, che fa in sostanza ciò che effettua un server DNS, traducendo le parole in IP, con l’aiuto di nano:

nano /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.0.8   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-allrouters

Per quanto riguarda le sorgenti software, i mirror ecc. è possibile modificarli con il seguente comando:

nano /etc/apt/sources.list

Che conterrà un qualcosa di simile (al posto di wheezy troverete scritto eventualmente jessie / stretch o altro, a seconda della versione di debian che state installando, così come per quanto riguarda l’URL) a:

deb http://ftp.de.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.de.debian.org/debian/ wheezy main contrib non-free

deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free

# wheezy-updates, previously known as 'volatile'
deb http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.de.debian.org/debian/ wheezy-updates main contrib non-free

Effetuiamo quindi le nostre modifiche e impartiamo il comando (in realtà 2 uniti):

apt-get update && apt-get upgrade -y

Per effettuare l’aggiornamento del sistema. Il comando potrebbe non funzionare se non avete fatto il login con l’account root, quindi se state utilizzando un altro account sarà necessario l’utilizzo della parola chiave “sudo“:

sudo apt-get update && sudo apt-get upgrade -y

Oppure tramite il comando:

su root

E digitando eventualmente la password dell’utente root, sarà possibile lavorare come tale utente.

Se volessimo installare Apache, MySQL, PHP ecc. ci basterà dare il comando (ovviamente i pacchetti descritti in questa guida non sono aggiornati e alcuni sono opzionali, dovrete cercare i pacchetti giusti, visto che già a partire dal 2017 è disponibile PHP 7.0, trovate una guida adatta a Raspberry PI, ma anche per Debian in questo articolo.):

apt-get install mysql-client mysql-server openssl apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached

E tramite il comando:

a2enmod/a2dismod <nome-mod-di-apache>

Sarà possibile abilitare o disabilitare le mod per Apache, ad esempio per ottimizzare il web server disabilitando mod non utilizzate o per abilitarne al fine di far funzionare CMS come WordPress.

Le guide che ho scritto per Raspbian e in particolare Raspberry PI sono compatibili anche con Debian Server, quindi non dovrebbero esserci grossi problemi e vi basterà leggerne qualcuna per apprendere come realizzare, ad esempio, un proprio spazio cloud.

Guida aggiornata il 17/03/2018 – Aggiornamento per Debian 9 Jessie.