Назад | Перейти на главную страницу

Пользователь Windows rsync - в доступе отказано

У нас есть сервер Rsync, установленный на одном из наших файловых серверов, и мы загружаем с него ночные резервные копии на машину под управлением Linux, которая выполняет архивирование и ротацию резервных копий.

Недавно я заметил, что пользователь Rsync не может получить доступ к определенным файлам на сервере. Служба работает от имени локального пользователя, который входит в группу операторов резервного копирования. Я думал, что любой в этой группе получил полный доступ ко всему, однако недавние результаты говорят мне, что это не так.

Есть ли способ получить полный доступ к rsync? Смена владельца файла невозможна. Добавление разрешений вызывает проблему, если это не может быть выполнено для всех файлов без влияет на другие существующие разрешения.

Ваше понимание того, как «Операторы резервного копирования» взаимодействуют с разрешениями NTFS, ошибочно. Члены группы «Операторы резервного копирования» жестяная банка чтение / запись в обход разрешений, но только через определенные функции резервного копирования API что rsync не использует.

Rsync использует «обычные» функции API файловой системы, поэтому пользователь rsync работает, поскольку ему потребуется доступ для чтения каждого файла, для которого вы собираетесь создать резервную копию. Нет никакого способа обойти это без изменения кода в rsync.

В зависимости от того, как вы спроектировали свои иерархии разрешений, вы можете добавить еще один ACE к своим разрешениям для вашего пользователя rsync (в идеале, группа, членом которой является пользователь rsync - возможно, единственный член - а не пользователь ), чтобы читать файлы. Если вы заблокировали наследование разрешений (которое Microsoft, похоже, не слишком сильно препятствует именно по этой причине), то у вас беспорядок, и вам придется предоставлять это разрешение в каждом корне наследования разрешений по иерархии. .

Если в ваших существующих иерархиях разрешений уже есть подходящая группа (например, «Администраторы»), вы можете воспользоваться соблазнительным сокращением и добавить пользователя rsync в группу «Администраторы». Очевидно, что ошибка в rsync, которая позволяет непривилегированному пользователю выполнять код в контексте пользователя rsync, будет очень и очень плохой в этом случае, поэтому тщательно взвесьте риски.