Fedora Directory Server
Nivel del Documento |
Porcentaje del documento |
Básico |
Indeterminado |
Archivos adjuntos |
|
Enlaces relacionados |
|
Escritores |
|
Introducción
Fedora Directory Server es un servidor LDAP para Linux desarrollado por Red Hat y la comunidad de Fedora, permite un completo sistema de identidades y una plataforma integral para múltiples servicios de servidor. Enfocado principalmente a instituciones y empresas corporativas, cuenta con múltiples características que lo hacen el favorito para implementaciones del mundo real.
Se destacan su capacidad de replicación Multimaster(MMR), compatibilidad con MS Active Directory, Soporte SNMP, Integridad Referencial, Grupos estáticos y dinámicos, Roles, Clases de Servicios, vistas, Editor Gráfico de Esquema y todo un conjunto de herramientas para un control operacional más granulado. En la actualidad esta trabajando en una amplia variedad de empresas e instituciones a nivel mundial, principalmente por su alto rendimiento y fácil administración.
|
Esta trabajo no pretende ser una guia completa de configuración y administración de Red Hat/Fedora Directory Server, para ello remitase a la Documentación oficial |
Pre-requisitos de Hardware
Se requiere un procesador superior a un Intel 500MHz Pentium III, es recomendable tambien como minimo 256MB de RAM y 300 MB de espacio en disco. En entornos de producción el valor mínimo podria ser 2 GB de RAM con 2 GB de espacio en disco en plataforma servidor de 32 o 64 bit.
Pre-requisitos de Software
1.- Servidor Web Apache
2.- Un Java JRE (únicamente para Fedora Directory Console)
Componentes de Fedora Directory Server
La suite Fedora Directory Server constá principalmente de 4 sub-sistemas:
Fedora Directory Core |
Fedora Directory Administration |
Fedora Directory Console |
Fedora Org Chart |
Instalación de paquetes
Fedora Directory Server puede ser administrado bien a través de la terminal de comandos, vía web o a través de su interfaz gráfica de usuario Fedora Directory Console(FDC), para esté último necesitamos utilizar el JRE de Java, lamentablemente GCJ en la actualidad no ejecuta adecuadamente FDC y debido a esto es común recibir errores del siguiente tipo:
"GC Warning: Out of Memory!
De todas maneras a partir de Fedora 8, GCJ dejára de ser parte oficial de la distribución, en su lugar, el Java Team apostará por la integración de IcedTea, un proyecto impulsado por Red Hat y figura ser una implementación del OpenJDK recientemente liberado por SUN.
Después de instalar correctamente el JRE de Java, se le indica al sistema que debe utilizar el JRE de SUN en lugar de GCJ con el comando update-alternatives:
# update-alternatives --install /usr/bin/java java /opt/JRE-1_*/bin/java 1900
Descarga e instala el RPM de Fedora Directory Server(FDS) para su plataforma, actualmente esta soportado el RHEL3/4 y Fedora 2/3/4/5/6, todos ellos para plataforma x86_64 y x86.
|
Para la plataforma RHEL5 para la fecha (20/05/2007) no existe un rpm oficial, sin embargo, la versión para Fedora Core 6 funciona muy bien en está última versión estable de Red Hat. |
# rpm -ivh fedora-ds-1.0.4-1.FC6.i386.opt.rpm
Fedora Directory Server se instala por defecto en el directorio /opt/fedora-ds allí encontrará los archivos de instalación y administración, así como cada una de las instancias que posteriormente vamos a crear, debe haber al menos una(1) instancia creada en la instalación inicial y se representa con el nombre de directorio /opt/fedora-ds/slapd-<instancia>/.
Preparando el sistema
Antes de instalar debemos crear un par usuario/grupo para operar el directorio, si lo omitimos el guión de instalación asignará el usuario/grupo nobody a los archivos, directorios y todo el sub-sistema una vez instalado, en tanto lo sustituiremos con fedora-ds:
# adduser -M -s /bin/false fedora-ds
Fedora Directory Server tiene una pequeña aplicación capaz de verificar el estado del sistema y algunos parámetros del kernel necesarios para que el directorio funcione adecuadamente y óptimo, está aplicación la podemos encontrar en /opt/fedora-ds/bin/slapd/server/dsktune, ésta aplicación nos ofrecera información sobre lo que debemos ajustar y cambiar en Linux, algunos de estos cambios comúnes debemos hacerlo en los archivos /etc/security/limits.conf y /etc/sysctl.conf, veamos más adelante como llegar a configurarlos adecuadamente.
Configuración de nombre al sistema
Debemos darle un nombre al servidor que tendrá el directorio, este paso es muy importante aunque no imprescindible para la instalación, una vez lo tengamos debe configurarse en el archivo /etc/hosts y /etc/sysconfig/network
Debemos tener presentes cuál va ser el dominio de la organización que vamos a gestionar, para los efectos necesarios vamos a usar vzla.gob.ve y le daremos por nombre a nuestra maquina ds1(que significa: Directory Server Nro.1), así entonces quedará ds1.vzla.gob.ve. También es preciso mencionar que Fedora Directory Server tiene la capacidad de manejar múltiples dominios en una misma interfaz de administración, a esto se le conoce como Gestión de Instancias.
Archivos de configuración
El siguiente parámetro le indica al sistema la máxima cantidad de archivos que pueden ser abiertos por un único usuario, cuando se está trabajando un buen tiempo con el directorio estos valores tienen un gran impacto especialmente cuando se realizan operaciones de búsqueda:
# echo "* - nofile 2048" >> /etc/security/limits.conf
Parámetros del kernel
# echo "net.ipv4.ip_local_port_range = 1024 65000" >> /etc/sysctl.conf
El rango de puertos TCP/UDP que estarán disponibles en el sistema local, este valor es regularmente configurado en sistemas de alto rendimiento.
# echo "fs.file-max = 65536" >> /etc/sysctl.conf
Indica al kernel la máxima cantidad de archivos que pueden ser abiertos, esta opción le permite al directorio determinar la cantidad máxima de entradas que podría mantener en memoria :
|
Debe tener cuidado y ajustar este valor de acuerdo a su configuración de hardware, se recomienda tener más de 1000MB de RAM e incrementar el valor de fs.file-max en 256 por cada 4MB de RAM, por ejemplo, para un sistema con 1024MB de RAM, es razonable tener un valor fs.file-max en 65536. |
El calculo es simple: 1024/4=256 256*256=65536. |
La siguiente tabla muestra los valores más comunes:
Cantidad de RAM |
Valor para fs.file-max |
128 |
8192 |
256 |
16384 |
512 |
32768 |
1024 |
65536 |
2048 |
131072 |
# echo "net.ipv4.tcp_keepalive_time = 600" >> /etc/sysctl.conf
Permite mantener un tiempo límite para las sesiones realizadas especialmente desde Fedora Directory Administrator, por tanto, si un usuario o administrador se auténtica en el directorio vía web y luego no realiza ninguna operación en el tiempo pautado, automáticamente su sesión expira.
|
Originalmente este parámetro tiene un valor de 7200 milisegundos (120 minutos), por medidas de seguridad es recomendable configurar en 600 milisegundos (10 minutos). |
Finalmente para que algunos cambios surtan efecto.
# sysctl -q -p /etc/sysctl.conf
Alternativamente pueden descargar el archivo tuning.sh para una configuración automática del sistema, este guión ejecuta sin asistencia todos los comandos anteriormente mencionados.
Preparando el archivo de instalación
Descarga la siguiente plantilla del archivo install.inf y modifica cada una de las entradas siguientes:
1. Nombre completo de la maquina:
FullMachineName= ds1.vzla.gob.ve
2. Directorio de instalación del FDS:
ServerRoot= /opt/fedora-ds
AdminDomain= vzla.gob.ve 3. Administrador de Fedora Directory Console(FDC):
ConfigDirectoryAdminID= admin
4. La clave usada por defecto aquí para FDS es fedorads, debe cambiarla en cada una de las siguientes entradas:
ConfigDirectoryAdminPwd= fedorads
UserDirectoryAdminPwd= fedorads
ServerAdminPwd= fedorads
5. Sufijo URL LDAP:
ConfigDirectoryLdapURL= ldap://ds1.vzla.gob.ve:389/o=NetscapeRoot
UserDirectoryLdapURL= ldap://ds1.vzla.gob.ve:389/dc=vzla,dc=gob,dc=ve
6. Debe cambiar en la siguiente entrada, la contraseña para el Directory Manager, quien representa el administrador del FDS:
RootDNPwd= fedorads
Instalación del Directorio
A continuación debe instalar el directorio a partir de la previa configuración desde el archivo install.inf , realizamos una instalación silenciosa pero efectiva ejecutando el siguiente comando:
# cd /opt/fedora-ds/setup/ # ./setup -s -f /RUTA/DE/install.inf
La salida debe ser algo como lo siguiente:
[slapd-ds1]: starting up server ...
[slapd-ds1]: Fedora-Directory/1.0.4 B2006.312.435
[slapd-ds1]: dei-ds1.vzla.gob.ve:389 (/opt/fedora-ds/slapd-ds1)
[slapd-ds1]:
[slapd-ds1]: [15/Aug/2007:14:45:08 -0400] - Fedora-Directory/1.0.4 B2006.312.435 starting up
[slapd-ds1]: [15/Aug/2007:14:45:08 -0400] - slapd started. Listening on All Interfaces port 389 for LDAP requests
Your new directory server has been started.
Created new Directory Server
Start Slapd Starting Slapd server configuration.
Success Slapd Added Directory Server information to Configuration Server.
Configuring Administration Server...
Setting up Administration Server Instance...
Configuring Administration Tasks in Directory Server...
Configuring Global Parameters in Directory Server...
You can now use the console. Here is the command to use to start the console:
cd /opt/fedora-ds
./startconsole -u admin -a http://ds1.vzla.gob.ve:9999/
INFO Finished with setup, logfile is setup/setup.log
Ahora el sistema está listo para solicitar conexiones a través del puerto 389, recuerde también que su servidor está atendiendo solicitudes anónimas desde cualquier lugar de nuestra red y además bajo un protocolo sin protección de cifrado(También puede ver SSL para más detalles sobre éste tema), ahora ya tiene Fedora Directory Core y Fedora Directory Administrator funcionando, puede apuntar en su navegador el URL http://ds1.vzla.gob.ve:9999, además, puede manipular el directorio desde la terminal de comando con las herramientas bajo el directorio /opt/fedora-ds/share/bin/, y también desde la interfaz de usuario FDC.
Comandos útiles
Servicio Fedora Directory Core
Iniciar:
# /opt/fedora-ds/slapd-<instancia>/start-slapd
Parada:
# /opt/fedora-ds/slapd-<instancia>/stop-slapd
Reiniciar:
# /opt/fedora-ds/slapd-<instancia>/restart-slapd
Servicio Fedora Directory Administrator
Iniciar:
# /opt/fedora-ds/start-admin
Parada:
# /opt/fedora-ds/stop-admin
Reiniciar:
# /opt/fedora-ds/restart-admin
Fedora Directory Console (GUI)
Inicie una vez instalado el directorio la Consola de Administración de su directorio con el comando:
./opt/fedora-ds/startconsole -u admin -a http://ds1.vzla.gob.ve:9999/
Inmediatamente una ventana le permitirá autenticarse, noté el URL y tenga presente que para poder ejecutar el Fedora Directory Console necesita tener previamente en ejecución Fedora Directory Administrator, debido a que esté último funciona como una pasarela(Gateway) de comunicación entre Fedora Directory Core y Fedora Directory Console. Su ejecución debe parecer como lo muestra la siguiente gráfica:
SysVInit
Para gestionar el sub-sistema del directorio durante y después del inicio del sistema podemos utilizar dos archivos de guión de comandos, fedora-ds-core para el servicio Fedora Directory Core(slapd) y fedora-ds-admin para Fedora Directory Administrator(modo httpd.worker), simplemente debe descargar ambos archivos en el directorio /etc/init.d/ y luego con el comando chkconfig agrega los nuevos servicios a su nivel de ejecución preferido, ejemplo:
# chkconfig --level 345 fedora-ds-core # chkconfig --level 345 fedora-ds-admin
Ahora solo bastará el comando service para iniciar/parar/reiniciar/ el sub-sistema del directorio cuando sea necesario, ejemplo :
# service fedora-ds-core restart # service fedora-ds-admin restart
Lanzador de escritorio para GNOME
Descargue el archivo launch-ds.sh en el directorio de instalacion de FDS /opt/fedora-ds/, luego lleve el cursor al panel superior de Gnome => Boton derecho => Añadir al Panel, en el tope de esta ventana debe encontrar la opción Lanzador de aplicación personalizado:
Luego complete cada uno de los campos con los datos como lo muestra la siguiente imagen y aplique los cambios:
