How2Server
Pagina in bozza ancora in costruzione
Questa guida vuole essere un riferimento per il recupero di vecchi computer al fine di trasformarli in server, realizzando una configurazione minima. Di seguito è illustrato l'esempio di installazione di Debian, ma le istruzioni al suo interno dovrebbero essere sufficientemente generali.
Preparazione
Il primo passo per l'installazione di Debian consiste nello scaricare l'immagine .iso dal sito della fondazione.
Windows
Su Windows è possibile utilizzare un programma come Rufus, programma molto intuitivo dotato di un'interfaccia grafica che permette agilmente di creare un'unità USB con l'installer del nostro sistema operativo.
Debian Ubuntu
Inserire il dispositivo USB e digitare su terminale il seguente comando
lsblk
Il comando lsblk
permette di mostrare sullo schermo la lista di unità a blocchi disponibili (tra cui la nostra pendrive). Le pendrive solitamente presentano sda
, sdb
o sdd
come nome. Questo comando, inoltre, mostra per ciascun dispositivo anche i file system che lo formano: è quindi possibile, ad esempio, che se la nostra pendrive è listata come sdb
, sotto di essa un'asticella mostri anche un suo eventuale file system sdb1
.
In questo caso, si procede con lo smontare il file system attraverso il seguente comando:
sudo umount /dev/sdb1
Per scrivere l'immagine ISO sul dispositivo USB è possibile usare il comando dd
bs=16M
sudo dd if=debian-12.5.0-amd64-netinst.iso of=/dev/sdb status=progress oflag=sync
dove il parametro if
permette di specificare il file ISO e tramite è possibile specificare il dispositivo di destinazione; l'opzione bs specifica quanti byte alla volta leggere/scrivere.
Configurazione
Una volta installato Debian e seguite le istruzioni dall'installer, si presenterà davanti a noi il terminale del sistema. Come primi passi, procediamo a configurare il nostro sistema in modo da connetterlo alla rete locale e renderlo accessibile da remoto tramite ssh.
Configurazione di rete
La configurazione di rete è gestita dal demone systemd-networkd, che si occupa di controllare tutti gli aspetti di rete tra cui anche gli indirizzi ip e le rotte per il traffico. Se non è attivo, procediamo ad attivarlo
systemctl enable systemd-networkd.service systemctl start systemd-networkd.service
Guardare l'interfaccia cablata attualmente in uso utilizzando il comando ip a
Indirizzo IP dinamico
[Match] Name=enp1s0 [Network] DHCP=yes
Indirizzo IP statico
[Match] Name=enp1s0
[Network] Address=10.175.133.243/15 Gateway=10.175.0.1 DNS = 1.1.1.1
Configurazione ssh
Installazione di openssh-server
Installazione di openssh-server
al fine di mettere il server in condizione di accettare connessioni ssh remote.
sudo apt install openssh-server
Controllare se il servizio è in esecuzione
sudo systemctl status ssh
Nel caso il servizio non sia in esecuzione è possibile farlo partire tramite sudo systemctl start ssh
Per verificare è sufficiente bla bla
Usare chiavi ssh per l'accesso
Sul proprio computer è possibile generare le chiavi ssh usando
ssh-keygen -t rsa
Questo comando genererà la coppia di chiavi pubblica/privata all'interno della directory ~/.ssh
. Durante la generazione delle chiavi verrà richiesto all'utente l'inserimento di una passphrase, ossia una password che verrà domandata ogni qualvolta si provi ad accedere utilizzando la coppia di chiavi.
È possibile copiare la chiave pubblica sull'host remote con il comando ssh-copy-id
ssh-copy-id -i ~/.ssh/id_rsa.pub $remote_user@$remote_host