Debian 9 Stretch - Installazione base

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca

Note preliminari

In questa guida mostreremo come effettuare una installazione base di una macchina Debian Stretch, su cui poi sarà possibile installare tutti i servizi desiderati.
Utilizzeremo i seguenti parametri:
- Nome del server: server1.example.com
- Indirizzo IP: 192.168.1.100
- Gateway: 192.168.1.1

Installazione

Per installare una macchina server, consigliamo di partire con:
- Installazione base da CD NetInstall
- Installazione solo del software di base

SSH Server

Dopo aver installato un sistema minimale, è consigliato installare il demome SSH, per permettere la gestione remota del server:

# apt-get -y install ssh openssh-server openssh-client ssh

È possibile creare una chiave RSA per poter accedere al server remoto dal proprio account, senza avere bisogno di inserire la password ogni volta. Per fare ciò occorre innanzitutto che nel file di configurazione di OpenSSH sul server siano abilitate le seguenti voci:

# nano /etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

Generazione della chiave RSA

Eseguire ssh-keygen sul proprio client e premere Invio quando viene chiesta la password.
Verranno generate sia la chiave privata che quella pubblica. Le chiavi saranno memorizzate in ~/.ssh/id_rsa e ~/.ssh/id_rsa.pub. Successivamente occorre aggiungere il contenuto del file con la chiave pubblica nel file ~/.ssh/authorized_keys sul server remoto; questa operazione può essere compiuta via SCP. Attenzione: il file deve essere protetto con permessi 600).
Adesso si dovrebbe avere la possibilità di utilizzare ssh per collegarsi al sistema remoto senza che sia richiesta la password.

Warning.png ATTENZIONE
Se non si riuscisse a collegarsi ricevendo invece il messaggio Permission denied (publickey) verificare che:
  • la chiave privata usata in fase di autenticazione sia quella corretta;
  • la chiave pubblica necessaria sia stata effettivamente (e correttamente) aggiunta al file authorized_keys;
  • il file ~/.ssh/authorized_keys sia accessibile solo e soltanto al proprietario (600);
  • la home dell'utenza che si vuole usare sia scrivibile solo da essa (755, 750 o 700)


Per configurare correttamente il demone SSH e per ulteriori informazioni dettagliate, consigliamo di consultare la guida apposita: [OpenSSH Server]

Installazione di un editor di testo

E' consigliato installare un editor di testo per gestire la modifiche dei file di configurazione.

# apt-get -y install vim-nox nano

Configurazione della rete

Da Debian Stretch il pacchetto che contiene alcuni utili tool di rete (es: ifconfig) è diventato opzionale; procediamo a installarlo:

# apt-get install net-tools

L'installer di Debian ha provveduto a configurare la rete attraverso il servizio DHCP. Per un server, tuttavia, è conveniente impostare un indirizzo IP statico:

# nano /etc/network/interfaces

Individuiamo la sezione dedicata alla scheda di rete del server e modifichiamola come segue:

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto ens33
#iface ens33 inet dhcp
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

Riavviamo la rete:

# service networking restart

Modifichiamo quindi il file hosts:

# nano /etc/hosts

aggiungendo il nome del nostro server:

127.0.0.1       localhost.localdomain   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-allrouters

Quindi verifichiamo che nel file hostname sia presente il nome del server:

nano /etc/hostname
server1

In caso, modifichiamo il file.
Riavviamo il server:

# reboot

e verifichiamo che tutto sia a posto:

# hostname
# hostname -f
#root@server1:/home/administrator# hostname
server1
#root@server1:/home/administrator# hostname -f
server1.example.com