8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
# File 'manifests/trusty64/logging/rsyslog.pp', line 8
class cis_benchmark::trusty64::logging::rsyslog {
## local variables
$centralized_log_host = 'loghost.example.com'
## local variables: stig items
$cis_4_2_1_1 = $::cis_benchmark::cis_4_2_1_1
$cis_4_2_1_2 = $::cis_benchmark::cis_4_2_1_2
$cis_4_2_1_3 = $::cis_benchmark::cis_4_2_1_3
$cis_4_2_1_4 = $::cis_benchmark::cis_4_2_1_4
$cis_4_2_1_5 = $::cis_benchmark::cis_4_2_1_5
## CIS 4.2.1.1 Ensure logging is configured (Not Scored)
if ($cis_4_2_1_1) {
## ensure rsyslog installed
package { 'rsyslog':
ensure => 'present',
}
## ensure configuration
file { '/etc/init/rsyslog.conf':
ensure => present,
mode => '0644',
owner => 'root',
group => 'root',
content => dos2unix(template('cis_benchmark/trusty64/rsyslog/init_rsyslog.conf.erb')),
}
## ensure rsyslog running
service { 'rsyslog':
ensure => true,
enable => true,
require => Package['rsyslog'],
}
}
## CIS 4.2.1.3 Ensure rsyslog default file permissions configured (Scored)
if ($cis_4_2_1_3) {
file { '/etc/rsyslog.conf':
ensure => present,
mode => '0644',
owner => 'root',
group => 'root',
content => dos2unix(template('cis_benchmark/trusty64/rsyslog/rsyslog.conf.erb')),
}
}
else {
file { '/etc/rsyslog.conf':
ensure => present,
mode => '0644',
owner => 'root',
group => 'root',
}
file_line { 'rsyslog-include-config':
path => '/etc/rsyslog.conf',
line => '$IncludeConfig /etc/rsyslog.d/*.conf',
}
}
## apply remaining cis stigs
file { '/etc/rsyslog.d/50-default.conf':
ensure => present,
mode => '0644',
owner => 'root',
group => 'root',
content => dos2unix(template('cis_benchmark/trusty64/rsyslog/50-default.conf.erb')),
}
## restart rsyslogd
exec { 'restart-rsyslogd':
command => 'pkill -HUP rsyslogd',
path => '/usr/bin',
subscribe => [
File['/etc/init/rsyslog.conf'],
File['/etc/rsyslog.conf'],
File['/etc/rsyslog.d/50-default.conf'],
],
refreshonly => true,
}
}
|