[syslog-ng]Configure syslog-ng to act as a central logging
server
Ryan McCain
syslog-ng@lists.balabit.hu
Thu, 31 Mar 2005 10:27:13 -0600
I will be logging from 10 firewalls, 20 linux boxes, 2 routers and a
handful of workstations. Will this configuration file do the trick?
source s_sys { file ("/proc/kmsg" log_prefix("kernel: "));
unix_stream("/dev/log"); internal(); };
destination hosts {
file("/var/syslog/HOSTS/$HOST/$YEAR/$MONTH/$HOST-$FACILITY-$YEAR$MONTH$DAY"
owner(root) group(root) perm(0755) dir_perm(0755) create_dirs(yes));
};
destination d_cons { file("/dev/console"); };
destination d_mesg { file("/var/log/messages"); };
destination d_auth { file("/var/log/secure"); };
destination d_mail { file("/var/log/maillog"); };
destination d_spol { file("/var/log/spooler"); };
destination d_boot { file("/var/log/boot.log"); };
destination d_cron { file("/var/log/cron"); };
destination d_mlal { usertty("*"); };
filter f_filter1 { facility(kern); };
filter f_filter2 { level(info) and
not (facility(mail)
or facility(authpriv) or facility(cron)); };
filter f_filter3 { facility(authpriv); };
filter f_filter4 { facility(mail); };
filter f_filter5 { level(emerg); };
filter f_filter6 { facility(uucp) or
(facility(news) and level(crit)); };
filter f_filter7 { facility(local7); };
filter f_filter8 { facility(cron); };
#log { source(s_sys); filter(f_filter1); destination(d_cons); };
log { source(s_sys); filter(f_filter2); destination(d_mesg); };
log { source(s_sys); filter(f_filter3); destination(d_auth); };
log { source(s_sys); filter(f_filter4); destination(d_mail); };
log { source(s_sys); filter(f_filter5); destination(d_mlal); };
log { source(s_sys); filter(f_filter6); destination(d_spol); };
log { source(s_sys); filter(f_filter7); destination(d_boot); };
log { source(s_sys); filter(f_filter8); destination(d_cron); };
log { source(s_sys); destination(hosts); };
Thanks,
Ryan
>>>Bill Nash <billn@billn.net> 03/31 10:26 am >>>
You'll need a log() directive that includes the destination.
The basic path is:
Log Source -> Optional Filter -> Destination.
- billn
On Thu, 31 Mar 2005, Ryan McCain wrote:
>Bill,
>
>So I can simply add this to my conf. file (modifying owner, group,
perm,
>dir_perm of course) and it will start accepting logs from remote
>servers?
>
>
>Where do I specify which hosts to accept logs from (I'd prefer not to
>use tcp wrappers)?
>
>Thanks again,
>Ryan
>
>>>>Bill Nash <billn@billn.net> 03/31 10:15 am >>>
>On Thu, 31 Mar 2005, Ryan McCain wrote:
>
>>I'm starting to understand the syntax. However, what part of this
>>statement tells syslog-ng to create a file for each host its receiving
>>logs from?
>
>>destination hosts {
>>file("/var/syslog/HOSTS/$HOST/$YEAR/$MONTH/$HOST-$FACILITY-$YEAR$MONTH$DAY"
>
>>owner(bob) group(llamafood) perm(0755) dir_perm(0755)
>create_dirs(yes));
>
>
>If the file doesn't exist, it will be created. If the directory doesn't
>exist, you need the create_dirs directive.
>
>- billn
>