Допустим, для выполнения работ технической поддержке нужен доступ по ssh. Как его выдать?
Создаем пользвателя:
Задаем ему пароль посложнее:
Как лишить данного пользователя sudo привилегий и удалить аккаунт?
Легко:
Создаем пользвателя:
useradd -m support
Задаем ему пароль посложнее:
passwd supportТеперь вносим запись в sudoers (он немного усложнен для запрета очевидных - но не всех - способов запуска шелла, это сделано для явного логгирования всех команд, выполняемых пользователем support):
echo 'support ALL=(ALL) NOPASSWD: ALL, !/bin/su, !/bin/bash, !/bin/dash, !/bin/sh' > /etc/sudoers.d/supportВыставляем корректные права:
chmod 440 /etc/sudoers.d/supportЧто в данный момент делает пользователь и какие команды выполняет можно посмотреть вот так:
cat /var/log/auth.log|grep sudoВыдача будет примерно следующая:
Dec 17 10:56:29 stat sudo: support : TTY=pts/2 ; PWD=/home/support ; USER=root ; COMMAND=/usr/bin/id
Dec 17 10:56:32 stat sudo: support : TTY=pts/2 ; PWD=/home/support ; USER=root ; COMMAND=/bin/ls -la
Dec 17 10:57:19 stat sudo: support : TTY=pts/2 ; PWD=/home/support ; USER=root ; COMMAND=/usr/bin/id
Как лишить данного пользователя sudo привилегий и удалить аккаунт?
Легко:
rm -f /etc/sudoers.d/supportВторая команда (killall) необходима в случае, если пользователь залогинен, иначе будет выдана ошибка: userdel: user support is currently logged in
killall -KILL -u support; userdel support
visudo ?
ReplyDeleteОн сложнее для неподготовленных пользователей, так как там нередко vi стоит редактором.
ReplyDelete