rsync daemon only accessable as root
paul at debian.org
Fri Apr 20 09:38:28 GMT 2007
On Wed 18 Apr 2007, Peter van Leuven wrote:
> path = /home/user/test
> comment = rsync test
> use chroot = yes
> gid = nobody
> uid = nobody
> read only = no
> list = yes
> auth users = user
> secrets file = /etc/rsyncd.secrets
> # Limit access from LAN
> hosts allow=127.0.0.1, <home-ip>
> hosts deny=*
[I removed all the extra empty lines, makes it a lot easier to read]
> Then I start the daemon as: sudo rsync -daemon (as user it doesn't seem to
As non-root you're not allowed to bind to port 873.
> Now when I am at home I can only access the daemon using:
> rsync -av -e "ssh -l root" user@<host-ip>::test /dest
> i.e. it will only function as root, which is undesirable. I'd like to use
> something like:
> rsync -av -e "ssh -l ssh-user" user@<host-ip>::test /dest,
> but this produces the error
If you're using :: notation together with -e ssh, then you're telling
rsync to open an ssh connection to the host, and there start a *new*
rsync "daemon" for this one-time use; see USING RSYNC-DAEMON FEATURES
VIA A REMOTE-SHELL CONNECTION in the manpage.
You should be running:
rsync -av user@<host-ip>::test /dest
unless your network prohibits connecting to the rsync daemon port (eg.
firewall somewhere along the route). If that's the case, you shouldn't
have rsync already running as a daemon (at least, for this scenario).
Note also in particular the text "spawning a single-use "daemon" server
that expects to read its config file in the home dir of the remote
user." in the manpage in the aforementioned section.
More information about the rsync