我需要使用 x509 证书才能与工作服务器进行身份验证。这对于 ssh 和 scp 会话来说不是问题,但我需要设置 cron'd rsync,我不知道如何让 rsync 使用这些证书。
关于如何做到这一点有什么建议吗?
答案1
当 rsync 与 SSH 一起使用时,它将调用实际ssh
命令作为传输,并使用与 OpenSSH 本身完全相同的配置。
这意味着~/.ssh/config
将使用指定的任何密钥对或证书,以及加载到 ssh-agent 中的密钥对或证书(只要您的 cronjob 设置了正确的 SSH_AUTH_SOCK)。
如果您以前使用过带有“ssh”或“scp”的命令行选项,我强烈建议将它们转换为~/.ssh/config 参数……但仍可以使用来指定它们rsync -e
。
标准 OpenSSH 不支持 X.509 证书 - 仅支持原始公钥或特定于 OpenSSH 的证书格式 - 但一切仍然适用于您可能使用的任何“带有 X.509 的 OpenSSH”变体。