rsync Backup von NAS4Free auf Synology DS115j DSM6.1.4

Status
Für weitere Antworten geschlossen.

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hallo Leute,

ich bin ganz neu hier im Forum und habe folgendes Problem:

Ich möchte gerne von meinem NAS4Free eine Datensicherung per rsync auf meine Synology DS115j machen. Es läuft dort der DSM 6.1.4.

Leider bekomme ich immer wieder Fehlermeldungen....

In meinem Verständnis ist die Synology der rsync-Server und das NAS4Free der Client.

Ich habe auf der Synology einen User "rsync" erstellt und schieße den rsync-Befehl per Putty vom NAS4Free an die Synology:

rsync -av /mnt/1Festplatte/Testdaten/ rsync@192.168.252.102::NetBackup/backuptest/ --password-file /mnt/1Festplatte/password.pwd

Ergebnis:

sending incremental file list
rsync: read error: Operation timed out (60)
rsync error: error in socket IO (code 10) at io.c(785) [sender=3.1.2]

Es landen allergings die Ordner aus den Testdaten auf der Synology. Und diese gehören auf einmal dem User "root"... Der User "root" führt den rsync-Befehl allerdings gar nicht aus... Das er dann keine Dateien da rein schreiben kann leutet mir eigentlich ein....

Es ist meiner Meinung nach ein Rechteproblem, diese Fehlermeldung.

Kann jemand helfen?

VG android25
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.751
Punkte für Reaktionen
1.660
Punkte
314
Hallo und willkommen im Forum!

Aus eigener Erfahrung arbeite ich bezüglich rsync immer als root, weshalb ich mich auch als root per ssh verbinden würde und nicht als Benutzer rsync. Als weiteren Punkt in deinem rsync Aufruf fehlt mir die Angabe des Volumes wo sich der gem. Ordner NetBackup befindet, also z.B. volume1/NetBackup/...

Anyway. Du könntest aber auch mal versuchen das Ganze mit Ultimate Backup zu lösen. Hierbei würdest du dann halt den umgekehrten Weg gehen und dir die Daten von deinem NAS4Free auf die DS holen, also per „from ssh“ Verbindung. Wie man über Ultimate Backup eine ssh-Verbindung als root zu einem rsync-kompatiblen Server einrichtet ist in der zugehörigen Hilfe beschrieben. Vielleicht magst das ja mal probieren. Mehr zu Ultimate Backup findest du in meiner Signatur.

Tommes
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hallo Tommes,

ich habe mich mal mit dem Ultimate Backup Projekt befasst.

auf meinem NAS4Free ist SSH aktiv und rync ist auch eingeschlatet...

Leider bekomme ich immer wieder die Fehlermeldung, dass der SSH-Handshake nicht erfolgreich ausgeführt werden konnte.

kann man das auf der Konsole irgendwie testen?

Muss ich auf der Synology noch irgendwas einstellen?

Kann ich dir mal den Debug senden?

LG
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.751
Punkte für Reaktionen
1.660
Punkte
314
Schau dir mal die Ultimate Backup Hilfe an (klick auf das Fragezeichen im geöffneten Fenster von Ultimate Backup) und lies mal unter Gerätemanager / Aufbau einer SSH-Verbindung von bzw. zu einem rsync-kompatiblen ein. Sollte es dann immer noch nicht klappen, meld dich nochmal.

Die Debug brauch ich nicht, das Problem sitzt i.d.R. vor dem Bildschirm *lach* ... sorry! Im ernst, man muss eine bestimmte Reihenfolge beim Einrichten des SSH Zuganges einhalten, und vor allem alles als root Konfigurieren damit alles rund läuft. Hier passieren die meisten Fehler. Auch mal prüfen, ob Firewall oder automatische Blockierung dazwischen funken. Also lies bitte nochmal die Hilfe und meld dich bitte, wenn etwas unklar ist.

Tommes
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
mit dem Problem vor dem Bildschirm... ist so ....meistens.... ;)

ich habe mir die Anleitung schon gefühlte 100x durchgelesen.
Du schreibst immer wieder, dass man alles als root einrichten muss. Ich habe bei der Synology schon das Problem, dass es den Benutzer root ja gar nicht gibt. Ich logge mich als "admin" ein.

Ich gehe mal davon aus, dass admin = root ist...

Firewall ist aus

Automatische Blockierung mal ganz rausgenommen. (ist im Übrigen auch alles leer)

Bekomme immer noch die Fehlermeldung das der Handshake nicht möglich ist...
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.846
Punkte für Reaktionen
2.284
Punkte
829
admin ist ungleich root. Auf der Shell bitte sudo -i eingeben, um root zu werden.
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
OK. Danke.

Dann stellt sich mir gerade die Frage, warum ich als User "admin" auf der GUI von UltimateBackup die Einrichtung der SSH-Verbindung in dem tollen Fenster dort vornehmen soll... Sorry.

