能跑rsync
过去吗scp
。
涉及原因scp
:使用身份验证和加密。
rsync
不使用over 的原因ssh
:没有提供对远程服务器的完整 shell 访问权限。为了安全起见,应该只能写入指定的文件夹。
/etc/ssh/sshd_config
附录:
Match User restricted-user
ChrootDirectory /home/backup-production
ForceCommand internal-sftp
答案1
是否可以通过 scp 运行 rsync。
否:scp
是运行在ssh
.
涉及scp的原因:使用身份验证和加密。
不...这是由ssh
传输层实现的
不通过 ssh 使用 rsync 的原因:未提供对远程服务器的完整 shell 访问权限
ssh
这可以通过配置一个chroot
包含rsync
二进制文件、一个简单的 shell(dash
也许)及其必要的支持库的受限目录()来实现。
答案2
您可以设置同步在远程服务器上作为 rsync 连接的接收者。它的配置文件完全确定文件系统的哪些部分可以由哪些用户和机器写入或读取。这就是 rsync 手册页::
在地址而不是 中使用时所指的内容:
。
然而,它是通过未加密的连接(使用密码进行身份验证),尽管这在内部网络中使用通常不是问题。
但您也可以设置即时同步它通过 ssh 工作。您在服务器上创建一个用户,并在其~/.ssh/authorized_keys
文件中指定一个条目,该条目指定在连接时运行的命令是rsync --server --daemon --config=file .
,即rsyncd
使用本地配置文件。