1
2
3
4
5
6
7
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
|
# File 'manifests/sssd.pp', line 1
class ldap::sssd{
Package['ldap-sssd-client']->Package['ldap-sssd-ldap']->File['/etc/sudo-ldap.conf']->File['/etc/nsswitch.conf']->File['/etc/sssd/sssd.conf']~>Service[sssd]
# Instala los paquetes necesarios para el modulo
package {'ldap-sssd-client':
name => 'sssd-client',
ensure => installed,
}
package {'ldap-sssd-ldap':
name => 'sssd-ldap',
ensure => installed,
}
# Habilita y levanta el servicio sssd
service{'sssd':
ensure => running,
hasrestart => true,
hasstatus => true,
}
# Carga el archivo sudo-ldap con el contenido que esta en el template sudo-ldap.erb
file {'/etc/sudo-ldap.conf':
content => template("ldap/sudo-ldap.erb"),
owner => "root",
group => "root",
mode => '0640',
}
# Configura el nsswitch para que autentique contra ldap
file {'/etc/nsswitch.conf':
source => 'puppet:///modules/ldap/nsswitch.conf',
owner => "root",
group => "root",
mode => '0644',
}
# Se modifica el archivo de configuracion con las configuraciones seteadas en la clase ldap::parametros
file{'/etc/sssd/sssd.conf':
ensure => 'file',
content => template("ldap/sssd.erb"),
group => 'root',
mode => '600',
owner => 'root',
notify => Service['sssd'],
}
}
|