Записать команду "date -s"

Я знаю что date -s <STRING> команда устанавливает время, описываемое строкой STRING,

Что я хочу, чтобы войти в вышеупомянутую команду всякий раз, когда она используется, чтобы установить время в файл /tmp/log/user.log,

В моем дистрибутиве Linux ведение журнала выполняется syslog-ng, У меня уже есть некоторые журналы, входящие в /tmp/log/user.log,

Это содержимое /etc/syslog-ng/syslog-ng.conf в моей системе для входа в систему. /tmp/log/user.log

destination d_notice  { file("/tmp/log/user.log");};

filter f_filter10   { level(notice) and not facility(mail,authpriv,cron); };

log { source(s_sys); filter(f_filter10); destination(d_notice); };

Что мне делать, чтобы date -s команда также вошла в /tmp/log/user.log

1 ответ

Изменения даты не регистрируются по умолчанию, по крайней мере, в Debian.

Самый простой вариант - заменить / bin / date на оболочку, которая печатает сообщение журнала, используя logger затем вызывает реальный / bin / date исполняемый файл, например

mv /bin/date /bin/date.real
cat << 'EOF' >/bin/date
#!/bin/bash
logger -p user.notice "date run by $UID: $*"
/bin/date.real
EOF
chmod +x /bin/date

Кроме этого, я знаю, что http://grsecurity.net/ позволяет регистрировать любые изменения системного времени. Это потребует компиляции собственного ядра.

Другие вопросы по тегам