Создать пользователя с правами только на чтение для хранилища данных, но с доступом по SSH
Я пишу сценарий задания резервного копирования, в котором удаленный компьютер подключается к хосту ESXi 5 и выполняет SCP для копирования файлов в другое хранилище данных на этом хосте.
В качестве меры предосторожности (поскольку каждый скрипт, который может работать неправильно, будет работать неправильно), я хочу, чтобы этот скрипт не мог удалять / перемещать /rm файлы в одном хранилище данных.
Можно ли создать пользователя, который имеет разрешение READONLY для одного хранилища данных, а RW - для другого?
1 ответ
Я бы сказал, не делайте этого непосредственно на хосте. SSH-интерфейс ESXi на самом деле не предназначен для такого рода вещей, и если оставить службу и оболочку включенной, на клиентах всегда будут появляться сигналы тревоги и предупреждения. Да, эти тревоги могут быть отключены, но они есть по причине.
Подход, который я выбрал бы, зависит от системы, из которой вы планируете делать эту резервную копию.
Если это Windows, я бы написал несколько скриптов PowerCLI и получил бы доступ к серверу таким образом. PowerCLI имеет команды, созданные для такого рода вещей, и может выполнять практически все, что вы только можете придумать.
Если это Linux, то есть модули Perl, которые должны довольно хорошо разрешать одно и то же, с небольшим количеством взлома.
Некоторые из них предполагают, что это не просто отдельный автономный хост ESXi, и что вы можете использовать vCenter, чтобы предоставить конкретному пользователю некоторые детальные разрешения для выполнения только этих задач.
Я не совсем помню, какая модель разрешений настроена на автономных хостах, но я подозреваю, что вы можете создать пользователя и делать то же самое. По крайней мере, в вашем окне ESXi не будет (возможно) запущенного сценария оболочки.