问题仍然要求使用 sudo 通过 ssh 进行 rsync 验证

问题仍然要求使用 sudo 通过 ssh 进行 rsync 验证

我想使用 rsync 同步 2 台服务器。操作系统是 Ubuntu 16.04,我在两台服务器上
使用名为此处的用户,syncuser
该用户位于组中sudo

我把(在/etc/sudoers两台服务器上)

syncuser ALL=NOPASSWD: /usr/bin/rsync 

然后从本地

ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub (remote server)

我可以在没有凭据的情况下检查 ssh 连接,
也可以在没有凭据的情况下检查 sudo rsync,
所以现在我从本地运行

sudo rsync -avz -e "ssh" --rsync-path="sudo rsync" /home/data/ syncuser@remoteserver:/home/data/

并且....现在提示输入 syncuser@remoteserver 的密码!

我不认为我忘记了什么

答案1

你在跑步:

sudo rsync -e "ssh"

ssh从帐户(在运行命令之前root使用的帐户)而不是帐户(可以访问远程服务器的帐户)执行sudorsyncsyncuserssh

为了解决该问题,您可以允许root@local-host访问syncuser@remote-host(例如使用ssh-copy-id)?

相关内容