1 |
class pam { |
2 |
class base { |
3 |
package { ["pam_ldap","nss_ldap","nscd"]: } |
4 |
|
5 |
service { nscd: |
6 |
require => Package['nscd'], |
7 |
} |
8 |
|
9 |
file { |
10 |
"/etc/pam.d/system-auth": content => template("pam/system-auth"); |
11 |
"/etc/nsswitch.conf": content => template("pam/nsswitch.conf"); |
12 |
"/etc/ldap.conf": content => template("pam/ldap.conf"); |
13 |
"/etc/openldap/ldap.conf": content => template("pam/openldap.ldap.conf"); |
14 |
} |
15 |
|
16 |
$ldap_password = extlookup("${fqdn}_ldap_password",'x') |
17 |
file { "ldap.secret": |
18 |
path => "/etc/ldap.secret", |
19 |
mode => 600, |
20 |
content => $ldap_password |
21 |
} |
22 |
} |
23 |
|
24 |
define multiple_ldap_access($access_classes,$restricted_shell = false) { |
25 |
if $restricted_shell { |
26 |
include restrictshell |
27 |
} |
28 |
include base |
29 |
} |
30 |
} |