[syslog-ng] syslog-ng Digest, Vol 92, Issue 18
Jose Pedro Oliveira
jpo at di.uminho.pt
Thu Dec 20 15:53:04 CET 2012
On 2012-12-20 14:19, Frank Scalzo wrote:
>> Message: 12
>
>> Subject: Re: [syslog-ng] having an issue with syslog and SElinux
>>
>>
>> On 2012-12-18 14:40, Frank Scalzo wrote:
>>> kernel: : type=1400 audit(1355841452.964:21866): avc: denied { fowner
>>> } for pid=861 comm="syslog-ng" capability=3
>>> scontext=system_u:system_r:syslogd_t:s0
>>> tcontext=system_u:system_r:syslogd_t:s0 tclass=capability
>>>
>>>
>>> How do i fix this without disabling SElinux
>>
>> Which Linux distribution are you using? And which versions of syslog-ng
>> and selinux? A copy of your syslog-ng configuration file would
>> also be helpful.
>
> Im running the following
>
> Red Hat Enterprise Linux Server release 6.3 (Santiago)
> selinux-3.7.19-187
> syslog-ng 3.2.5
> Installer-Version: 3.2.5
> Revision: ssh+git://bazsi@git.balabit//var/scm/git/syslog-ng/syslog-ng-ose--mainline--3.2#master#9d4bea28198bd731df1a61e980a2af5b88d81116
> Compile-Date: Jan 15 2012 19:47:30
> Enable-Threads: on
> Enable-Debug: off
> Enable-GProf: off
> Enable-Memtrace: off
> Enable-Sun-STREAMS: off
> Enable-IPv6: on
> Enable-Spoof-Source: on
> Enable-TCP-Wrapper: on
> Enable-SSL: off
> Enable-SQL: on
> Enable-Linux-Caps: off
> Enable-Pcre: on
> Enable-Pacct: off
>
>
> conf below:
>
> @version:3.2
>
> # syslog-ng configuration file.
> #
> # This should behave pretty much like the original syslog on RedHat. But
> # it could be configured a lot smarter.
> #
> # See syslog-ng(8) and syslog-ng.conf(5) for more information.
> #
>
> options {
> flush_lines(100);
> log_fetch_limit(100);
> log_iw_size(100);
> log_fifo_size(1000);
> time_reopen (10);
> log_fifo_size (1000);
> use_dns (yes);
> use_fqdn (yes);
> create_dirs (yes);
> keep_hostname (yes);
> };
>
> source s_sys {
> file ("/proc/kmsg" program_override("kernel: "));
> unix-stream ("/dev/log");
> internal();
> # udp(ip(0.0.0.0) port(514));
> };
>
> 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" flush_lines(10)); };
> destination d_spol { file("/var/log/spooler"); };
> destination d_boot { file("/var/log/boot.log"); };
> destination d_cron { file("/var/log/cron"); };
> destination d_kern { file("/var/log/kern"); };
> destination d_mlal { usertty("*"); };
>
> filter f_kernel { facility(kern); };
> filter f_default { level(info..emerg) and
> not (facility(mail)
> or facility(authpriv)
> or facility(cron)); };
> filter f_auth { facility(authpriv); };
> filter f_mail { facility(mail); };
> filter f_emergency { level(emerg); };
> filter f_news { facility(uucp) or
> (facility(news)
> and level(crit..emerg)); };
> filter f_boot { facility(local7); };
> filter f_cron { facility(cron); };
>
> #log { source(s_sys); filter(f_kernel); destination(d_cons); };
> log { source(s_sys); filter(f_kernel); destination(d_kern); };
> log { source(s_sys); filter(f_default); destination(d_mesg); };
> log { source(s_sys); filter(f_auth); destination(d_auth); };
> log { source(s_sys); filter(f_mail); destination(d_mail); };
> log { source(s_sys); filter(f_emergency); destination(d_mlal); };
> log { source(s_sys); filter(f_news); destination(d_spol); };
> log { source(s_sys); filter(f_boot); destination(d_boot); };
> log { source(s_sys); filter(f_cron); destination(d_cron); };
> ## Additions for central syslog
> source s_udp { udp(); };
>
> source s_tcp { tcp(ip(0.0.0.0) port(514)); };
>
>
> destination d_hosts {
>
> file("/var/log/hosts/$HOST/$YEAR$MONTH$DAY"
>
> owner(syslog)
>
> group(syslog)
>
> perm(0644)
>
> dir_perm(0755)
>
> create_dirs(yes));
>
> };
>
>
> log { source(s_udp); destination(d_hosts); };
>
> log { source(s_tcp); destination(d_hosts); };
>
>
> # For testing: aka logger "my little pony"
>
> #log { source(s_sys); destination(d_hosts); };
>
>
> ## End additions for central syslog
> # vim:ft=syslog-ng:ai:si:ts=4:sw=4:et:
The reported selinux policy violation is caused by the d_hosts
destination. To correct the problem use the audit2allow tool
(from the policycoreutils-python package) to generate
new selinux rules. For an usage example check the page:
https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Fixing_Problems-Allowing_Access_audit2allow.html
jpo
--
José Pedro Oliveira
* mailto:jpo at di.uminho.pt *
More information about the syslog-ng
mailing list