Мне нужно разрешить пользователю martinпереключаться на пользователя martin-testбез пароля
su - martin-test
Я думаю, что это можно настроить в /etc/pam.d/su. В этом файле уже есть строки, которые можно раскомментировать. Однако мне не нравится идея добавления пользователя martinв группу wheel. Я не хочу давать martinбольше привилегий, чем возможность переключиться на martin-test. Я тоже не хочу использовать sudo.
Как лучше всего это сделать, сохранив при этом martinминимальные привилегии пользователя ?
sudoтолько из-за этого (я обычно не использую sudoи мне это не особо нравится). И я думаю, использование pamболее чистого и прозрачного способа сделать это.
sudoдля чего предназначалось. Каковы же возражения, помимо того, что они обычно не используются?
pam, я бы предпочел это sudo. Если sudoэто единственная возможность, то это тоже хорошо. Мои возражения в sudoосновном идеологические: мне не нравится идея, когда пользователь выполняет администрирование sudo foo. Когда мне нужно сделать администрирование, я захожу как root. В противном случае я войду в систему как пользователь, эти две разные роли не должны смешиваться. Также у меня уже установлена pamинфраструктура. Я не хочу устанавливать другую setuidпрограмму, которая может содержать ошибки безопасности.
sudo fooдля конкретных команд. Судо имеет, sudo -sкоторый запустит оболочку. sudo - очень распространенная утилита, означающая, что ее безопасность была тщательно проверена, гораздо больше, чем какая-либо хитрость с использованием pam. Я также утверждаю, что получение корневой оболочки для задач гораздо более небезопасно, чем запуск определенных команд. Когда вы запускаете оболочку, вы запускаете все как root. Если какая-либо из этих вещей (например, простая ls) имеет уязвимость безопасности, то вы только что открыли дыру в безопасности.
sudoнапримерsudo -u martin-test -i. Есть ли причина, о которой вы спрашиваете конкретноsu?