Configuración Del Cliente LDAP

21
Ivan Huaiquilao Ricardo Harnisch Pablo Fuentes Pablo Nahuelpan Esteban Montandon

Transcript of Configuración Del Cliente LDAP

Page 1: Configuración Del Cliente LDAP

Ivan HuaiquilaoRicardo HarnischPablo FuentesPablo NahuelpanEsteban Montandon

Page 2: Configuración Del Cliente LDAP

Es un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red.

LDAP (Lightweight Directory Access Protocol)

Page 3: Configuración Del Cliente LDAP

Para la instalación del servidor necesitaremos los siguientes paquetes.

$ apt-get install libldap2 slapd ldap-utils

Al momento de instalar, se nos pedirá el dominio (inf.uct.cl) del servidor, el nombre de nuestra organización (que la llamamos klae) y la password de administrador.

Instalación del servidor LDAP

Page 4: Configuración Del Cliente LDAP

Utilización de phpldapadmin

phpLDAPadmin en una herramienta basada en web que permite gestionar un directorio LDAP desde un navegador.

$ apt-get install phpldapadmin

Una vez terminada la instalación, podremos acceder a la dirección http://server/phpldapadmin.

Page 5: Configuración Del Cliente LDAP

Ahora debemos especificar el servidor y la maquina donde éste se encuentra. Para esto editamos el archivo /etc/ldap/ldap.conf, donde especificaremos el nombre de nuestro dominio y la dirección de éste:

Configuración del servidor LDAP

BASE dc=inf.uct,dc=clURI ldap://localhost

Page 6: Configuración Del Cliente LDAP

Los Niveles de acceso permiten especificar a quién se da el permiso para leer, buscar, comparar o modificar la información almacenada en el directorio.

Configurar la lista de control de acceso

access to what [by who acess_control]+

•what: a qué datos del directorio se aplica la regla. A todo el directorio (*), a un subconjunto de entradas con un sufijo dn=".*,ou=profesores, dc=iescuravalera,dc=es" o un atributo en concreto

•who: indica a qué usuario(s) se especifica la regla. self (el propietario de la entrada), dn="..." (el usuario representado por el nombre distinguido), users (cualquier usuario acreditado), anomymous (cualquier usuarios no acreditado) y * (cualquier usuario).

•access_control: indica qué operación concede la regla: none (sin acceso), auth (utilizar la entrada para validarse), compare (comparar), search (búsqueda), read (lectura), y write (modificación).

Page 7: Configuración Del Cliente LDAP

access to * by dn="cn=Manager,dc=inf.uct, dc=cl" write by * read

Permite al administrador cambiar cualquier entrada del directorio y al resto de usuarios sólo leerlas.

access to attrs=userPasswordby dn="cn=Manager,dc=inf.uct, dc=cl" writeby anonymous authby self writeby * none

Permite a cada usuario a cambiarse su propia contraseña (la contraseña es el atributo userPassword en los objetos de tipo usuario), al administrador cambiar la de cualquier usuario y al resto de usuarios sólo pueden utilizar este campo para autentificarse.

Page 8: Configuración Del Cliente LDAP

Migrar los usuarios y grupos actuales al dominio

La idea es que los usuarios y grupos, que tengamos creados en la máquina que contiene el servidor LDAP, migrarlos al directorio LDAP. Vamos a crear los grupos profesores y alumnos, y les vamos a asociar usuarios. Después haremos la migración a LDAP.

Page 9: Configuración Del Cliente LDAP

•Creamos los grupos:

addgroup -gid 2000 PROFESORESaddgroup -gid 2001 ALUMNOS

•Creamos usuarios para esos grupos, morgado es profesor y pepe es alumno.

adduser -gid 2000 morgadoadduser -gid 2001 pepe

Ejemplo

Page 10: Configuración Del Cliente LDAP

Nos descargamos el paquete Migration Tools, lo descomprimimos en /usr/share/MigrationTools y nos posicionamos en dicho directorio. La idea es pasar el passwd y group a formato ldif.

