QNAP als SSH-Client mit Zertifikat

  • Ich nutze mein TS-659 Pro II recht erfolgreich als Backup-Maschine. Dazu habe ich dort ein paar Skripten angelegt, die sich mit rsync die Daten von verschiedenen Servern ziehen. Nur leider muss ich diese Skripte manuell starten, denn ich muss jedesmal das Kennwort für die SSH-Verbindung eingeben. Deshalb möchte ich das Login auf den Servern, von denen die Daten gezogen werden, mit Zertifikaten absichern. Aber genau das gelingt mir nicht.


    Ich habe auf dem QNAP sogar zwei Zertifikatpaare erstellt: per ssh-keygen -t rsa -b 4096 und auch per ssh-keygen -t ed25519 -b 4096.

    Die jeweils öffentlichen Schlüssel habe ich auf dem (Ubuntu-)Zielserver im Verzeichnis /home/<user>/.ssh in die Datei authorized_keys kopiert.

    Dennoch werde ich beim Aufruf von ssh <user>@<zielserver> nach dem Kennwort gefragt.

    An der Einrichtung des Servers liegt es nicht, denn wenn ich öffentliche Schlüssel von meinem Linux-Mint-Client dorthin kopiere, geht es von dort aus ganz prima.


    Ich habe eine dunkle Erinnerung, schon einmal etwas gelesen zu haben, dass "irgend etwas" auf dem QNAP-OS fehlt oder zumindest "so nicht" funzt... finde des aber leider nicht mehr.

    Könnt Ihr mir bitte helfen, was ich nachinstallieren oder auf dem QNAP "aktivieren" muss?


    p.s.: Ich merke gerade, dass ich mich umgekehrt an meinem QNAP per kennwortlosem-SSH anmelden kann, "obwohl" dort die authorized_keys-Datei in /etc/config/ssh steht.

    Wie weiß dann das QNAP, als welcher User ich mich anmelde? Jetzt bin ich ja noch mehr verwirrt... :huh:


    Och, jetzt habe ich es gefunden: Das QNAP meldet sich offenbar nicht mit dem von mir vergebenen Name admin@backupserver an, sondern als admin@NAS471112.

    Ich habe gerade in /etc/config/ssh ein paar weitere Schlüsselpaare gefunden, und wenn ich diese verwende, dann funzt es ganz prima.


    Dann habe ich ein paar Anschlussfragen:

    • Wie habe ich diese Schlüssel erzeugt? (Muss schon länger her sein...)
    • Wie kann ich dafür sorgen, mich als admin@backupserver anzumelden. Oder geht das nicht?

    ... ich gebe zu, mein Problem ist gelöst, allerdings würde ich es auch ganz gern verstehen, deshalb die Nach-Fragen.

    4 Mal editiert, zuletzt von Emma2 () aus folgendem Grund: Ein Beitrag von Emma2 mit diesem Beitrag zusammengefügt.

  • Im Nachhinein aus der Ferne zu sagen, warum es nicht funktioniert hat, ist schwer und irgendwie sinnlos. Es kann auch ein dummer Kopierfehler gewesen sein.


    Allgemein funktioniert die Autorisierung per ssh-Schlüssel oft dann nicht, wenn die Dateirechte nicht stimmen. Die Dateien id_rsa und authorized_keys müssen das Dateirecht 600 haben, das .ssh-Verzeichnis muss 700 haben (Werte wie gewohnt oktal). Stimmen die Rechte nicht, wird die ssh-Authorisierung gar nicht erst versucht und gleich zur Passwortabfrage (so denn zugelassen) übergegangen.

  • So ganz habe ich auch nicht verstanden, was Du genau gemacht hast. ?(

    Aber wenn SSH mit admin@NAS471112 geht, admin@backupserver aber nicht, dann musst Du m.E. einen hosts Eintrag für backupserver machen.

    Entweder im DNS oder in der /etc/hosts.


    Denn offenbar wird der Hostname "backupserver" nicht aufgelöst.


    Gruss