Bin grad verwirrt.

Versuche es jetzt auf der Shell.
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.846
Punkte für Reaktionen
2.284
Punkte
829
Im DSM-Webfrontend ist Admin das Maß der Dinge - ich bezog mich nur auf die Shell. Sorry für das Missverständnis.
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Schlüsselpaar über Shell getauscht.... bekomme trotzdem die Meldung, dass der Handshake nicht klappt...
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.751
Punkte für Reaktionen
1.660
Punkte
314
Also nochmal von vorne. Admin ist nicht gleich root, das sagte dil88 aber bereits. Wir schreiben nicht umsonst überall hin, das man als root agieren soll, denn nur als root läßt sich eine sinnvolle Datensicherung durchführen, jedenfalls mit unserem System.

Dann stellt sich mir gerade die Frage, warum ich als User "admin" auf der GUI von UltimateBackup die Einrichtung der SSH-Verbindung in dem tollen Fenster dort vornehmen soll... Sorry.

Die GUI wurde extra für Leute wie dich geschaffen um eben nicht auf die Konsole zu müssen um alles von Hand durchführen. Über die GUI wird der RSA-Schlüsselaustausch, der später die eigentliche SSH-Verbindung bzw. den erstmaligen Handshake erst ermöglicht, automatisch im Hintergrund für den Benuter root erstellt Du brauchst also nichts weiter tun, als einen Speicherort für den RSA-Key auszuwählen und den SSH-Schlüssel zu exportieren bzw. von einem entfernten Server zu importieren. Handelt es sich bei dem entfernten Server um eine weitere DiskStation, kannst du dort ebenfalls über ein installiertes Ultimate Backup den SSH-Schlüssel exportieren oder importieren, je nach dem welcher Server Quelle und welcher Ziel ist. Handelt es sich um einen rsync kompatiblen Server, wie dein NAS4free dann musst du den Schlüssel halt manuell erzeugen und austauschen, wobei du hier idealerweise auch als root agierst. Wie das geht ist ja ebenfalls in der Ultimate Backup Hilfe beschrieben.

Fassen wir zusammen. Ist Quelle und Ziel eine Synology DiskStation, dann kannst du alles über Ultimate Backup erledigen und musst nicht auf die Konsole ausweichen. Ist dein Ziel oder Quelle ein rsync-kompatibler Server, auf dem kein Ultimate Backup läuft, dann musst du den Schlüsselaustausch zu Fuß durchführen.

Auf die Konsole der DS musst du nur, wenn es, wie in deinem Fall, nicht funktioniert. Denn nur über die Konsole lässt sich das Problem eingrenzen. Das man hierzu einige Erfahrungen auf der Konsole haben sollte, ist selbstredend. Auch handelt es sich bei dem ganzen Prozedere um ein Standardverfahren unter Linux um eine SSH-Verbinung mittels RSA-Key aufzubauen und das lässt sich an vielen Stellen auch nachlesen.

Ich habe so gut es geht versucht, diesen Weg so einfach wie möglich zu beschreiben und wir haben versucht es euch so einfach wie möglich über die GUI zu gestalten. Leider können wir das nicht komplett automatisieren, daher bleibt uns nur diese Möglichkeit. Wenn es also irgendwo hakt, dann müsst ihr leider selber schauen, wo das Problem liegt. Wir können euch nur Hilfestellung geben, gehen müsst ihr den Weg aber alleine. Das ist nun mal so. Wenn einer eine bessere, einfachere oder formschlüssigere Veriante kennt, dann her damit.

Und nichts für ungut, aber ich hatte vor kurzem erst eine ähnliche Disskusion mit dem User -Passwort-, *klick* daher verzeih meine vielleicht etwas forsche Schreibweise. Denn auch er wollte nicht auf unsere Ratschläge hören und meinte uns ständig Informationen vorenthalten zu müssen. Dann braucht man sich aber auch nicht wundern, wenn es am Ende nicht läuft. Denn wie gesagt, wir helfen wo wir können, nur hellsehen können wir nicht. Daher bitte ich dich, entweder unseren Anweisungen zu folgen und dich z.B. als root auf die Konsole aufzuschalten und nicht als admin. Wenn wir das hinbekommen sind wir schon einen Schritt weiter und wir können gemeinsam versuchen das Rätsel zu enträtseln.

Tommes
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hi, Tommes,

danke für dein ausführliches Feedback und danke für eure Hilfe hier.

Leider steh ich immer noch im Wald....

Ich habe die jeweiligen "id_rsa.pub"-Dateien gegenseitig getauscht und jeweis in die "authorized_keys" des anderen Gerätes eingetragen. Alles auf der Konsole als Benutzer "root". Sowohl auf der DS als auch auf den NAS4FREE.

