web analytics

[Guida] Dropbear SSH: come sbloccare un file system cifrato con LUKS da remoto

dropbear ssh

Spesso, qui su LFFL, vi abbiamo parlato di partizioni cifrate e di LUKS. In questo articolo, ad esempio, vi ho spiegato come creare una partizione persistente su una thumb drive cifrata. Oggi, invece, vi mostrerò come procedere per sbloccare una partizione cifrata, da remoto, utilizzando Dropbear SSH.

Dropbear: la configurazione lato server

Dropbear è un client e server SSH open source, distribuito sotto licenza MIT, pensato principalmente per i sistemi Unix di tipo embedded, come i router wireless. Per la realizzazione di questa guida mi connetterò ad un server virtuale, basato su Debian, il cui hard disk è partizionato secondo lo schema che potete vedere nel seguente screenshot.

dropbear server partitions

Come primo passaggio, installate Dropbear sul server:

sudo apt update
sudo apt upgrade
sudo apt install dropbear-initramfs

Successivamente, dovrete editare le configurazioni di Dropbear SSH, modificando l’apposito file tramite questa direttiva:

sudo nano /etc/dropbear-initramfs/config

server config file

Una volta aperto il file, modificate la variabile DROPBEAR_OPTIONS, salvate e richiudete il file:

DROPBEAR_OPTIONS="-I 180 -j -k -p 2222 -s"
  • -I 180 disconnette la sessione se non rileva traffico per 180 secondi;
  • -j e -K disabilitano rispettivamente il local e il remote port forwarding;
  • -s disabilita il login tramite password.

Terminata questa prima fase di configurazione, dovete ora editare il file initramfs.conf con i dati di rete del server:

nano /etc/initramfs-tools/initramfs.conf

Inserite, in fondo al file, un’istruzione con la sintassi come la seguente:

IP=[client-ip]:[server-ip]:[gateway-ip]:[netmask]:[hostname]

dropbear update initramfs

Procedete, infine, ad aggiornare il sistema:

sudo update-initramfs -u
sudo update-initramfs -u -v

La configurazione del client

Terminata la configurazione lato server di Dropbear SSH, e ora di passare al client. In particolare dovete generare la chiave pubblica, per effettuare la connessione:

ssh-keygen -t rsa -f ~/.ssh/intel_nuc_debian

dropbear client key gen

Questa chiave, che potete visualizzare sul client con cat ~/.ssh/intel_nuc_debian.pub, andrà ora copiata nel file /etc/dropbear-initramfs/authorized_keys presente sul server. Per effettuare questa operazione avete varie possibilità, la più semplice, consiste nell’abilitare temporaneamente l’accesso ssh tramite il root sul server, ed utilizzare la seguente direttiva, dal client:

cat ~/.ssh/intel_nuc_debian.pub | ssh root@192.168.1.117 "cat >> /etc/dropbear-initramfs/authorized_keys"  #utilizzate l'ip del vostro server

Dopo aver copiato la chiave, aggiornate nuovamente initrd e riavviate il server:

sudo update-initramfs -u
sudo reboot 

dropbear ssh client login

Se la configurazione di Dropbear SSH è andata a buon fine, sarete ora in grado di sbloccare una partizione cifrata con LUKS da remoto. Dal client date prima un ping verso l’indirizzo IP del server, per accertarsi che sia online. Effettuate quindi il login, utilizzando una sintassi simile alla seguente:

 ssh -i ~/.ssh/intel_nuc_debian -p 2222 -o "HostKeyAlgorithms ssh-rsa" root@192.168.1.117 #utilizzate l'ip del vostro server

Procedete, infine, a sbloccare la partizione:

cryptroot-unlock 

lucks ssh unlock LUKS

sharing-caring-1Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.