如何配置和使用 rsyncd?

如何配置和使用 rsyncd?

我有一个服务器配置为作为守护程序 /etc/rsyncd.conf 文件运行 rsync:

log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

[documents]
   path = /home/user/work
   comment = User's Documents folder
   uid = user
   gid = user
   read only = no
   auth users = user
   secrets file = /etc/rsyncd.secrets

/etc/rsyncd.secrets 文件:

user:more

在客户端我运行:

rsync my_file user@ip_address::documents

我收到以下错误:

@ERROR: auth failed on module documents
rsync error: error starting client-server protocol (code 5) at main.c(1524) [sender=3.0.7]

在服务器上,我有一个名为 user 的 root 用户,但密码不同。在客户端,我尝试了两个密码,结果相同。

我做错了什么?

答案1

我遇到了同样的错误,当我查看日志文件时,我收到以下消息:

机密文件不得被其他人访问

因此您可能必须更改该文件的权限。

答案2

查看 /var/log/rsyncd.log。也许你的“/etc/rsyncd.secrets”文件中的权限太宽。

答案3

schemanen 的回答是正确的,但是您可以选择在 rsyncd.conf 中禁用严格模式,而无需删除其他用户对 secrets 文件的读取权限。

在您的 /etc/rsyncd.conf 中添加:

strict modes = false

最后重新启动 rsync 守护进程。

答案4

问题可能在于密码前面的空格:

  • 错误的:user: password

  • 正确的:user:password

正如其他人所说,您还必须确保权限设置正确(chmod o-rwx),但这是一个不同的问题。

相关内容