(erledigt) Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ren22

(erledigt) Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Beitrag von ren22 » 21.10.2019 21:42:16

Hallo,

ich befasse mich gerade mit Debian und der automatischen Installation.
Ich verwende die Debian10 Netinstall Iso, welches ich auf einen USB kopiere mit angepasster preseed.cfg .

Wunsch: Auf dem Zielsystem soll ein bereits vorhandener privater SSH Key, (den könnte ich ja beim erstellen der ISO mit in das Image einbinden), dem in der preseed.cfg konfigurierten Benutzer, eingefügt werden und SSH entsprechend, login nur per Key, konfigurieren. Kann mir jemand ein Tip geben wie ich das genau per "preseed.cfg" machen kann :?:

Alternative: Notfalls würde es auch gehen wenn der Installer ein SSH Key konfiguriert und diesem neuem Key dann auf den USB Stick kopiert.

Danke
Zuletzt geändert von ren22 am 26.10.2019 14:46:09, insgesamt 1-mal geändert.

cronoik
Beiträge: 2049
Registriert: 18.03.2012 21:13:42
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Beitrag von cronoik » 21.10.2019 23:52:52

Du kannst mit preseed eigene Kommandos ausfuehren. Fuer deinen Fall wuerde ich es als late_command definieren, da dann eigentlich alles vorhanden sein sollte was du brauchst [1].

[1] https://www.debian.org/releases/stable/ ... seed-hooks
Hilf mit unser Wiki zu verbessern!

ren22

Re: Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Beitrag von ren22 » 22.10.2019 16:16:26

Also was ich bisher versucht habe im "late_command"

Code: Alles auswählen

d-i preseed/late_command string \
mkdir -p --mode=0700 /target/custom; \
cp -r /custom /target/custom; \
in-target sh -c 'mkdir -p --mode=0700 /home/USERXYZ/.ssh && cat /custom/sshkey.pub > /home/USERXYZ/.ssh/authorized_keys ......usw
allerdings bleibt die authorized_keys auf 0 bytes :!:

Frage: Das Ziel- Dateisystem wird mit "/target" angesprochen :?:
Ich finde dazu keine entsprechende Dokumentation, das ich schon beim erstellen des Images, ein Verzeichnis erstelle "custom", dort den sshkey.pub hin kopiere sodass dieser schon bereits im Image dann enthalten ist und der dann per "late_command" in das Ziel- Dateisystem kopiert wird.

Danke

JTH
Moderator
Beiträge: 3077
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Beitrag von JTH » 22.10.2019 17:23:04

ren22 hat geschrieben: ↑ zum Beitrag ↑
22.10.2019 16:16:26
Frage: Das Ziel- Dateisystem wird mit "/target" angesprochen :?:
Ja. Aus der Beispiel-Preseed für Buster:

Code: Alles auswählen

# This command is run just before the install finishes, but when there is
# still a usable /target directory. You can chroot to /target and use it
# directly, or use the apt-install and in-target commands to easily install
# packages and run commands in the target system.
d-i preseed/late_command string …
Und aus dem Link von cronoik:
When the filesystem of the target system is mounted, it is available in /target. If an installation CD is used, when it is mounted it is available in /cdrom.

Du bräuchtest also ein

Code: Alles auswählen

cp -r /cdrom/custom /target/custom
Dein /home/USERXYZ/.ssh samt Inhalt würde so allerdings root gehören. Du brauchst nach dem Kopieren noch ein rekursives chown. Das chmod kannst du dir andersherum eher sparen.

Wenn du deine preseed.cfg + anderes fest in ein ISO einbauen möchtest, gibt es dazu eine Anleitung.
Manchmal bekannt als Just (another) Terminal Hacker.

ren22

Re: (erledigt) Debian10 Automatische Installation - vorhandenen SSH Key einfügen in Zielsystem

Beitrag von ren22 » 26.10.2019 14:46:40

Perfekt, vielen Dank, hat alles bestens funktioniert wie erhofft :THX:

Antworten