rsync:启动客户端-服务器协议时出错

rsync:启动客户端-服务器协议时出错

我在两个系统上都运行了 rsyncd 。当我尝试检查连接时,出现以下错误:

来自主机2:

user@host2#rsync username@host1::share
password: [password] 

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

在主机1上:

我有以下配置

vim /etc/rsyncd.conf

max connections = 2
log file = /var/log/rsync.log
timeout = 300

[share]
comment = Public Share
path = /home/subhransu
read only = no
list = yes
uid = backuppc
gid = backuppc
auth users = backuppc
secrets file = /etc/rsyncd.secrets

在主机1上

tail /var/log/rsync.log

2013/04/09 03:47:15 [29179] forward name lookup for cust-198-154-126-179.corexchange.com failed: No address associated with hostname
2013/04/09 03:47:15 [29179] connect from UNKNOWN (198.154.126.179)
2013/04/09 03:47:18 [29179] auth failed on module share from unknown (198.154.126.179): unauthorized user

注意:rsyncd.secrets已正确user:passwd,无防火墙问题。

答案1

我相信服务器配置文件中的uid和参数是用于权限分离的。gid

auth users配置中的参数明确拒绝除“”之外的所有其他用户名backuppc

因此,您需要在“Host1”上的 rsyncd.secrets 中以及“Host2”上的命令行中使用“backuppc”。

尝试auth users从 中删除该语句/etc/rsyncd.conf,或者仔细检查您确实是backuppcHost2 上的用户(不是“用户”或“用户名”,如示例“来自 host2:”)。

排除故障时,还可以尝试添加strict modes = false到 rsyncd 配置文件中。

答案2

0

我在 CentOS 7 上遇到了同样的问题。我浏览了很多文章、论坛,但找不到解决方案。问题出在 SElinux 上。在服务器端禁用 SElinux 有效。检查服务器端的 SELinux 状态(使用 rysnc 从其中提取数据)用于检查 SELinux 状态并禁用它的命令

$getenforce

强制执行 ## 这意味着 SElinux 已启用

$设置力量 0

$getenforce

宽容的

现在尝试在客户端运行 rsync 命令,它对我有用。一切顺利!

答案3

还要检查 rsyncd.conf 是否设置了正确的权限:

chmod 640 /etc/rsyncd.cond

相关内容