我有一些从客户端计算机到备份计算机的 SSH 登录问题。
我有一台笔记本电脑(客户端),可以通过 rsync/SSH 将数据备份到 Synology。我在网上读到了很多关于它的内容,但有时你必须用这种方式,有时又必须用另一种方式。所以我想澄清这些问题:
我必须在哪台计算机上创建密钥(私钥/公钥)。在客户端还是在备份服务器上?
我需要将哪个密钥转移到哪个服务器?
我在备份服务器上创建了一个用户“rsync”,我需要将密钥上传给该用户吗?ssh-copy-id[电子邮件保护]?
我是否还应该在客户端上创建一个新的用户以便从客户端进行备份?
我已阅读有关保护密钥的信息。
我希望备份自动运行而无需输入密码。创建密钥时是否必须输入密码?
上传此密钥后,我是否必须删除客户端或备份服务器上的密钥?如果需要,在客户端或备份服务器上删除哪个密钥?在哪里删除?
我是否需要授予密钥和文件夹权限。如果需要,在哪台计算机上使用客户端或备份?
我是否应该备份密钥以及哪个私钥或公钥。备份到 USB 记忆棒?
答案1
密钥对应该在客户端上创建,其中私人的钥匙依然存在。民众密钥已被复制到服务器,就像您对 所做的那样ssh-copy-id
。
您可以为备份创建一个新用户,但请记住,该用户至少需要对备份所需的所有文件具有读取权限,因此无论如何可能是“staff”组或“root”。
私钥只能由其所属的用户读取,例如chmod 0600 ~/.ssh/id_rsa_rsync
作为备份用户。
您不需要备份密钥,只要您无需密钥也能访问机器,就可以在必要时创建一对新密钥。但无论如何,这样做都不会有什么坏处。
您可以创建没有密码的密钥对,这样就rsync
可以使用它而不需要密码(或者您可以使用 ssh-agent 输入一次并在会话期间缓存它,但您始终需要登录到客户才能正常工作)。
如果您未设置密码,请确保不要在其他地方重复使用该密钥对(仅限备份用户),甚至更好的是,它不能用于登录备份服务器并获取 shell,而只能用于访问 rsync 守护程序。