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!