[syslog-ng] Mutual Authentication and Encryption With Rsyslog
Michael Starks
syslog-ng-list at michaelstarks.com
Fri Mar 6 01:27:42 CET 2015
I am trying to get mutual authentication working between a syslog-ng
server and an Rsyslog client, using startssl.com issued certificates.
The client does properly authenticate the server, but syslog-ng does not
recognize the client as trusted.
Server info:
------------
# cat /etc/redhat-release
CentOS release 6.6 (Final)
# /usr/local/syslog-ng/sbin/syslog-ng --version
syslog-ng 3.2.4
Installer-Version: 3.2.4
Revision:
ssh+git://bazsi@git.balabit//var/scm/git/syslog-ng/syslog-ng-ose--mainline--3.2#master#ef7b91e4a1b1f9628c66138b4ae83de7e4c697c6
Compile-Date: Aug 18 2013 22:16:35
Enable-Threads: off
Enable-Debug: off
Enable-GProf: off
Enable-Memtrace: off
Enable-Sun-STREAMS: off
Enable-IPv6: on
Enable-Spoof-Source: off
Enable-TCP-Wrapper: off
Enable-SSL: on
Enable-SQL: off
Enable-Linux-Caps: on
Enable-Pcre: on
Enable-Pacct: off
source s_network_secure {
tcp(flags(no-multi-line) ip(0.0.0.0) port(6514)
tls( key-file("/usr/local/syslog-ng/etc/cert.d/cert.key")
cert-file("/usr/local/syslog-ng/etc/cert.d/cert.pem")
ca_dir("/usr/local/syslog-ng/etc/cert.d")
peer_verify(required-untrusted)) );
};
And of course this is defined in a log statement.
Here is the directory. Note that the symbolic link of the hash has been
created.
# ll /usr/local/syslog-ng/etc/cert.d/
total 204
lrwxrwxrwx. 1 root root 13 Mar 3 13:51 876f1e28.0 -> ca-bundle.pem
-rw-r--r--. 1 root root 195587 Mar 3 13:08 ca-bundle.pem
-r--------. 1 root root 1679 Feb 28 11:21 cert.key
-r--------. 1 root root 2260 Feb 28 11:50 cert.pem
-rw-r--r--. 1 root root 2281 Mar 3 13:58 client.key
required-untrusted works, but required-trusted doesn't. So I figured
maybe it was an SSL issue with the authority, but it seems to validate OK.
# openssl verify -CAfile 876f1e28.0 -verbose client.key
client.key: OK
Client info:
------------
# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"
# rsyslogd -v
rsyslogd 7.4.4, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: No
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
32bit Atomic operations supported: Yes
64bit Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
uuid support: Yes
See http://www.rsyslog.com for more information.
I suppose there's no additional client info needed since I know it is
presenting the certificate--the issue seems to be that the syslog-ng
server simply doesn't trust it.
All suggestions appreciated.
More information about the syslog-ng
mailing list