Editamos el fichero migrate_common.ph y hacemos los siguientes cambios:

Default DNS domain$DEFAULT_MAIL_DOMAIN = “inf.uct.cl";

# Default base $DEFAULT_BASE = "dc=inf.uct, dc=cl";

# turn this on to support more general object clases such as person.$EXTENDED_SCHEMA = 1;

Page 11: Configuración Del Cliente LDAP

A continuación ejecutamos, desde la shell, los scripts de migración:

#migramos el sistema base./migrate_base.pl > /var/lib/ldap/base.ldif

#migramos los grupos./migrate_group.pl /etc/group /var/lib/ldap/group.ldif

#migramos los usuarios./migrate_passwd.pl /etc/passwd /var/lib/ldap/passwd.ldif

Page 12: Configuración Del Cliente LDAP

Finalmente activamos el servicio.

/etc/init.d/slapd start

Y el servidor ya debería estar funcionando.

Page 13: Configuración Del Cliente LDAP

Se configurará un cliente ldap en nuestra maquina, para poder identificarse como usuarios usando su login de la escuela.

Nuestro objetivo

Page 14: Configuración Del Cliente LDAP

Para comenzar debemos instalar los paquetes necesarios para el clientes.

$ apt-get install libnss-ldap ldap-utils libpam-ldap libpam-modules

Instalación

Page 15: Configuración Del Cliente LDAP

Ahora configuraremos los archivos para que nuestra máquina actúe como cliente hacia el servidor.

Host 192.168.5.191

Base dc=inf.uct, dc=cl

URI ldap://inf.uct.cl

Archivo /etc/ldap/ldap.conf

Page 16: Configuración Del Cliente LDAP

Permite obtener información sobre nombres de hosts, contraseñas, usuarios datos sobre estos, a partir de distintas fuentes, en este caso desde el servidor de LDAP.

Configuración del Name Service Switch(nss)

Page 17: Configuración Del Cliente LDAP

# Your LDAP server. Must be resolvable without using LDAP.

# Multiple hosts may be specified, each separated by a space.

# How long nss_ldap takes to failover depends on whether your

# LDAP client library supports configurable network or connect

# timeouts (see bind_timelimit).

host 192.168.5.191

# The distinguished name of the search base.

base dc=inf.uct,dc=cl

# The LDAP version to use (defaults to 3 if supported by client library)

ldap_version 3

# The distinguished name to bind to the server with if the effective user # ID is root. Password is stored in /etc/ldap.secret (mode 600)

rootbinddn cn=riky, dc=inf.uct, dc=cl

# Do not hash the password at all; presume the directory server

#will do it, if necessary. This is the default.

pam_password md5

Archivo /etc/libnss_ldap.conf

Page 18: Configuración Del Cliente LDAP

Debemos decirle al cliente que busque las cuentas de usuario en forma local o en el servidor ldap.

Passwd: files ldap

group: files ldap shadow: files ldap # hosts: files dns ldap networks: files ldap #

protocols: db files services: db files

ethers: db files rpc: db files # netgroup: nis

Archivo /etc/nsswitch.conf

Page 19: Configuración Del Cliente LDAP

Permite hacer uso de un servidor LDAP para la autentificación de usuarios (comprobación de claves).

Configuramos el archivo /etc/pam_ldap.conf y las autenticaciones correspondientes en los módulos pam.d.

Configuración de PAM(Plugable Authentication Module)

Page 20: Configuración Del Cliente LDAP

# network or connect timeouts (see bind_timelimit). host 192.168.5.191

# The distinguished name of the search base. base dc=inf.uct, dc=cl

# if supported by client library) ldap_version 3

# The distinguished name to bind to the server with # if the effective user ID is root. Password is # stored in /etc/pam_ldap.secret (mode 600) rootbinddn cn=riky, dc=inf.uct, dc=cl

# Do not hash the password at all; presume # the directory server will do it, if # necessary. This is the default. pam_password md5

Archivo /etc/pam_ldap.conf

Page 21: Configuración Del Cliente LDAP

FIN gracias