Added support for rsyslog server
This commit is contained in:
parent
da6f4df080
commit
e40a51186d
2 changed files with 65 additions and 9 deletions
|
@ -124,7 +124,7 @@ class syslog::client::rsyslog {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Install standalone syslog client
|
# Common configuration for standalone syslog client and server
|
||||||
#
|
#
|
||||||
# === Global variables:
|
# === Global variables:
|
||||||
#
|
#
|
||||||
|
@ -139,11 +139,16 @@ class syslog::client::rsyslog {
|
||||||
# Group name which has permissions to read logs. Defaults to
|
# Group name which has permissions to read logs. Defaults to
|
||||||
# wheel or root depending on operating system.
|
# wheel or root depending on operating system.
|
||||||
#
|
#
|
||||||
class syslog::standalone {
|
class syslog::standalone::common {
|
||||||
|
|
||||||
if !$syslog_type {
|
if !$syslog_type {
|
||||||
case $operatingsystem {
|
case $operatingsystem {
|
||||||
"centos": { $syslog_type = "syslogd" }
|
"centos": {
|
||||||
|
$syslog_type = $operatingsystemrelease ? {
|
||||||
|
/^6/ => "rsyslog",
|
||||||
|
default => "syslogd",
|
||||||
|
}
|
||||||
|
}
|
||||||
"fedora": { $syslog_type = "rsyslog" }
|
"fedora": { $syslog_type = "rsyslog" }
|
||||||
"openbsd": { $syslog_type = "syslogd" }
|
"openbsd": { $syslog_type = "syslogd" }
|
||||||
"ubuntu": { $syslog_type = "rsyslog" }
|
"ubuntu": { $syslog_type = "rsyslog" }
|
||||||
|
@ -217,12 +222,6 @@ class syslog::standalone {
|
||||||
require => File["/usr/local/sbin/logarchiver.sh"],
|
require => File["/usr/local/sbin/logarchiver.sh"],
|
||||||
}
|
}
|
||||||
|
|
||||||
case $syslog_type {
|
|
||||||
"syslogd": { include syslog::standalone::syslogd }
|
|
||||||
"rsyslog": { include syslog::standalone::rsyslog }
|
|
||||||
default: { fail("Unknown \$syslog_type '$syslog_type'") }
|
|
||||||
}
|
|
||||||
|
|
||||||
if "${selinux}" == "true" {
|
if "${selinux}" == "true" {
|
||||||
selinux::manage_fcontext { "/srv/log(/all\.log)?":
|
selinux::manage_fcontext { "/srv/log(/all\.log)?":
|
||||||
type => "var_log_t",
|
type => "var_log_t",
|
||||||
|
@ -239,6 +238,19 @@ class syslog::standalone {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Install standalone syslog host.
|
||||||
|
#
|
||||||
|
class syslog::standalone inherits syslog::standalone::common {
|
||||||
|
|
||||||
|
case $syslog_type {
|
||||||
|
"syslogd": { include syslog::standalone::syslogd }
|
||||||
|
"rsyslog": { include syslog::standalone::rsyslog }
|
||||||
|
default: { fail("Unknown \$syslog_type '$syslog_type'") }
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# Install standalone syslog host using syslogd.
|
# Install standalone syslog host using syslogd.
|
||||||
#
|
#
|
||||||
class syslog::standalone::syslogd inherits syslog::client::syslogd {
|
class syslog::standalone::syslogd inherits syslog::client::syslogd {
|
||||||
|
@ -267,3 +279,31 @@ class syslog::standalone::rsyslog inherits syslog::client::rsyslog {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Install syslog server.
|
||||||
|
#
|
||||||
|
class syslog::server inherits syslog::standalone::common {
|
||||||
|
|
||||||
|
case $syslog_type {
|
||||||
|
"syslogd": { fail("Server for \$syslog_type '$syslog_type' not yet supported.") }
|
||||||
|
"rsyslog": { include syslog::server::rsyslog }
|
||||||
|
default: { fail("Unknown \$syslog_type '$syslog_type'") }
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Install syslog server using rsyslog.
|
||||||
|
#
|
||||||
|
class syslog::server::rsyslog inherits syslog::client::rsyslog {
|
||||||
|
|
||||||
|
File["/etc/rsyslog.conf"] {
|
||||||
|
content => template("syslog/rsyslog.conf.erb",
|
||||||
|
"syslog/rsyslog.conf.server.erb",
|
||||||
|
"syslog/syslog.conf.$operatingsystem.erb",
|
||||||
|
"syslog/syslog.conf.server.erb"),
|
||||||
|
require => [ File["/srv/log"],
|
||||||
|
File["/var/log/all.log"], ],
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
16
syslog/templates/rsyslog.conf.server.erb
Normal file
16
syslog/templates/rsyslog.conf.server.erb
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# Provides UDP syslog reception
|
||||||
|
$ModLoad imudp.so
|
||||||
|
$UDPServerRun 514
|
||||||
|
|
||||||
|
# Provides TCP syslog reception with TLS
|
||||||
|
$ModLoad imtcp.so
|
||||||
|
|
||||||
|
$DefaultNetstreamDriver gtls
|
||||||
|
$DefaultNetstreamDriverCAFile <%= puppet_ssldir %>/certs/ca.pem
|
||||||
|
$DefaultNetstreamDriverCertFile <%= puppet_ssldir %>/certs/<%= homename %>.pem
|
||||||
|
$DefaultNetstreamDriverKeyFile <%= puppet_ssldir %>/private_keys/<%= homename %>.pem
|
||||||
|
|
||||||
|
$InputTCPServerStreamDriverMode 1
|
||||||
|
$InputTCPServerStreamDriverAuthMode x509/certvalid
|
||||||
|
$InputTCPServerRun 514
|
||||||
|
|
Loading…
Add table
Reference in a new issue