[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
das stimmt leider nicht, das war sehr wohl möglich (s.
da)
Ich stehe immer noch auf dem Schlauch - das authorized-key frontend *ISOLIERT* und *EXTRAHIERT* doch nur folgendes aus dem dropbear Paket:
- frontend für die authorized-keys Datei
- umbenennen des /tmp/flash/dropbear Verzeichnisses in /tmp/flash/authorized-keys-root
Jeglicher anderer Code im authorized-keys Paket ist NUR für die automatische Umstellung der alten Konfig (von dropbear) zur neuen gedacht.
Wieso in aller Welt soll ein Paket, welches einzige Aufgabe (aus meiner Sicht) darin besteht, ein Web-Interface zum Editieren von authorized_keys zur Verfügung zu stellen, das Ziel verfolgen SSH-Daemons zu vereinheitlichen?
Mein Ziel war es, dropbear und OpenSSH einfach ersetzen zu können (wie du es auch auf normalen Systemen kannst). Ohne dieses stand-alone authorized-keys Paket geht es nicht! Z.B.: du hast zuerst dropbear mit key-based auth. Nun wählst du dropbear ab und installierst OpenSSH - ohne das authorized-keys Paket hast du KEINE key-based auth mehr, da ja die auth-keys Datei von dropbear NICHT von OpenSSH gefunden wird!
D.h. ohne das auth-keys Paket ist das Verhalten der Fritzbox anders als man es erwarten würde.
Nicht wirklich oder, höchstens paar Zeilen? Und von der Logik her aus User-Sicht ist die Lösung sogar deutlich verständlicher.
Also, die Lösung soll sein, dass für dropbear und OpenSSH separate Verzeichnisse in /tmp/flash existieren sollen? Das auth-keys Paket soll automatisch identifizieren, wo der Link gesetzt werden soll?
Hm, sollen wir dann 2 Kopien der auth-keys Datei speichern?
Warum soll das alles gut sein? Auf einem normalen System hast du doch auch nur EIN .ssh?! Ok, ich gebe zu, dass der Name /tmp/flash/authorized-keys-root vielleicht besser /tmp/flash/dot-ssh-root heissen sollte. Aber mir ist es total unklar warum wir ZWEI .ssh Verzeichnisse für root verwalten sollen.
Ciao
Stephan
[Beitrag 2:]
Gibt es denn einen Grund, verschiedene Dateien je nach SSH-Server zu verwenden?
Ich weiß, daß man mit OpenSSH mehr Optionen in der Datei unterbringen kann, aber wenn man die verwendet, ist man sowieso auf OpenSSH festgelegt, und zwei Server gleichzeitig laufen zu lassen funktioniert (mit dem gleichen Port) sowieso nicht.
Genau mein Punkt - auf normalen System haben wir doch auch nur EIN .ssh, welches automatisch von dropbear oder OpenSSH verwendet wird. D.h., dropbear ist es egal, wenn in .ssh Informationen stehen, die drobear nicht kennt (z.B. OpenSSH Optionen).
Es geht also immer darum, die Datei ~root/.ssh/authorized_keys zu bearbeiten, Und das Verzeichnis ~root/.ssh/ sollte an einem Ort abgelegt sein, wo Änderungen dauerhaft gespeichert werden können.
Exakt.
Und mir ist im Moment total unklar was der Unterschied zwischen dem auth-keys Paket und der alten dropbear Konfig ist - beide machen doch das gleiche: ein Verzeichnis in /tmp/flash anlegen und ein Symlink von ~root/.ssh zu diesem Verzeichnis in /tmp/flash erzeugen.
UPDATE: ich habe mir nochmal das auth-keys Paket angeschaut. Im Endeffekt macht ja alles die rc.authorized-keys Datei. Die einzigste Änderung, die mir wirklich einfällt, die man sinnvoller weise machen sollte ist folgende: anstatt
Code:
mv -f $obs_auth_file $dir
sollte man vielleicht
Code:
mv -f $(dirname $obs_auth_file)/* $dir
verwenden, damit ggf. weitere Dateien die bereits für dropbear gespeichert wurden alle ins neue Verzeichnis kopiert werden.
Ciao
Stephan