我正在尝试为 2 个服务器目标文件同步设置 Lsync + Rsync,我已经Rsync --daemon
在 Server01 上运行,有什么方法可以在没有 SSH 和 rsh 的情况下使用 Rsync 访问 Server01?因为我认为Rsync --daemon
已经打开了端口 873 来接受 TCP 连接,但是如果我关闭 sshd 会失败。
谢谢,
埃姆雷
当 sshd 在 Server1 上运行时,您真的连接到端口 873 吗?删除 sshd 守护程序时您会断开连接,这听起来很奇怪。我的猜测是,当 sshd 运行时,您使用该连接而不是端口 873。
无论如何,我建议检查您的防火墙设置。我会通过将 netcat 放置在服务器 1 上进行侦听,然后尝试从服务器 2 到 netcat:
Server1: nc -l -p 873
Server2: nc server1.com -p 873
我不是这个问题的专家,但简要查看手册页 [1] 应该是可行的,至少使用选项 'auth_users':“默认情况下,所有用户都可以在没有密码的情况下进行连接”:那是,您可能需要切换一些配置参数。
好吧,对于“没有 SSH 的 Rsync”部分,因为我一直在寻找它作为无需输入密码的 rsync 的一种方式,您可以使用sshpass
它来连接 Rsync,它通过为您提供密码绕过了与 shell 交互的需要(命令行或脚本)。
不过,它可能不如向服务器提供身份验证密钥那么安全。