我们在我们的一个文件服务器上安装了 Rsync 服务器,我们将每晚的备份从它提取到基于 linux 的机器上,该机器执行归档和备份轮换工作。
最近我注意到 Rsync 用户无法访问服务器上的某些文件。该服务以本地用户身份运行,该用户是备份操作员组的一部分。我原以为该组中的任何人都可以完全访问所有内容,但最近的结果告诉我事实并非如此。
无论如何,这是否可以获得 rsync 完全访问权限?更改文件所有权不是一种选择。添加权限会发出一个选项,除非可以对所有文件执行此操作而不影响其他现有权限。
我们在我们的一个文件服务器上安装了 Rsync 服务器,我们将每晚的备份从它提取到基于 linux 的机器上,该机器执行归档和备份轮换工作。
最近我注意到 Rsync 用户无法访问服务器上的某些文件。该服务以本地用户身份运行,该用户是备份操作员组的一部分。我原以为该组中的任何人都可以完全访问所有内容,但最近的结果告诉我事实并非如此。
无论如何,这是否可以获得 rsync 完全访问权限?更改文件所有权不是一种选择。添加权限会发出一个选项,除非可以对所有文件执行此操作而不影响其他现有权限。
您对“备份操作员”如何与 NTFS 权限交互的理解存在缺陷。“Backup Operators”组的成员可以读取/写入绕过权限,但只能通过rsync 未使用的特定备份 API 功能。
Rsync 使用“普通”文件系统 API 函数,因此用户 rsync 运行时必须有权读取您打算备份的每个文件。如果不更改 rsync 中的代码,则无法绕过它。
根据您构建权限层次结构的方式,您可能能够为您的 rsync 用户(理想情况下,rsync 用户所属的组——也许是唯一的成员——而不是用户)的权限添加另一个 ACE ) 来读取文件。如果您已经阻止了权限继承(Microsoft 似乎并没有因为这种原因而强烈反对),那么您就会一团糟,您必须在层次结构的每个权限继承根处授予该权限.
如果您现有的权限层次结构已经包含一个合适的组(例如,“Administrators”),您可以采用将 rsync 用户添加到“Administrators”组的诱人快捷方式。显然,rsync 中的错误允许非特权用户在 rsync 用户的上下文中执行代码将非常非常糟糕,因此请仔细权衡风险。