puppet/pam/manifests/init.pp

47 lines
1.1 KiB
Puppet

# Common pam prequisites
#
class pam::common {
case $operatingsystem {
"ubuntu": {
package { "libpam-runtime":
ensure => installed,
}
exec { "pam-auth-update":
path => "/bin:/usr/bin:/sbin:/usr/sbin",
refreshonly => true,
require => Package["libpam-runtime"],
}
}
}
}
# Enable pam_mkhomedir module
#
class pam::mkhomedir {
include pam::common
case $operatingsystem {
"centos","fedora": {
exec { "authconfig --enablemkhomedir --update":
path => "/bin:/usr/bin:/sbin:/usr/sbin",
unless => "egrep '^USEMKHOMEDIR=yes\$' /etc/sysconfig/authconfig",
}
}
"ubuntu": {
file { "/usr/share/pam-configs/pam_mkhomedir":
source => "puppet:///modules/ldap/pam_mkhomedir",
mode => 0644,
owner => "root",
group => "root",
require => Package["libpam-runtime"],
notify => Exec["pam-auth-update"],
}
}
}
}