Com desbloquejar arrel LUKS per SSH
La revisió el 11:53, 16 nov 2013 per Narcisgarcia (discussió | contribucions) (ip addr flush dev eth0)
Català - Castellano - English
Introducció: Aquesta és una guia simple per donar accés a la xarxa, per tal d'introduïr remotament la frase de pas a l'arrencada d'un sistema ja encriptat incloent l'arrel. D'aquesta manera no és imprescindible acudir presencialment a escriure-la amb el teclat.
Notes:
- Comprovat amb Debian GNU/Linux 7 (wheezy), tot i que el mètode hauria de funcionar amb versions anteriors i altres distribucions de GNU con Linux.
- És important considerar que, tenir el nucli amb el desencriptador en una partició sense encriptar, és un punt feble. El mètode més segur és tenir TOT el disc dur encriptat, i doncs arrencar presencialment amb una memòria externa (com /boot en una memòria USB) i, en haver desbloquejat el sistema, emportar-nos aquella memòria amb el programari intacte a les nostres mans.
Contingut
Preparar el desbloqueig LUKS remot
Des del sistema xifrat
- Instal·leu el programari pel servei SSH i d'intèrpret de comandes Shell:
apt-get install dropbear busybox
- Configureu la xarxa per l'etapa d'arrencada del nucli, establint aquesta variable al fitxer /etc/default/grub
GRUB_CMDLINE_LINUX="ip=192.168.1.33::192.168.1.1:255.255.255.0::eth0:none"
(Exemple per a una adreça IP 192.168.1.33, porta d'enllaç 192.168.1.1 i dispositiu de xarxa eth0)
- Actualitzeu el gestor d'arrencada amb les noves dades pel nucli:
update-grub
- Copieu el certificat especial d'entrada a l'equip remot, des d'on demanareu el desbloqueig:
scp -P 22 /etc/initramfs-tools/root/.ssh/initramfs_rsa UsuariRemot@EquipRemot:/home/UsuariRemot/xifrat.example.net_initramfs-rsa
(Exemple amb UsuariRemot de la IP EquipRemot i etiquetant el servidor com a xifrat.example.net)
Al sistema remot
(equip des d'on voleu enviar l'ordre de desbloqueig)
- (opcional) Per seguretat, moure el certificat al perfil de superusuari (root):
mkdir -p /root/.ssh mv ~/*_initramfs-rsa /root/.ssh/
- Instrucció a donar (amb les dades d'exemple) quan el sistema encriptat espera la frase de pas (línia llarga):
ssh -o "UserKnownHostsFile=/root/.ssh/known_hosts.initramfs" -i "/root/.ssh/xifrat.example.net_initramfs-rsa" root@xifrat.example.net "echo -ne \"1234\" >/lib/cryptsetup/passfifo ; ip addr flush dev eth0 &"
(Exemple amb contrasenya 1234, i que desconfigura la xarxa del sistema encriptat per a què no interfereixi al sistema normal)
Altres fonts
- Kernel command line (valors per la configuració de xarxa)