Cuentas centralizadas con OpenLDAP y NFS

En la máquina que actuará como servidor instalaremos slapd y ldap-utils

# apt install slapd ldap-utils

Durante la instalación nos pedirá una contraseña para el administrador, al finalizar, se habrá configurado todo automáticamente de forma correcta, pero es recomendable reconfigurar nosotros slapd con

# dpkg-reconfigure slapd

Creamos nuestro fichero LDIF (en mi caso le he llamado unidadorganizativa.ldif) con las unidades organizativas que vamos a manejar, y se lo inyectamos a nuestro LDAP

dn: ou=People,dc=tinoco,dc=gonzalonazareno,dc=org
ou: People
objectClass: top
objectClass: organizationalUnit

dn: ou=Group,dc=tinoco,dc=gonzalonazareno,dc=org
ou: Group
objectClass: top
objectClass: organizationalUnit
ldapadd -x -D 'cn=admin,dc=tinoco,dc=gonzalonazareno,dc=org' -W -f unidadorganizativa.ldif

Si todo ha ido bien nos soltará:

adding new entry "ou=People,dc=tinoco,dc=gonzalonazareno,dc=org"

adding new entry "ou=Group,dc=tinoco,dc=gonzalonazareno,dc=org"

Y añadiremos un grupo y un usuario, para ello creamos un fichero ldif (en mi caso poblar.ldif)

dn: cn=usuarios,ou=Group,dc=tinoco,dc=gonzalonazareno,dc=org
objectClass: top
objectClass: posixGroup
gidNumber: 2000
cn: usuarios

dn: uid=user1,ou=People,dc=tinoco,dc=gonzalonazareno,dc=org
objectClass: top
objectClass: posixAccount
objectClass: inetOrgPerson
objectClass: person
cn: user1
uid: user1
uidNumber: 2000
gidNumber: 2000
homeDirectory: /home/ldap/user1
loginShell: /bin/bash
userPassword: {SSHA}yZ7g3Q2z7Ej1Ad3d3bia4fkKdqHWi4S0
sn: surname1
mail: user1@localhost
givenName: user1

Dicho “userPassword” es “user1” generado con slappasswd, y lo añadimos.

ldapadd -x -D "cn=admin,dc=tinoco,dc=gonzalonazareno,dc=org" -W -f poblar.ldif

Ahora pasamos a instalar nfs.

# apt install nfs-common nfs-kernel-server

Y creamos un directorio, a partir del cual se generarán los directorios de los usuarios.

# mkdir /home/ldap

Y añadimos al fichero “/etc/exports” la línea

/home/ldap	*(rw,fsid=0,subtree_check,no_root_squash)

Reiniciamos el servicio

# systemctl start nfs-kernel-server

En las máquinas clientes deberemos realizar los siguientes pasos:

Instalamos los paquetes libpam-ldap, libnss-ldap, nscd y nfs-common

# apt install libnss-ldapd libpam-ldapd nscd nfs-common

Nos pedirá la url de nuestro servidor, la base y luego seleccionamos group y passwd

Y creamos el directorio, a partir del cual se generarán los directorios de los usuarios.

# mkdir /home/ldap

Añadimos al fstab la siguiente linea:

10.0.0.9:/home/ldap	/home/ldap	nfs	rw	0	0

Y al /etc/pam.d/common-account

session    required   pam_mkhomedir.so skel=/etc/skel/ umask=0022

Así, en cuanto hagamos login de un nuevo usuario, si es la primera vez que se logea, mapeará “al vuelo”  el directorio NFS asociado a usuario.

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s