拥有一个能够读取所有内容的“备份”用户来使用 rsnapshot 创建备份的正确方法是什么?

拥有一个能够读取所有内容的“备份”用户来使用 rsnapshot 创建备份的正确方法是什么?

我想使用 rsnapshot 将我的本地计算机以及两台远程计算机备份到便携式存储设备。我的计划是rsnaphot在本地计算机上使用,backup在远程计算机上创建一个用户,并让我的本地 rootbackup通过 ssh 公钥访问该帐户。我不想启用 root 登录,我认为这可能是一种安全功能。

那么问题来了:远程备份用户应该能够读取尽可能多的文件。我该如何实现这一点?我可以将此用户添加到每个现有组中,这样他就可以读取每个组可读的文件。但这样一来,该用户也可以写入、删除……这些文件。或者我可以将每个文件的组更改为backup或类似名称,但这当然太具侵略性,而且非常疯狂。

将本地 root 的公钥复制到远程 root 帐户并启用 root 登录是最简单的方法,对吧?我应该这么做吗?

如何正确完成此操作?

答案1

http://www.rsnapshot.org/howto/using-rsnapshot-and-ssh.html (网络档案)对我帮助很大。我最终root在远程机器上使用,并在本地机器上使用 root 权限(当然sudo是通过)。

这个想法是拥有多个密钥,并将密钥限制为某些命令。例如,我配置了我的远程主机,使其不允许root登录,但允许执行某个命令(在我的情况下,我认为它是 rsync,我不得不承认我只是validate-rsync按照链接文档中的建议使用了脚本,没有想太多)如果使用公钥进行身份验证。所以即使有人访问我的本地root帐户,无法直接登录(是的,他也许可以 rsync 损坏的文件等,还会损坏等等allowed_keys)。

目前,我认为这是可用性和安全性之间的最佳权衡。

相关内容