Subscribe via feed.

Ejemplos útiles para utilizar OpenLDAP

Posted by kwame on August 7, 2008 – 5:44 am

Al comenzar a escribir mi OpenLDAP-howto-ayuda-guía, inicié por donde la mayoría de los howto’s-guías-documentos comienzan, y esto es por
1. Una definición
2. Hablar de su historía
3. Cómo instalarlo
4. Cómo configurarlo
5. Ejemplos útiles

Para el momento que el lector está por el número 3 ya está cansado y quiere llegar a algo mas substancial y concreto. Entonces lo que yo voy a tratar de hacer en estos párrafos es explicar cómo utilizar un servidor de OpenLDAP como servidor de autenticación.

El ejemplo es el siguiente:

Supongamos que tenemos un conjunto de 20 linux hosts a los cuáles un grupo de usuarios necesita acceso. Si fuera un solo usuario con la necesidad de acceso a todos estos hosts, no resultaría tan “difícil” crear su cuenta de usuario en esos 20 hosts.

Pero que pasa cuando tenemos 30-40 usuarios que necesitan acceso a esos 20 hosts? Aquí es donde podemos hacer uso de OpenLDAP. Cuando creamos la cuenta de un usuario en el servidor OpenLDAP y además configuramos un host para que utilice a OpenLDAP como su servidor de autenticación, no hay necesidad de crear la cuenta del usuario manera local en el host o hosts que el usuario o usuarios quieren accesar. Una imagen dice más que mil palabras:

Esto quiere decir que cuando creámos la cuenta de usuario en OpenLDAP este automáticamente tiene acceso a todos estos hosts (tomando en cuenta que los configuramos para que usen OpenLDAP como su auth-server). Y obvio, cuando eliminamos la cuenta del usuario en OpenLDAP, automáticamente pierde su acceso a todos estos hosts.

Pero que pasa cuando solo quiero darle acceso a un usuario a un determinao host o grupo de hosts? Esto también se puede configurar en OpenLDAP y solo se necesitan modificar 2 líneas más en el host en /etc/ldap.conf.

Supongamos que queremos que el usuarioTest solo puede conectarse a s2.linux, s4.linux y s5.linux, esto se logra cuando modificamos 2 líneas extras en /etc/ldap.conf y cuando en nuestro servidor OpenLDAP agregamos al host en el ou=hosts y le decimos que usuarios tiene permiso para conectarse.

La otra pregunta es: un usuario tiene la posibilidad de cambiar su password cuando está conectado a cualquier host? La respuesta es “si”. Esto se hace modificando el servidor OpenLDAP y agregando unas cuantas líneas, esto para que cuando el usuario este logeado a cualquier host, solo tenga que teclear “passwd” y list, puede cambiar su contraseña.

El último ejemplo es: que pasa cuando mi servidor OpenLDAP deja de funcionar por alguna razón? Bueno, lo primero que va a suceder es que los usuarios no van a poder conectarse a los hosts, al ingresar su username el sistema simplemente se va a congelar, puesto que

1. El usuario ve el mensaje de login:
2. El ususario teclea su nombre de usuario
3. El host recibe esa petición y trata de conectarse a la ip del servidor de OpenLDAP
4. El host no recibe respuesta inmediata del servidor OpenLDAP y se queda “esperando”
5. Después de varios minutos se recibe un “unable to login”

Aquí es donde configurar un segundo servidor OpenLDAP como servidor de replicación es muuuuy útil. También voy a cubrir el tema de cómo configurar un servidor de OpenLDAP con replicación.

Hasta el momento estos son los ejemplos útiles que me vienen a la mente, si alguien tiene en mente algo más que piense que es útil, déjame un comentario y voy a tratar de agregarlo a mi howto-guia-documento.


This post is under “geek stuff, sysadmin” and has 13 respond so far.
If you enjoy this article, make sure you subscribe to my RSS Feed.