den Test von der DS zum NAS4Fee hab ich mit dem Befehl gemacht:

ssh -i /root/.ssh/id_rsa root@nas4free

hier kommt nix.....

festgestellt habe ich gerade, dass die Namensauflösung von der DS in Richtung NAS4Free nicht klappt:

ping nas4free --> Name or service not known

andersherum

ping diskstation --> PING diskstation (192.168.252.102): 56 data bytes
64 bytes from 192.168.252.102: icmp_seq=0 ttl=64 time=2.662 ms

geht zumindest der ping und die Namensauflösung.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.751
Punkte für Reaktionen
1.660
Punkte
314
Okay, dann man Step by Step...

Das du die RSA-Keys des jeweils anderen Servers in die authorized_keys eingetragen hast ist schon mal gut. Ich gehe jetzt einfach mal davon aus, das das alles korrekt durchgeführt wurde und alle Datei- und Ordnerrechte stimmen. Dann sollte eigentlich der erste Verbindungsaufbau klappen. Warum das bei dir aber nicht klappt, müssen wir jetzt mal testen,

Beginnen wir dazu auf der Konsole der DS, angemeldet als root:

Gibt mal...

Code:
ssh root@IP-DEINES-NAS4FREE

... ein und sag mir, was passiert. Gleiches probierst du dann nochmal von deinem NAS4Free in Richtung DS, ebenfalls als root, aus.

Code:
ssh root@IP-DEINER-DS

... und sag mir, was dort passiert.

Wirf auf beiden Systemen mal einen Blick in die /root/.ssh/known_hosts und schau, ob dort Einträge des jeweils anderen Server vorhanden sind.

Erstmal bis hierhin... bzw. Ich ergänze noch ein wenig.

Unter /root/.ssh solltest du auf beiden Servern diese Ordner- und Dateistruktur haben...

Code:
root@Diskstation:~/.ssh# dir
total 24
drwxr-xr-x 2 root root 4096 Nov  7 17:09 .
drwx------ 4 root root 4096 Nov 18 07:59 ..
-rw------- 1 root root 3698 Nov 18 08:13 authorized_keys
-rw------- 1 root root 3243 Sep 30 08:46 id_rsa
-rw-r--r-- 1 root root  742 Sep 30 08:46 id_rsa.pub
-rw-r--r-- 1 root root  350 Oct 15 13:44 known_hosts

... wobei ~/.ssh den Benutzer-Home-Ordners des aktuell angemeldeten Beutzers entspricht. Bei root wäre das dann der Ordner /root/.ssh

Wobei ich grade sehe, das bei mir die id_rsa.pub und known_hosts die Rechte 644 haben und nicht 600...
 
Zuletzt bearbeitet:

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hi, Tommes,

danke, dass du mir hilfst.


Also....Schlüssel habe ich gerade noch einmal ganz frisch auf beiden Geräten erstellt und auf der Konsole als root getauscht und in die jeweilige authorized_keys importiert

auf der Synology bin ich root (root@DiskStation:~/.ssh#)
Rich (BBCode):
ssh root@192.168.252.101 
Connection closed by 192.168.252.101

vom Nas4Free in Richtung DiskStation (auch hier bin ich root)

Rich (BBCode):
ssh root@192.168.252.102 
Unable to negotiate with 192.168.252.102 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc


eine Datei known_hosts existiert bei mir auf beiden Seiten nicht...

so siehts auf der DiskStation aus
Rich (BBCode):
root@DiskStation:~/.ssh# dir
total 20
drwx------ 2 root root 4096 Nov 20 23:09 .
drwx------ 4 root root 4096 Nov 20 23:03 ..
-rw------- 1 root root  739 Nov 20 23:09 authorized_keys
-rw------- 1 root root 3243 Nov 20 23:03 id_rsa
-rw-r--r-- 1 root root  741 Nov 20 23:03 id_rsa.pub


und so auf dem Nas4Free (dort geht der Befehl dir nicht... also ls)
Rich (BBCode):
nas4free:  ~/.ssh# ls -la
total 12
drwx------  2 root  erwachsene   512 Nov 20 23:14 .
drwxr-xr-x  3 root  wheel        512 Nov 20 07:06 ..
-rw-------  1 root  erwachsene   741 Nov 20 23:14 authorized_keys
-rw-------  1 root  erwachsene  3243 Nov 20 23:05 id_rsa
-rw-r--r--  1 root  erwachsene   739 Nov 20 23:05 id_rsa.pub
 
Zuletzt bearbeitet:

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.751
Punkte für Reaktionen
1.660
Punkte
314
Sehr seltsam.

Wie genau hast du den RSA-Key erzeugt? So, wie es in der Anleitung von Ultimate Backup steht?

Code:
ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa

Hast du währenddessen evtl. ein Passwort vergeben, was du nicht sollst? Mich macht die Fehlermeldung von deinem NAS4Free etwas stutzig, müsste da aber selber erstmal recherchieren, da ich so einen Fehler noch nicht hatte. Oder du gehst mal auf die Suche danach.

Du schreibst, das du alles nochmal „ganz frisch“ auf beiden Servern erstellt hast. Hast du dabei den jeweiligen Ordner /.ssh im Vorfeld gelöscht? Prüf mal, wieviele Key‘s sich aktuell in der jeweiligen authorized_keys befinden, es sollte eigentlich nur je einer sein.

Setz die Rechte der authorized_keys mal auf 644 und schau, was dann passiert...

Code:
chmod 0644 ~/.ssh/authorized_keys

Wenn das auch alles nicht hilft, schauen wir uns mal die /etc/ssh/sshd_config an... aber jetzt hab ich erstmal andere Dinge zu tun. Bis später mal.

Tommes
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hi, Tommes,

also ich habe mich an die Anleitung gehalten. Die Keys selbst habe ich allerdings direkt auf der Shell als User root erstellt. Jeweils auf der DS und auch auf dem Nas4Free.

ssh-keygen -b 4096 -t rsa -f /root/.ssh/id_rsa

habe ich dabei verwendet.


In der authorized_keys steht immer jeweils nur 1 Key... immer der public-Eintrag des jeweis anderen Rechners (am Ende des Eintrages steht halt: root@Diskstation bzw. root@nas4free)


root@DiskStation:~/.ssh# dir
total 20
drwx------ 2 root root 4096 Nov 20 23:09 .
drwx------ 4 root root 4096 Nov 20 23:03 ..
-rw------- 1 root root 739 Nov 20 23:09 authorized_keys
-rw------- 1 root root 3243 Nov 20 23:03 id_rsa
-rw-r--r-- 1 root root 741 Nov 20 23:03 id_rsa.pub



nas4free: ~/.ssh# ls -la
total 12
drwx------ 2 root erwachsene 512 Nov 20 23:14 .
drwxr-xr-x 3 root wheel 512 Nov 20 07:06 ..
-rw------- 1 root erwachsene 741 Nov 20 23:14 authorized_keys
-rw------- 1 root erwachsene 3243 Nov 20 23:05 id_rsa
-rw-r--r-- 1 root erwachsene 739 Nov 20 23:05 id_rsa.pub

das ist das Ergebnis.... wie gesagt, die Datei known_hosts gibt es bei mir nicht.....


ich probiere gerade mal mit authorized_keys auf 644....

genau die selbe Fehlermeldung... Unable to negotiate with 192.168.252.102 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
 
Zuletzt bearbeitet:

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Kannst du mal deine sshd_config von freenas posten?
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
na klar doch ....


Speicherort auf dem Nas4Free /etc/ssh/sshd_config
Rich (BBCode):
HostKeyAlgorithms ssh-ed25519,ssh-rsa,ssh-dss
HostKey /var/etc/ssh/ssh_host_rsa_key
SyslogFacility LOCAL3
Protocol 2
UseDNS no
Subsystem sftp /usr/libexec/sftp-server
ChallengeResponseAuthentication yes
Port 22
PermitRootLogin yes
AllowTcpForwarding no
PasswordAuthentication yes
PubkeyAuthentication yes
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Ich glaub man kann hier noch cipher eintragen. Per ssh -vvv kann man sonst aber noch ein genaueres ssh log erstellen. Ich geh nachher aber mal die ssh manpage durch.

#EDIT

Trag mal. folgendes in die sshd_config

Rich (BBCode):
Ciphers 3des-cbc,blowfish-cbc,cast128-cbc,arcfour,arcfour128,arcfour256,aes128-cbc,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com
 
Zuletzt bearbeitet:

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hallo PsychoHH,

auch das bringt leider keine Veränderung.

Trotzdem vielen Dank für deine Hilfe....

LG
 

android25

Benutzer
Mitglied seit
08. Nov 2017
Beiträge
28
Punkte für Reaktionen
1
Punkte
3
Hallo Leute,

ich habe es heute noch einmal probiert.... leider geht es nur in eine Richtung :(

ich komme per Konsole vom NAS4Free auf die Synology Diskstation...

Rich (BBCode):
 ssh root@IP-Diskstation -p 22

und auch

Rich (BBCode):
 ssh root@IP-Diskstation

gehen.... :p


andersherum kommt allerdings nachdem ich

Rich (BBCode):
ssh root@IP-NAS4Free

eingebe diese Meldung:

Rich (BBCode):
Connection closed by "IP-NAS4Free"

kann man hier den Fehler noch weiter eingrenzen? Ich komme leider nicht weiter.

Danke schon mal.

LG

Rich (BBCode):
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat