Rsyslog не устанавливает права на чтение и запись для группы и для всех

Rsyslog игнорирует права чтения и записи, установленные с помощью fileCreateMode для группы и всех.

Я настроил службу для запуска моего приложения узла как такового:

...
[Service]
WorkingDirectory=/opt/demo/app
User=appuser
Type=simple
ExecStart=/usr/bin/node myapp.js demo
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=myapp
...

Затем я устанавливаю файл myapp.conf в /etc/rsyslog.d/ следующим образом

if ($programname == 'myapp') then {
    action(
        type="omfile"
        File="/opt/demo/app/app.log"
        fileCreateMode="0640"
        fileOwner="appuser"
        fileGroup="mygroup"
    )
    stop
}

Файл журнала создается с правильным пользователем и группа, но с разрешениями 0600 вместо 0640.

Если я изменю fileCreateMode на 0777, то файл будет создан с 0711.

Я использую rsyslog.conf по умолчанию, версия rsyslog - 8.24.0-41, ОС - CentOS 7.7

rsyslogd -N 1 не вызывает ошибок

0
задан 18 September 2019 в 21:55
1 ответ

Если ваш rsyslogd запускается systemd, то ваше определение службы, /usr/lib/systemd/system/rsyslog.service, вероятно, содержит ограничение UMask:

UMask=0066

Это нарушает любую конфигурацию в rsyslogd.conf, относящийся к маскам и режимам.

2
ответ дан 28 July 2020 в 14:11

Теги

Похожие вопросы