Hallo liebe Debian-Fans,
hoffe, dass unter euch genügend Shellexperten sind, die mir (erst seit kurzem Linux-Admin) vielleicht
helfen können, diese Nuss zu knacken :
Zwei Rechner sollen per rsync über ssh-Tunnel ein regelmäßiges backup erhalten.
Der Rechner, der rsync ausführt, (nennen wir ihn mal samba), steht hinter einer IPCop-Firewall.
Das rsync gelingt mit einem der Rechner, der im selben Subnet, ebenfalls hinter der Firewall, steht.
Es schlägt fehl für einen extern, beim Hoster, stehenden www-Server.
Kommando in /etc/crontab auf samba lautet.
rsync -avz --delete-after --timeout=300 -e "ssh -p 50222 -i $UsersKeyfile" ssh-rsync@$RHOST:$RPATH $LPATH
Remote User ssh-rsync ist auf den Zielsystemen chrooted angelegt (scponlyc).
Lokal ausführender User ist nicht-privilegiert.
Die Fehlermeldung lautet :
"connection unexpectedly closed. rsync error : error in rsync protocol data stream (code 12) at io.c(454) [receiver=2.6.9]"
- Das ist alles, auch bei erhöhter verbosity (rsync -vvv, ssh -vvv) wird das Progrämmchen nicht auskunftsfreudiger.
Ein funktionierender TLS-Handshake ist ansonsten zu beobachten, Schlüsselaustausch funktioniert also, und die
Verbindung wird anscheinend hergestellt.
Allerdings ist der gehostete Rechner nur über Port 50022 ssh-erreichbar, es kommt also im Aufruf die Portangabe
hinzu. (s.o.: -p 50022 ) - Sonst alles gleich.
Welche Möglichkeiten seht ihr, woran das hier scheitern mag ?
Bin mit meinem Latein allmählich leider am Ende...
Herzlich grüßend und sich auf weiterhelfende Tipps freuend,
== Alexander ==
rsync über ssh schlägt fehl
-
- Beiträge: 2
- Registriert: 10.06.2008 18:33:10
Re: rsync über ssh schlägt fehl
Was für eine überwältigende Resonanz....
Aber egal, habe das Problem lösen können, auch wenn ich da ein Zugeständnis an die ursprünglich gewünschte, maximale Sicherheit, machen musste :
Der remote user war in ein sogenanntes chroot-jail gesperrt, mittels scponlyc, das liess alle verbindungsversuche abprallen. Möglicherweise nur Fehlkonfiguration, aber da nach config-Parametern zu suchen, war mir erstmal zu dünnes Eis, daher habe ich den User der Einfachheit halber auf eine gewöhnliche /bin/bash umgestellt (vipw).
- Siehe da, funktioniert !
Nun gibt es zu scponly noch die Alternative rssh, mit der auch ein chroot-jail bzw eine restricted shell aufgemacht wird, was die Sicherheit nochmal erhöhen würde.
Kann einer von Euch das einschätzen, ob es Sinn machen würde mit rssh, und mir Tipps zur Konfiguration geben ?
Danke!
Grüße,
== Alexander ==
Aber egal, habe das Problem lösen können, auch wenn ich da ein Zugeständnis an die ursprünglich gewünschte, maximale Sicherheit, machen musste :
Der remote user war in ein sogenanntes chroot-jail gesperrt, mittels scponlyc, das liess alle verbindungsversuche abprallen. Möglicherweise nur Fehlkonfiguration, aber da nach config-Parametern zu suchen, war mir erstmal zu dünnes Eis, daher habe ich den User der Einfachheit halber auf eine gewöhnliche /bin/bash umgestellt (vipw).
- Siehe da, funktioniert !
Nun gibt es zu scponly noch die Alternative rssh, mit der auch ein chroot-jail bzw eine restricted shell aufgemacht wird, was die Sicherheit nochmal erhöhen würde.
Kann einer von Euch das einschätzen, ob es Sinn machen würde mit rssh, und mir Tipps zur Konfiguration geben ?
Danke!
Grüße,
== Alexander ==
Re: rsync über ssh schlägt fehl
Ich hatte deinen Beitrag gelesen und mir auch dazu Gedanken gemacht.
Ich denke mir dass die Synchronisierung per "rsync über ssh" mehr als das reine SFTP-Subsystem benötigt. Also wirst du evtl. an der Sicherheit ein paar Einschränkungen vornehmen müssen.
Vielleicht kannst du dem Benutzer auch einfach nur als Shell "/bin/false" geben und dann "ssh" mit der Option "-N" (no shell) nutzen. Habe ich aber auch in Verbindung mit "rsync" noch nie ausprobiert.
Genau das hatte ich auch gedacht. Da ich es jedoch selbst in der Form nicht nutze wollte ich es nicht schreiben.mittels scponlyc, das liess alle verbindungsversuche abprallen.
Ich denke mir dass die Synchronisierung per "rsync über ssh" mehr als das reine SFTP-Subsystem benötigt. Also wirst du evtl. an der Sicherheit ein paar Einschränkungen vornehmen müssen.
Vielleicht kannst du dem Benutzer auch einfach nur als Shell "/bin/false" geben und dann "ssh" mit der Option "-N" (no shell) nutzen. Habe ich aber auch in Verbindung mit "rsync" noch nie ausprobiert.
-
- Beiträge: 260
- Registriert: 04.12.2006 11:37:59
Re: rsync über ssh schlägt fehl
Hallo,
ich bin heute auf den gleichen Fehler gestoßen.
scponly hat die Pakete abgelehnt, da rsync aus Sicherheitsgründen als Configure Parameter rausgflogen ist.
http://nvd.nist.gov/nvd.cfm?cvename=CVE-2007-6350
Du kannst Dir das Paket aber natürlich selbst übersetzen (dann aber nicht die Version 4.6)
MfG
ich bin heute auf den gleichen Fehler gestoßen.
scponly hat die Pakete abgelehnt, da rsync aus Sicherheitsgründen als Configure Parameter rausgflogen ist.
http://nvd.nist.gov/nvd.cfm?cvename=CVE-2007-6350
Du kannst Dir das Paket aber natürlich selbst übersetzen (dann aber nicht die Version 4.6)
MfG
Re: rsync über ssh schlägt fehl
rsync braucht auf dem Zielsystem entweder einen laufenden rsyncd oder das rsync-Programm an bekannter Position.
Für rsync-via-ssh greift Letzeres.
Dein Jail muß einen ssh-Login erlauben und rsync und alle für rsync notwendigen Libraries enthalten, eventuell auch noch 'n paar Kleinigkeiten, die mir jetzt nicht so spontan einfallen.
Die Manpages zu rsync und rsyncd.conf sind recht erhellend, die Option "--rsync-path=..." in Ersterer könnte Dich interessieren...
Für rsync-via-ssh greift Letzeres.
Dein Jail muß einen ssh-Login erlauben und rsync und alle für rsync notwendigen Libraries enthalten, eventuell auch noch 'n paar Kleinigkeiten, die mir jetzt nicht so spontan einfallen.
Die Manpages zu rsync und rsyncd.conf sind recht erhellend, die Option "--rsync-path=..." in Ersterer könnte Dich interessieren...
-
- Beiträge: 260
- Registriert: 04.12.2006 11:37:59
Re: rsync über ssh schlägt fehl
Hallo,
falls die Antwort für mich war, habe ich mich vielleicht etwas falsch ausgedrückt
Ich bin heute auf das gleiche Problem gestoßen, habe aber den Grund und eine Lösung gefunden.
In dem folgenden Link ist eine Installationsbeschreibung für scsponly, die ohne rsync funktioniert.
http://sublimation.org/scponly/wiki/index.php/Install
Damit auch rsync funktioniert, muss eine andere scponly Version genommen werden.
Die Version von etch (4.6) unterstützt unter anderem kein rsync mehr.
Man könnte sie natürlich auch aus den etch sourcen kompilieren, aber sie haben den enstprechenden Configure Parameter ja nicht ohne Grund entfernt (siehe alten Post).
Ich habe mir dementsprechend einen neuen Sourcecode besorgt und scponly mit den enstprechenden Configure Parametern selbst kompiliert.
MfG
falls die Antwort für mich war, habe ich mich vielleicht etwas falsch ausgedrückt
Ich bin heute auf das gleiche Problem gestoßen, habe aber den Grund und eine Lösung gefunden.
In dem folgenden Link ist eine Installationsbeschreibung für scsponly, die ohne rsync funktioniert.
http://sublimation.org/scponly/wiki/index.php/Install
Damit auch rsync funktioniert, muss eine andere scponly Version genommen werden.
Die Version von etch (4.6) unterstützt unter anderem kein rsync mehr.
Man könnte sie natürlich auch aus den etch sourcen kompilieren, aber sie haben den enstprechenden Configure Parameter ja nicht ohne Grund entfernt (siehe alten Post).
Ich habe mir dementsprechend einen neuen Sourcecode besorgt und scponly mit den enstprechenden Configure Parametern selbst kompiliert.
MfG