Dropbear Initramfs

OP #7728430
Lesenswert?

Weiß jemand zufällig wie man mit Dropbear Initramfs zur entschlüsselung der Cryptdisk alle Interfaces bedienen kann und nicht nur eins. Konkret will ich im Initramfs die Netzwerkschnittstellen mit einer statischen IP Pro Schnittstelle konfigurieren und Dropbear soll auf allen Adressen hören. Ich finde immer nur Beispiele mit einem Interface und einer IP.

#7728442
Lesenswert?

Mit Dropbear habe ich noch nie was gemacht, aber normalerweise läuft das überall gleich.

0.0.0.0 als listen Adresse sind immer alle IPv4 Adressen (aber keine IPv6). :: sind alle IPv6 Adressen. (wenn man ip:port hat, muss man eventuell [::]:port schreiben). IPv4 geht aber oft auch mit :: als listen Adresse, warum genau weiss ich nicht.

OP #7728498
Lesenswert?

Ich glaube es wurde etwas falsch verstanden was mein Problem ist. Das mit der IP Adresse ist mir klar. Ich habe an meinem Rechner 4 Ethernet Schnitstellen, denen ich im Initramfs jeweils eine unterschiedliche statische IP Adresse geben möchte, damit Dropbear aus verschiedenen Netzen erreichbar ist.

#7728535
Lesenswert?

Gustav G. schrieb:

Ich glaube es wurde etwas falsch verstanden was mein Problem ist.

Dein Problem hat also mit Dropbear, ssh usw. absolut garnichts zu tun. Damit ist der Thread-Titel etwas ungünstig gewählt.

Zum eigentlichen Problem: Früher™ konnte man (s)eine /etc/network/interfaces mit in die initramfs aufnehmen, und mit "ip=frommedia" booten. Dann wurde die bestehende interfaces-Datei verwendet, und nicht anhand der Kernel-Parameter neu erstellt.

Müsstest du aber in die Dokumentation und die initramfs-scripte schauen, ob das immer noch so ist... Seitdem ich das zuletzt verwendet habe, hat sich an dem Netzwerk-Zeugs viel geändert, interfaces.d/*, netplan, NetworkManager, systemd-networkd...

#7728602
Lesenswert?

Das hängt doch davon ab, welche Distro & welchen initramfs generator man nutzt, um die initramfs zu erstellen. Auf debian ist das glaub ich normalerweise initramfs-tools, aber eventuell nutzen manche statdessen dracut, in den Repos finde ich auch noch tiny-initramfs. Das dropbear-initramfs setzt bei Debian initramfs-tools voraus.

Schlimmstenfalls kann man sicher ein Hook Script erstellen, um die IPs zu setzen (oder auch per DHCP setzen zu lassen).

Es gibt auch noch die Möglichkeit, die IPs schon vom Kernel setzen zu lassen. Die Funktionalität existiert wegen der Möglichkeit des initramfslosen nfsroot Bootens, ist aber auch ohne nfsroot verwendbar: https://www.kernel.org/doc/Documentation/filesystems/nfs/nfsroot.txt

Das kann man über den Bootloader (z.B. grub /etc/default/grub) dem Kernel als Parameter mitgeben lassen

1
ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>:<ntp0-ip>

Der Kernel kann sogar dhcp. Ob man das mehrfach für mehrere Interfaces angeben kann, ob man da sowas wie ip=::::myhostname:eth0:dhcp::: machen kann, etc. weiss ich nicht. Ich würde erstmal einfach ip=dhcp versuchen, ich weiss zwar nicht, ob das dann für alle Interfaces gilt, aber einen Versuch ist es sicher wert, vielleicht reicht das ja schon.

OP #7728612
Lesenswert?

Daniel A. schrieb:

Das hängt doch davon ab, welche Distro & welchen initramfs generator man nutzt, um die initramfs zu erstellen. Auf debian ist das glaub ich normalerweise initramfs-tools, aber eventuell nutzen manche statdessen dracut, in den Repos finde ich auch noch tiny-initramfs. Das dropbear-initramfs setzt bei Debian initramfs-tools voraus.

Ich benutze debian12

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren