Каждый пользователь любой ОС unix рано или поздно столкнется с командой su и sudo.
Su это команда с помощью которой вы становитесь суперпользователем (root) системы. В принципе вы можете стать любым пользователем системы и выполнять команды от чужого имени. Только надо знать пароль этих пользователей.
Sudo это команда, используя которую, вы выполняете команду как суперпользователь или как другой пользователь компьютера. Настройки программы sudo задаются в конфигурационном файле /etc/sudoers или в /usr/local/etc/sudoers в зависимости от вашей ОС. Внутри файла sudoers есть примеры как правильно использовать возможности sudo.
Но в данной статье я хотел бы рассказать о вспомогательном файле sudoers таком как suauth. Обычно данный файл не создается при установки программы sudoers. Поэтому создадим его самостоятельно, рядом с файлом, где лежит sudoers.
Ниже приведен пример содержания файла suauth
# sample /etc/suauth file
#root:mik,garry:OWNPASS
root:ALL EXCEPT GROUP wheel:DENY
garry:mik:NOPASS
Немного расшифровки по командам внутри файла.
#root:mik,garry:OWNPASS
Только пользователи mik и garry могут стать суперпользователем root и для этой цели им не надо знать пароль root. OWNPASS обозначает, что им надо будет набирать собственный пароль. Но эта команда закоментирована, так что смысловой нагрузки в этом файле она пока не несет. Переходим к следующей команде.
root:ALL EXCEPT GROUP wheel:DENY
Обозначает, что только пользователи группы wheel могут стать суперпользователем root, а остальным запрещено. Ну и надо знать пароль пользователя root. Но я замечу такую особенность, что в системе freebsd это реализовано изначально. Но в конфигурации можно же поставить и другую группу. Так что все в ваших руках.
garry:mik:NOPASS
Данная строка обозначает, что обычный непривилегированный пользователь mik может стать пользователем garry и пароль garry ему совсем знать не нужно. Данный прием можно использовать для запуска каких-нибудь процессов от системных пользователей, таких как apache или nobody.
Пример использования последней команды.
mik@gw:~$ su garry
Password authentication bypassed.
garry@gw:/home/mik$
Об остальных возможностях, что можно задавать внутри файла suauth прочитаете сами man suauth
Таким образом, используя файл suauth, можно немного обезопасить или упростить себе жизнь.