удаленное ведение журнала с использованием syslogd - Ubuntu 18.04.2 LTS - просто не будет отправлять

поэтому, играя с централизованным ведением журнала, я просто не могу заставить syslogd отправлять сообщения на удаленный сервер системного журнала.

фон:

Сервер системного журнала настроен и работает, протестирован с другими устройствами, отправляющими на него журналы.

сеть и сервер, и клиент находятся в одной подсети, брандмауэры на сервере отключены, из того, что я могу сказать, в Ubuntu нет брандмауэр настроен. протестировал 514 открытых на сервере от клиента и получил успешное соединение.

процесс установки / тестирования

syslogd, похоже, не существовал при моей установке, поэтому я установил его:

sudo apt-get install -y inetutils-syslogd

изменил конфигурационный файл в / etc / syslogd.conf, чтобы включить 2 строки:

*.* /home/lee/test
*.* @10.120.1.20

сохраненный и перезагруженный syslogd, отправив сигнал зависания

killall -s SIGHUP syslogd

тестирование с помощью функции регистратора:

logger "test"

вставляет строки в локальный файл, но ничего не получает к серверу.

попытался настроить tcpdump на 512 исходящих каналах, чтобы посмотреть, проходит ли что-нибудь:

tcpdump -n -s 1500 -X port 514 -w /home/lee/tcpdump.pcap

файл пуст, попытался отследить PID как таковой:

strace -s 500 -tfp 188341 -o /home/lee/strace_syslog

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

1446  10:27:52 restart_syscall(<... resuming interrupted poll ...>) = 1
1446  10:28:03 recvfrom(21, "<13>May 18 10:28:03 lee: test", 1024, 0, 0x7ffd918070e0, [110->0]) = 29
1446  10:28:03 rt_sigprocmask(SIG_BLOCK, [HUP ALRM], [], 8) = 0
1446  10:28:03 writev(22, [{iov_base="May 18 10:28:03", iov_len=15}, {iov_base=" ", iov_len=1}, {iov_base="ubuntu-docker", iov_len=13}, {iov_base=" ", iov_len=1}, {iov_base="lee: test", iov_len=9}, {iov_base="\n", iov_len=1}], 6) = 40
1446  10:28:03 writev(20, [{iov_base="May 18 10:28:03", iov_len=15}, {iov_base=" ", iov_len=1}, {iov_base="ubuntu-docker", iov_len=13}, {iov_base=" ", iov_len=1}, {iov_base="lee: test", iov_len=9}, {iov_base="\n", iov_len=1}], 6) = 40
1446  10:28:03 writev(11, [{iov_base="May 18 10:28:03", iov_len=15}, {iov_base=" ", iov_len=1}, {iov_base="ubuntu-docker", iov_len=13}, {iov_base=" ", iov_len=1}, {iov_base="lee: test", iov_len=9}, {iov_base="\n", iov_len=1}], 6) = 40
1446  10:28:03 writev(6, [{iov_base="May 18 10:28:03", iov_len=15}, {iov_base=" ", iov_len=1}, {iov_base="ubuntu-docker", iov_len=13}, {iov_base=" ", iov_len=1}, {iov_base="lee: test", iov_len=9}, {iov_base="\n", iov_len=1}], 6) = 40
1446  10:28:03 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
1446  10:28:03 poll([{fd=3, events=POLLIN|POLLPRI}, {fd=21, events=POLLIN|POLLPRI}], 2, -1) = ? ERESTART_RESTARTBLOCK (Interrupted by signal)
1446  10:28:10 --- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---
1446  10:28:10 alarm(30)                = 0
1446  10:28:10 rt_sigreturn({mask=[]})  = -1 EINTR (Interrupted system call)
1446  10:28:10 poll([{fd=3, events=POLLIN|POLLPRI}, {fd=21, events=POLLIN|POLLPRI}], 2, -1) = ? ERESTART_RESTARTBLOCK (Interrupted by signal)
1446  10:28:40 --- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---
1446  10:28:40 alarm(30)                = 0
1446  10:28:40 rt_sigreturn({mask=[]})  = -1 EINTR (Interrupted system call)

что я пропустил ???

я просто не могу заставить его выводить на удаленный хост .... из моего тестирования я уверен, что это проблема конфигурации в /etc/syslogd.conf, но я не вижу что!

1
задан 18 May 2020 в 13:29
1 ответ

Если вы хотите, чтобы ваш локальный syslogd пересылал сообщения, перезапустите его с помощью

-h, --hop
    Enable forwarding remote messages. By default syslogd will not forward
    messages it receives from remote hosts.
1
ответ дан 18 May 2020 в 11:14

Теги

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