Я пытаюсь настроить клиент-сервер rsyslog для прослушивания tcp-сообщений с портом, отличным от 514, но это не работает. Только при использовании 514 он получает сообщения. I Я использую виртуальную машину EC2.
input(type="imtcp" port="20514" ruleset="test")
ruleset(name="test") {
action(type="omfile" file="/var/log/test")
}
Я открываю все порты для tcp (с помощью группы безопасности) и запускаю тесты как с помощью утилиты nc (управление отправкой и получением сообщений tcp), так и gnsutls (gnutls-serv и gnutls-cli и это успешно завершили рукопожатие).
nc 10.0.0.51 20515 # client
nc -l 20515 # server
sudo gnutls-cli -d 5 10.0.0.51 -p 20514 --x509cafile="/etc/rsyslog.d/ca.pem" --x509keyfile="/etc/rsyslog.d/client-key.pem" --x509certfile="/etc/rsyslog.d/client-cert.pem"
sudo gnutls-serv --priority=NORMAL -p 20514 --x509cafile="/etc/rsyslog.d/ca.pem" --x509keyfile="/etc/rsyslog.d/server-key.pem" --x509certfile="/etc/rsyslog.d/server-cert.pem"
Итак, порты открыты, Почему может случиться так, что rsyslog на EC2 не может прослушивать порт, отличный от 514?
Я провел полный тест AWS (локальные виртуальные машины), и он работает без сбоев
Мне удалось решить вопрос следующим образом:
Проблема была связана с Селинуксом. Должны были решить его, например. sudo semanage port -a -t syslogd_port_t -p tcp 20514