/usr/home

just some random thoughts

rsync über ssh mit authorized_keys

Zuerst muss mit ssh-copy-id der Schlüssel des Clients auf dem Server zugelassen werden. Nun darf der natürlich erstmal alles. Bevor wir das beschränken können, müssen wir unser gewünschtes rsync Kommando einmal mit der ssh Option -v ausführen.

rsync -av --exclude='Data' --delete --progress -e 'ssh -v' bart:/proj.stand/ /data/

Die zeigt uns, was auf der anderen Seite passiert:

debug1: Sending command: rsync --server --sender -vlogDtpre.iLs . /proj.stand/

Und genau auf dieses Kommando schränken wir den Zugriff per ssh (.ssh/authorized_keys) nun ein.

command="rsync --server --sender -vlogDtpre.iLs . /proj.stand/CasperShare/",from="lisa.local",no-agent- forwarding,no-port-forwarding,no-user-rc,no-X11-forwarding ssh-rsa AAAA...

Es kann auch nicht schaden, mit from= nur den gewünschten Client Host festzumachen. Wichtig: das alles muss in einer Zeile stehen.

Wenn alles läuft können wir noch die -v Option aus dem ssh Kommando entfernen.