Формат сообщения системного журнала & syslog-ng

a) Прекратите использовать старый unix acroread , поскольку он, вероятно, не видел обновлений безопасности годами или б) использовать уловку LD_PRELOAD для подделки открытия файла passwd или в) вручную добавить необходимые учетные записи пользователей в локальный файл passwd .

Мне пришлось установить его на LDAP-машины, и он не работает, и рылся в файле passwd :

$ strace -e trace=file -o ugh acroread

(acroread:17602): GLib-WARNING **: getpwuid_r(): failed due to unknown user id (1234)
...
$ grep passwd ugh
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3

Итак, одним «исправлением» действительно было добавление пользовательских записей в файл passwd .

0
28.03.2018, 02:33
2 ответа

Я точно не знаю, что такое syslog -ng, но я предполагаю, что он также использует эвристический разбор устаревших сообщений syslog, точно так же, как rsyslog (с другой эвристикой, я думаю ).

Следует отметить, что показанный формат сообщения является странным. RFC3164 описывает то, что обычно можно увидеть на проводе, а второй формат здесь очень далек от того, что там описано. Если возможно, лучшим решением будет попросить отправителя исправить формат, чтобы он больше соответствовал стандартам.

1
28.01.2020, 02:32

Да, оба ваших сообщения похожи, но не совсем соответствуют формату сообщения системного журнала, описанному в RFC3164. Для получения дополнительной информации см. эту и следующие страницы в документации syslog -ng . syslog -ng также пытается разобрать эти неверные сообщения, но это может не сработать. Вы можете попробовать следующее:

ХТХ, Роберт

1
28.01.2020, 02:32

Теги

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