У меня очень чистая новая установка CentOS 5.3, работающая на vps, размещенном на linode. После установки новой ОС я сделал yum update
применить последние исправления. Я тогда сделал yum install sudo
чтобы установить sudo (я был удивлен, что он не установлен по умолчанию). Я отредактировал файл sudoers, и все прошло хорошо. Я вхожу в систему через ssh как обычный пользователь и использую sudo всякий раз, когда мне нужно сделать что-то, требующее прав суперпользователя. Я думаю, что это хорошая практика, потому что она дает мне понять, что я должен быть немного осторожнее при выполнении этих команд. Проблема в том, что всякий раз, когда я запускаю команду sudo, я получаю сообщение об ошибке:
audit_log_user_command (): в соединении отказано
команда выполняется, но запись о команде не регистрируется, что подтверждается:
grep sudo /var/log/messages
возвращает только одну строку, относящуюся к установке yum.
В CentOS вы должны проверить / var / log / secure, а не / var / log / messages и убедиться, что auditd запущен:
# start auditd
/etc/init.d/auditd start
# configure to start on boot
/sbin/chkconfig --level 2345 auditd on
Упомянутая ошибка связана с тем, что CentOS по умолчанию не имеет auditd
скомпилирован в ядро. Ошибка является чисто косметической, и ее можно игнорировать.
Я думаю, что можно избавиться от ошибки, скомпилировав новое ядро (> 2.6.23) и включив поддержку auditd, выбрав CONFIG_AUDIT = y. Кроме того, обновление до более новой версии sudo
может помочь, но поскольку у меня нет доступа к машинам с CentOS, YMMV.
Это не решит эту проблему, но вы должны использовать
su -
Я нахожу это менее раздражающим, чем ввод sudo перед каждой командой, и это должно быть зарегистрировано.