Create and own /etc/sudoers.d
[mirror/dsa-puppet.git] / modules / sudo / manifests / init.pp
1 # Debian.org's sudo setup
2 class sudo {
3   ensure_packages ( [
4    'sudo',
5    'libpam-pwdfile',
6   ], {
7      ensure => $package_ensure
8   })
9
10   file { '/etc/pam.d/sudo':
11     source  => 'puppet:///modules/sudo/pam',
12     require => Package['sudo'],
13   }
14
15   file { '/etc/sudoers':
16     mode    => '0440',
17     source  => 'puppet:///modules/sudo/sudoers',
18     require => Package['sudo'],
19   }
20
21   file { '/etc/sudoers.d':
22     ensure  => directory,
23     mode    => '755',
24     purge   => true,
25     recurse => true,
26     force   => true,
27     source  => 'puppet:///files/empty/',
28   }
29   file { '/etc/sudoers.d/README':
30     mode    => '440',
31     content => @(EOT),
32       # According to the README shipped with Debian 10,
33       # this directory, if included in /etc/sudoers, needs
34       # to contain at least one file.  Files which end in
35       # a '~' character or that contain a '.' are ignored.
36       #
37       # Files should be mode 0440 and be edited with visudo.
38       | EOT
39   }
40 }