Raspi, Synology DS212 und rsnapshot

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,
    ich hab ein NAS (Synology DS212) und mache dort bereits jetzt wöchentliche Sicherungen auf eine externe Festplatte per rsnapshot. Jetzt möchte ich erstens aus Spieltrieb und zweitens aus Sicherheitsgründen die externe Festplatte nicht mehr direkt am NAS hängen lassen, sondern an den Raspi hängen und die Sicherungen Nachts per rsnapshot mittels ssh public/private key vom NAS holen. Ich hab hierzu schon eine Menge gelesen und probiere seit Tagen jeden Abend eine ssh Verbindung ohne Login (also mit key-authentifiizerung) hinzubekommen. Leider vergeblich. Ich weiß aber nicht genau, woran es liegt - könnte also sein, dass der Raspi alles richtig macht und ich das Problem beim NAS suchen muss. Aber vielleicht kennt sich ja jemand mit beidem aus und kann mir weiterhelfen.

    Folgendes hab ich gemacht:
    ein keypaar auf dem Raspi erstellt und den Publickey an meine DS212 transferiert. Dort steht der Key jetzt auch in bei dem Benutzer "Backup" in der Datei authorized_keys drin.

    Mache ich dann vom Raspi aus

    Code
    ssh Backup@192.168.2.32

    dann kommt trotzdem die Passwortabfrage des Benutzers.

    Laut folgendem Link sollte das aber bereits ohne Passwort gehen.
    http://blog.undkonsorten.com/heimgeholt-ges…pshot-erstellen

    Mit Benutzername und Passwort kann ich mich mit diesem User (ein Readonly User) auch auf dem System einloggen. Also der Benutzer ansich funktioniert für ssh.

    Jetzt weiß ich nicht so recht, ob irgendwie der falsche Key ausgetauscht wird, oder woran es hängt. Kennt sich jemand damit aus?

  • Ich habe den key mit ssh-copy-id kopiert, dann musste ich das Passwort vom Benutzer "Backup" eingeben. Es kam dann die Meldung dass ich mich jetzt mit "ssh Backup@192.168.2.32" ohne Passwort einloggen kann und das funktioniert nicht. Ich muss immer das Passwort eingeben.

  • Hallo persching,

    schau dir mal die SSHD-Konfigurationsdatei "/etc/ssh/sshd_config" auf deiner Synology an. Hier sollte auf jeden Fall die "authorized_keys" mit der Option "AuthorizedKeysFile" festgelegt sein. Der Pfad kann eventuell bei dir anders sein.

    Code
    AuthorizedKeysFile     %h/.ssh/authorized_keys

    Des Weiteren muss die Anmeldung mit einem Schlüssel erlaubt sein.

    Code
    RSAAuthentication yes
    PubkeyAuthentication yes

    Wenn das alles nichts hilft, würde ich dich bitten mal deine SSHD-Konfiguration zu posten.

    Gruß Georg

  • Hallo Georg,
    auch das funktioniert nicht. Hier mal meine sshd_config von meiner DS:

    alternativ auch mit dieser Zeile:

    Code
    AuthorizedKeysFile .ssh/authorized_keys

    der absolute Pfad zum .ssh-Verzeichnis lautet:

    /volume1/homes/Backup/.ssh

    wenn ich mich als Backup einlogge, dann natürlich nur /.ssh

    gibt das %h dann den home-Pfad für den Benutzer an?

    Gruß Dirk aka persching

  • So, ich glaube der Fehler liegt doch beim raspi! Ich hab den private key bei meinem Android Handy zum Programm "connectbot" hinzugefügt und dort hat die Identifizierung sofort geklappt.
    Wo muss ich hier evtl noch etwas anpassen?

  • Hallo persching,

    Zitat

    wenn ich mich als Backup einlogge, dann natürlich nur /.ssh

    Du meinst wohl "~/.ssh" weil im Root-Verzeichnis liegt das Verzeichnis ja nicht. Oder wird dein SSH-Benutzer in einer Chroot eingesperrt?

    Zitat

    gibt das %h dann den home-Pfad für den Benutzer an?

    Ja.

    Zitat

    So, ich glaube der Fehler liegt doch beim raspi!

    Also die Konfigurationsdatei von deiner Synology sollte soweit passen. Wenn es wie du geschrieben hast bei anderen Systemen funktioniert, dann würde ich auch auf die Einstellungen am Raspberry Pi tippen.
    Mit welchem Befehl hast du denn die Keys auf dem Raspberry Pi erstellt und wo hast du den Private Key abegelegt? Wenn du den folgenden Befehl aus deinem Tutorial verwendet hast, dann liegt der Private Key wohl in deinem Homeverzeichnis.

    Code
    sudo ssh-keygen -t dsa

    Im Homeverzeichnis sucht aber der SSH-Client nicht nach dem Schlüssel. Du musst diesen unter "~/.ssh" ablegen.

    Code
    ssh-keygen -t dsa -f ~/.ssh/id_dsa

    Gruß Georg

  • Ich hab jetzt wieder probiert und gesucht, aber ich finde einfach keinen Fehler (weil ich zu wenig Ahnung von der Materie hab).

    Könnte es an der sshd_config unter /etc/ssh liegen?

    hier mal deren Inhalt:

    das hier ist eigentlich der Pfad zum privatkey... und das ist auch der privatkey, der mit dem handy funktioniert.

    Code
    Hostkey /etc/ssh/localhost-rsnapshot-key

    liegt hier der Fehler? oder suche ich am falschen Ende...?

  • Hallo persching,

    Zitat

    Könnte es an der sshd_config unter /etc/ssh liegen?

    Ganz sicher liegt der Fehler hier. Du willst vom Raspberry Pi aus eine SSH-Verbindung zur Synology aufbauen. Das bedeutet du musst auf dem Raspberry Pi den SSH-Client konfigurieren und nicht den SSH-Daemon.

    Hast du inzwischen mal versucht deinen privaten Schlüssel wie in meinem letzten Post beschrieben in das entsprechende Verzeichnis abzulegen?

    Gruß Georg

  • langsam aber sicher nähere ich mich dem Ziel:
    in der /etc/ssh/ssh_config auf dem pi war die Zeile zum Key auskommentiert und dann auch der falsche Key angegeben.
    Nun wird aber die Verbindung beim Benutzer "Backup" von der Diskstation verweigert (root geht). Meldung:

    Code
    Connection closed by 192.168.2.32

    ein bischen googeln brachte mich zur Datei /var/log/messages auf der DS und dort steht das hier:

    Code
    sshd[1587]: pam_unix(sshd:account):could not identify user (from getpwnam(backup))

    Das wirft 2 Fragen auf:
    1. Wo ist der Fehler
    2. Wie kann ich verhindern, dass mit diesem Key ein root Login möglich ist? Es soll eigentlich nur der read-only-User Backup mit dem Key identifiziert werden.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!