Syslog-ng not receiving remote messages on stock CentOS VM Image

I’ve set up LibreNMS using the provided CentOS VM Image. I want to be able to receive syslog messages from remote hosts into syslog-ng and subsequently into LibreNMS. I’ve exhausted several possible solutions and still do not receive remote log messages into syslog-ng (local file) and much less LibreNMS. I’ve validated the following:

–syslog-ng is running
–local loggging (system(), internal()) are working fine
–Messages are arriving on the LibreNMS IP and UDP port 514 (validated using tcpdump)
–I can use the “logger” command to generate a log item locally via the server IP and UDP port 514
–SELinux disabled
–IPTables disabled

My guess is that it’s something unusual/undocumented that is part of that LibreNMS provided image.

Config File:
@version: 3.5
@include “scl.conf”

First, set some global options.

options {
chain_hostnames(off);
flush_lines(0);
use_dns(no);
use_fqdn(no);
owner(“root”);
group(“adm”);
perm(0640);
stats_freq(0);
bad_hostname("^gconfd$");
};

########################

Sources

########################
source s_sys {
system();
internal();
};

source s_net {
network(transport(udp));
network(transport(tcp));
};

########################

Destinations

########################
destination d_librenms {
program("/opt/librenms/syslog.php" template ("$HOST||$FACILITY||$PRIORITY||$LEVEL||$TAG||$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC||$MSG||$PROGRAM\n")
template-escape(yes));
};

destination d_file {
file("/var/log/messages_syslog-ng.log");
};

########################

Log paths

########################
log {
source(s_net);
source(s_sys);
destination(d_librenms);
destination(d_file);
};

Include all config files in /etc/syslog-ng/conf.d/

@include “/etc/syslog-ng/conf.d/*.conf”

Please help!

Make sure you switch to bridged networking or port forward 514.

Murrant, hello. The VM is already in bridge mode and it’s receiving the messages, as evidenced by the tcpdump. Those messages are just not getting into the syslog-ng log destination.

Thanks for your feedback.

Please re-read the syslog docs then to make sure you didn’t miss anything: https://docs.librenms.org/Extensions/Syslog/

There is a commented logfile() or something line in syslog.php you can uncomment to log input to librenms.log. (don’t leave that enabled)