
Есть ли элегантный способ регистрировать каждую команду, отправленную во всех оболочках на машине? Это в контексте редко используемого сервера Ubuntu, единственным пользователем которого я являюсь. (Есть несколько учетных записей пользователей, используемых автоматизированными системами.)
Мне бы хотелось, чтобы это было ненавязчиво и не требовало больших затрат, поэтому я был бы рад, если бы существовал простой метод, включающий что-то вроде script
.
решение1
С незапамятных времен (фактически с тех времен, когда людям приходилось платить реальные деньги за каждый использованный ими компьютерный цикл) в Unix и его клонах была acct
встроена система под названием Process Accounting (Учет процессов). Она позволяла системным администраторам точно знать, чем занимаются их пользователи, и выставлять им соответствующие счета.
Эти acct
возможности существуют в большинстве систем Unix и Linux и по сей день.
Этот сайт:http://www.cyberciti.biz/tips/howto-log-user-activity-using-process-accounting.htmlрасскажет вам, как его включить.
решение2
Вы могли бы использоватьСнупи.
Его очень просто установить и удалить (не требуется модуль ядра или исправление). Обратите внимание, что это не является надлежащим решением для аудита и его можно легко обойти.
Раскрытие информации: в настоящее время я являюсь ответственным за поддержку Snoopy.
решение3
Вот очень хороший и быстрыйспособ регистрации всех команд оболочки:
Шаг 1:
Откройте файл /etc/bashrc с помощью вашего любимого текстового редактора и добавьте в конец следующую строку:
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
Шаг 2:
Настройте syslogger на запись local6 в файл журнала, добавив следующую строку в файл /etc/syslog.conf:
local6.* /var/log/cmdlog.log
решение4
Вы можете использоватьсудошкак оболочка оболочки. Он включает автоматическое ведение журнала всего, что вы делаете, и может воспроизводить файлы журнала.Более подробную информацию можно найти на веб-сайте..