Added sudo module.

This commit is contained in:
Ossi Salmi 2010-11-01 16:03:29 +02:00 committed by Timo Mkinen
parent 32b26d2592
commit 6a89b5de3b
2 changed files with 69 additions and 0 deletions

13
sudo/files/sudoers Normal file
View file

@ -0,0 +1,13 @@
# /etc/sudoers
#
# This file MUST NOT be edited. It is managed by puppet.
#
Defaults env_reset
Defaults requiretty
# Allow root to run any commands anywhere
root ALL=(ALL) ALL
# Include managed users and groups
#includedir /etc/sudoers.d

56
sudo/manifests/init.pp Normal file
View file

@ -0,0 +1,56 @@
# Install sudo and sudoers file.
#
class sudo {
package { "sudo":
ensure => installed,
}
file { "/etc/sudoers.d":
ensure => directory,
mode => 0440,
owner => root,
group => root,
purge => true,
force => true,
recurse => true,
source => "puppet:///custom/empty",
require => Package["sudo"],
}
file { "/etc/sudoers":
ensure => present,
mode => 0440,
owner => root,
group => root,
source => "puppet:///sudo/sudoers",
require => File["/etc/sudoers.d"],
}
}
# Add sudoer.
#
# === Parameters
#
# $name:
# User or group. Prefix group name with %.
# $where:
# Defaults to ALL.
# $as_whom:
# Defaults to ALL.
# $what:
# Defaults to ALL.
#
define sudo::sudoer($where="ALL", $as_whom="ALL", $what="ALL") {
file { "/etc/sudoers.d/${name}":
ensure => present,
mode => 0440,
owner => root,
group => root,
content => "${name}\t${where}=(${as_whom})\t${what}\n",
require => File["/etc/sudoers"],
}
}