Monday, 17 December 2012

Как создать пользователя с sudo на Debian 6 Squeeze?

Допустим, для выполнения работ технической поддержке нужен доступ по ssh. Как его выдать?

Создаем пользвателя:
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 -KILL -u support; userdel support
Вторая команда (killall) необходима в случае, если пользователь залогинен, иначе будет выдана ошибка: userdel: user support is currently logged in

2 comments:

  1. Он сложнее для неподготовленных пользователей, так как там нередко vi стоит редактором.

    ReplyDelete

Note: only a member of this blog may post a comment.