centos directory server
DESCRIPTION
Configuracion de CentosDirectory en centos 6TRANSCRIPT
-
CentOS Directory ServerDominio para servidores y clientes GNU/Linux
Basado en 389-directory server y NFS
Dominio Linux
Manuel Moran [email protected]
Marzo 2011
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Indice
1 Introduccion
2 Configuracion del servidor
3 Configuracion de los clientes
4 Material adicional
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Por que un dominio?
Un sistema de dominio permite a los usuarios trabajar desdecualquier puesto, accediendo con la misma contrasena yviendo el mismo entorno de trabajo en todos ellos con lasconsiguientes ventajas de:
Aumento de la productividad y posibilidad de trabajo en grupoInterfaz y paradigma conocidos (carpetas+ficheros)No dependencia de un puesto hardware
Una opcion es crear todas las cuentas de todos los usuarios entodos los clientes (manual, tedioso, costoso)La opcion que usaremos sera tener una base de datoscentralizada con las contrasenas y nombres de usuario
Todos los equipos cliente se autentificaran contra dicha BDcentralizadaTodos los equipos consultaran los UIDs/GIDs en dicha BD, paraas ver todos los mismos nombres de grupos y usuariosDicha BD ha de ser muy rapida en lectura (aunque no nosimporta que sea lenta en escritura) y por ello usaremos LDAP
El mismo servidor u otro de la red local almacenaran losarchivos que veran los clientes a traves de la red, permitiendoas que los usuarios puedan hacer roaming entre los puestos
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Construir un dominio
Para conseguir los objetivos del dominio tenemos queimplantar al menos estos dos sistemas:
1 Autentificacion Centralizada (SSO: Single sign-on): se usauna unica contrasena y con ella se accede a todos los serviciossin necesidad de re-autentificarse
2 Carpetas en red: que pueden ser carpetas personales ocompartidas por los demas miembros del dominio
En los distintos sistemas operativos esto se consigue convarias tecnologas (en negrita los que vamos a ver):
1 - Autentificacion Centralizada 2 - Carpetas en redWindows Active Directory Compartir carpetas
GNU/Linux OpenLDAP o NIS NFS o pam mount+sshfs
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Arquitectura cliente/servidor del dominio
En el servidor: configuraremos la BD con los usuarios ygrupos y permitiremos la comparticion de algunas carpetaspara que todos los equipos puedan acceder a los datos
En el cliente: configuraremos el sistema de autentificacionpara que, en vez de ser contra la BD local, se haga contra elservidor. Ademas, los archivos de usuario (en general, lacarpeta /home) estara montada por la red por lo que todos losclientes veran el mismo /home
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Primeros pasos
Vamos a usar dos maquinas virtuales CentOS 5: una para elcliente y otra para el servidor, aunque podemos usar tantosclientes como queramos para probar el sistemaEstaran conectados como se puede ver en la figura:
La maquina servidor CentOS (miservidor.local) tendra dosinterfaces de red
eth0: NAT con IP asignada por DHCPeth1: INTERNA con IP 172.30.0.1/16
Antes de comenzar, asegurate que las maquinas se ven conping. Deshabilita el firewall para hacer las pruebas pero nuncadebes dejarlo deshabilitado en un servidor en produccion
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configuracion del servicio de directorio LDAP (I)
Instala 389-ds (Directory Server) mediante el comando# yum install centos-ds openldap-clients
Anade la siguiente lnea al fichero /etc/hosts para identificar atu servidor con la IP local172.30.0.1 miservidor.local miservidor
Ejecuta la configuracion inicial del servicio de directorio# setup-ds-admin.pl
Acepta los valores por defecto e introduce las contrasenasadecuadas excepto en los siguientes parametros:
Computername: miservidor.local
Suffix: dc=miservidor,dc=local
Finalmente acepta los cambios e inicia el servidor de directorio# service dirsrv restart
# service dirsrv-admin restart
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configuracion del servicio de directorio LDAP (II)
En este momento ya tienes iniciado el servidor LDAP, aunqueaun falta configurarlo para que se comporte como deseemos(para dar contrasenas a varios clientes con UIDs y GIDscomunes a todos ellos)
Para abrir la utilidad de administracion del directorio ejecuta# centos-idm-console
Tus datos de autentificacion seranUser ID: cn=Directory Manager
Password: la especificada en la config. inicial
Administration URL: localhost:9830
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configuracion del servicio de directorio LDAP (III)
Vamos a configurar un plugin muy util aunque no imprescindible,que hara una asignacion consecutiva de UIDs a los usuarios.Podemos no configurarlo pero en ese caso deberamos acordarnosdel ultimo UID asignado para no asignarselo al siguiente
miservidor.local Server Group Directory Server BotonOpen
Configuration Plugins Distributed Numeric Assignment Enable plug-in SaveIntroduce en un fichero llamado conf.ldif el texto que figura enla siguiente pagina
Ejecuta el comando, sustituyendo el campo **password** por laclave del directory manager# ldapmodify -a -D cn="directory manager" -w **password** -f conf.ldif
Reinicia el servidor de directorio
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
conf.ldif
# uidsdn: cn=UID numbers,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=configobjectClass: topobjectClass: extensibleObjectcn: UID numbersdnatype: uidNumberdnamagicregen: 99999dnafilter: (objectclass=posixAccount))dnascope: dc=miservidor,dc=localdnanextvalue: 1000
# gidsdn: cn=GID numbers,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=configobjectClass: topobjectClass: extensibleObjectcn: GID numbersdnatype: gidNumberdnamagicregen: 99999dnafilter: (|(objectclass=posixAccount)(objectclass=posixGroup))dnascope: dc=miservidor,dc=localdnanextvalue: 1000
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configurar el servidor para que useautentificacion LDAP
Ejecuta # system-config-authentication
Ficha Informacion: Habilitar Soporte LDAP + Configurar LDAPDN base: dc=miservidor,dc=localServidor LDAP: ldap://172.30.0.1
Ficha autentificacion: Habilitar Soporte LDAP
Ficha Opciones: Activar Crear los directorios home al ingresarla primera vez
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Anadir grupos al LDAP
Ficha Directory miservidor (boton derecho) New GroupEn primer lugar vamos a crear un grupo usuarios para poderloasignar como grupo principal de todos los usuarios
Una vez que pongamos el nombre del grupo (usuarios)pincharemos en...
Advanced Pincha en objectclass Add Value PosixgroupEn el campo gidnumber ponemos un GID para el grupousuarios. Por ejemplo: 600
Los demas grupos se crean de igual forma, y podemos anadira los usuarios a traves del mismo interfaz grafico a dicho grupo
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Anadir usuarios al LDAP
Ficha Directory miservidor (boton derecho) New UserRellena en primer lugar los campos de la ficha User
En la ficha posix activa enable posix attributes y rellena con:UID: 99999GID: 600Home Directory: /home/nombredeusuarioLogin shell: /bin/bash
El valor 99999 hace uso del plugin que configuramosanteriormente y lo que hace es sustituir ese valor por el primerUID libre
Nos loggearemos una vez en el servidor con dicho nombre deusuario para ver si funciona y as se creara ademasautomaticamente su /home:ssh nombredeusuario@localhost
Todo este proceso de anadir un usuario, se automatiza luegocon scripts para anadir los demas en masa con ldapadd
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configurar la exportacion de /home
Para que los clientes de tu red puedan montar el /home delservidor hemos de configurar el servicio NFS
Edita el fichero /etc/exports y escribe en el la siguiente lnea(ojo, respetar la ausencia de espacios antes del parentesis)/home 172.30.0.0/16(rw)
Arranca el servicio NFS# service nfs restart
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configuracion del cliente para autentificacion porLDAP
Proceso identico a la configuracion del servidor
Ejecuta # system-config-authentication
Ficha Informacion: Habilitar Soporte LDAP + Configurar LDAPDN base: dc=miservidor,dc=localServidor LDAP: ldap://172.30.0.1
Ficha autentificacion: Habilitar Soporte LDAP
Si te intentas conectar ahora desde una terminal texto en elcliente con un usuario del dominio, veras que puedes entrar(=la autentificacion funciona) pero no ves tu home. Cierra estasesion de usuario antes de pasar al siguiente paso
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Configuracion del cliente para el montaje de/home remoto
Sal de todas las sesiones de usuario local
Asegurate de que /home es un punto de montaje valido (creadoy vaco)
Edita /etc/fstab y anade la siguiente lnea:172.30.0.1:/home /home nfs defaults 0 0
Monta /home y comprueba que ves todas las carpetas del/home del servidor
Entra en una terminal de texto del cliente y comprueba queahora s ves tu home del servidor
Reinicia la maquina cliente y entra en modo grafico desde elcliente y comprueba que tanto los ajustes como lasconfiguraciones de programa se conservan si te loggeas conesa misma cuenta en otra maquina cliente o en el propioservidor
-
Introduccion Configuracion del servidor Configuracion de los clientes Material adicional
Material adicional
Parte de este material se ha realizado con los tutoriales dehttp://www.linuxmail.info/389-directory-server-howto-centos-5/
VirtualBox no te permite insertar dos VDIs con el mismo UUID.Para cambiar el UUID debes usar el siguiente comando:vboxmanage internalcommands sethduuid copiadelhd.vdi
El protocolo NFS es inseguro si los usuarios tienen laposibilidad de convertirse en root en las maquinas cliente. Enese caso debe usarse pam mount con sshfs para el montaje dela carpeta /home del usuario bajo demanda
Extender este servidor LDAP para que tambien sea servidor dedominio Windows es muy facil, aunque para pocos usuariospodemos usar soluciones out-of-the-box como zentyal
Introduccin
Configuracin del servidor
Configuracin de los clientes
Material adicional