Forum: PC Hard- und Software Dropbear Initramfs


von Gustav G. (gustavgggg)


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.

von Hmmm (hmmm)


Lesenswert?

Gustav G. schrieb:
> Dropbear soll auf allen Adressen hören.

Nur den Port angeben, keine IP-Adresse und kein Interface.

von Daniel A. (daniel-a)


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.

von Hmmm (hmmm)


Lesenswert?

Daniel A. schrieb:
> IPv4 geht aber oft auch mit :: als listen Adresse,
> warum genau weiss ich nicht.

Siehe bind(2):

"IPv4 connections can be handled with the v6 API by using the 
v4-mapped-on-v6 address type; thus a program needs to support only this 
API type to support both protocols."

von Gustav G. (gustavgggg)


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.

von Εrnst B. (ernst)


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...

von Mario M. (thelonging)


Lesenswert?

Gustav G. schrieb:
> jeweils eine unterschiedliche
> statische IP Adresse

Einfach mehrere Zeilen mit "ip=" in die initramfs.conf einfügen und das 
jeweilige Interface anhängen.

https://realtechtalk.com/Howto_Set_Static_IP_on_boot_in_initramfs_for_dropbear_or_other_purposes_NFS_Linux_Debian_Ubuntu_CentOS-2278-articles

von Daniel A. (daniel-a)


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.

: Bearbeitet durch User
von Gustav G. (gustavgggg)


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

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.