воскресенье, 7 июля 2013 г.

Возможность чтения лог файлов пользователем отличным от root

Бывают случаи, когда нужно пользователю, не обладающему привилегиями root, дать возможность читать системные логи. В случае использования rsyslog, это легко сделать, предоставив определенной группе, в которую входит пользователь, право на чтение лог файлов. Для смены группы владельца всех журналов необходимо добавить в конфигурацию /etc/rsyslog.conf следующие директивы (точно работает в rhel\centos 6, версия rsyslog 5.8.10):

$umask 0000
$FileGroup some_group
$FileCreateMode 0640

Если вы пользуетесь более новой версией rsyslog, чем в rhel\centos 6 (например, которая поставляется в fedora 18 - rsyslog 7.2.6), можно воспользоватся более изящным способом - через action. К примеру, для того, чтобы лог файл messages имел группу владельца wheel:

*.info;mail.none;authpriv.none;cron.none   action(type="omfile" FileCreateMode="0644" FileGroup="wheel" File="/var/log/messages")