configuración del cliente ldap

Post on 08-Jun-2015

775 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Ivan HuaiquilaoRicardo HarnischPablo FuentesPablo NahuelpanEsteban Montandon

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)

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

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.

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

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).

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.

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.

•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

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;

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

Finalmente activamos el servicio.

/etc/init.d/slapd start

Y el servidor ya debería estar funcionando.

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

Nuestro objetivo

Para comenzar debemos instalar los paquetes necesarios para el clientes.

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

Instalación

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

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)

# 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

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

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)

# 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

FIN gracias

top related