- Створіть нові окремі
mybackupоблікові записи на клієнті та сервері
- Заблокуйте паролі
sudo passwd -l mybackupдля цих облікових записів, щоб запобігти прямому входу
- Дозволити через
sudoці нові облікові записи , щоб отримати дуже специфічне /usr/bin/rsync/ --some-long-command /from/here /to/thereкоманду як корінь з NOPASSWD:в /etc/sudoersвикористанніsudo visudo
- Створіть нові незахищені SSH ключі для локального віддаленого хоста за допомогою
sudo -u mybackup ssh-keygen
- Додати
sudo -u crontab -eна тому чи іншому кінці, щоб запустити пульт, rsyncвикористовуючи sshклавіші як транспорт
Таким чином, єдиною командою, яку можна запустити як root, є те, що ви явно дозволили, і єдиним віддаленим користувачем, який може її активувати, є власник іншої половини встановленого ключа ssh, оскільки через нього пароль також заблокований може бути лише хтось із судо-доступом до себе, або створений вами crontab.