Configuracio Basica de Directory Server en CentOS

Page 1

Configuración básica • En el tipo de instalación elija la opción por defecto: instalación típica, • Inserte el nombre fqdn de nuestro servidor: lobezno.colegio.int, • Dejamos por defecto el usuario y el grupo con el que correrá (nobody,nobody), • No queremos unirnos a un directorio anterior (es nuestra primera instalación), • Ahora es el turno de la contraseña del usuario admin (para loguearnos en la consola), • El dominio: colegio.int, • El puerto por defecto de ldap (389), el nombre del servidor y la raíz del directorio, • Ahora el usuario “Directory Manager” para realizar operaciones con el directorio, • Por último el puerto donde levantaremos la interfaz web del servidor de administración. [root@lobezno ~]# yum install openldap-clients [root@lobezno lib]# ldapsearch -x -h localhost -s base -b "" "objectclass=*" [root@lobezno ~]# yum install migrationtools Samba Samba-common Samba-client smbldap-tools • Los esquemas se encuentran en: /opt/fedora-ds/slapd-<server>/config/schema, • Los esquemas se cargan de manera secuencial siendo siempre el último 99user.ldif. En este documento vamos a llamar al esquema de Samba 61Samba.ldif, necesitamos convertir el esquema de Samba típico de ldap en uno que entienda nuestro directorio, para eso desde Fedora nos proporcionan un script para la conversión que podemos bajar desde aquí [4]. [root@lobezno ~]# perl ol-schemamigrate.pl -b /usr/share/doc/Samba*/LDAP/Samba.schema > /etc/dirsrv/slapd-lobezno/schema/61Samba.ldif Ahora reinicie el servicio para ver que carga el esquema correctamente. PAM-LDAP yum install nss_ldap. authconfig-gtk


authconfig –enableldap –enableldapauth –disablenis –enablecache --ldapserver=lobezno.colegio.int --ldapbasedn=dc=colegio,dc=int --updateall El archivo /etc/nsswitch.conf determina en qué orden el sistema busca información sobre los host, usuarios grupos, redes etc.,prestaremos atención a donde buscamos los usuarios (passwd), las contraseñas (shadow) y los grupos (group) verificando que además de en los ficheros (files) lo hace en el directorio (ldap). passwd: files ldap shadow: files ldap group: files ldap El fichero /etc/ldap.conf es el utilizado por pam_ldap y las bibliotecas NSS para la autenticación y la resolución de nombres, revise el Listado 2 para su configuración. Listado 2. Fichero /etc/ldap.conf base dc=colegio,dc=int ldap_version 3 binddn cn=Directory Manager bindpw 12345 rootbinddn cn=admin,dc=colegio,dc=int timelimit 120 bind_timelimit 120 idle_timelimit 3600 bind_policy soft pam_filter objectclass=account pam_login_attribute uid nss_base_passwd ou=People,dc=colegio,dc=int?one nss_base_passwd ou=Computers,dc=colegio,dc=int?one nss_base_shadow ou=People,dc=colegio,dc=int?one nss_base_group ou=Groups,dc=colegio,dc=int?one nss_initgroups_ignoreusers root,ldap,named,avahi,haldaemon,dbus,radvd, tomcat,radiusd,news,mailman,nscd,gdm,polkit uri ldap://lobezno.colegio.int/ ssl no pam_password md5 Resaltar del Listado 2 la línea en negrita, donde repetimos la entrada para nss_base_passwd apuntando a la rama de los equipos del dominio, ya que Samba3 necesita de nss_ldap para encontrar el uid+gid de las máquinas del dominio, podíamos haber resuelto esto también colocando los equipos dentro de la rama de usuarios. Para comprobar que todo está funcionando podemos ejecutar getent passwd y getent group para ver que consultamos el directorio a la hora de obtener los usuarios y los grupos.


Configuraci贸n de Samba Nos toca decirle al servidor Samba que busque a los usuarios en el directorio y que se comporte como un PDC de Windows. El fichero de configuraci贸n de Samba se encuentra en /etc/samba/smb.conf. Debemos modificar la configuraci贸n de Samba para que se asemeje a la que aparece en el Listado 3. Listado 3. Fichero configuraci贸n Samba [global] #--------Parametros de red ----------------------------------------------------------------workgroup = COLEGIO server string = Samba Server Version %v netbios name = LOBEZNO interfaces = lo eth0 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 #--------------- Parametros de log --------------------------------------------------------log file = /var/log/Samba/log.%m max log size = 50 #---------- Controlador de Dominio---------------------------------------------------------security = user domain master = yes domain logons = yes logon path = os level = 65 preferred master = yes encrypt passwords = yes #----------------- Impresion---------------------------------------------------------------load printers = yes cups options = raw #--------------- Sistema de archivos-------------------------------------------------------profile acls = yes nt acl support = yes #------------------------- Ntp y Wins -----------------------------------------------------time server = yes wins support = yes #----------------Ldap ---------------------------------------------------------------------admin users = Administrator @"Domain Admins" passdb backend = ldapsam:ldap://lobezno.colegio.int ldap suffix = dc=colegio,dc=int ldap user suffix = ou=People ldap group suffix = ou=Groups ldap machine suffix = ou=Computers ldap admin dn = cn=Directory Manager ldap passwd sync = yes ldap ssl = no


add machine script = /usr/sbin/smbldap-useradd -w %u passwd program = /usr/sbin/smbldap-passwd %u passwd chat = *New*password* %n\n*Retype*new*password* %n\n *all*authentication*tokens*updated* add user script = /usr/sbin/smbldap-useradd -m "%u" ldap delete dn = Yes delete user script = /usr/sbin/smbldap-userdel "%u" add group script = /usr/sbin/smbldap-groupadd -p "%g" delete group script = /usr/sbin/smbldap-groupdel "%g" add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g" delete user from group script = /usr/sbin/smbldapgroupmod -x "%u" "%g" set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u" #------------------ Directorios Compartidos-----------------------------------------------------------[homes] comment = Home Directories browseable = no writable = yes valid users = %S [printers] comment = All Printers path = /var/spool/samba browseable = no guest ok = no writable = no printable = yes [netlogon] comment = Network Logon Service path = /var/lib/samba/netlogon guest ok = yes writable = no share modes = no [profiles] path = /var/lib/samba/profiles browseable = yes guest ok = yes create mask = 0600 directory mask = 0700 [public] comment = Directorio Publico path = /home/samba public = yes writable = yes printable = no


Una vez configurado el servicio, ejecute testparm (herramienta para testear la configuración perteneciente a la suite de Samba) prestando atención a las siguientes entradas Server role: ROLE_DOMAIN_PDC y por supuesto a Loaded services file OK que verifica que el archivo es correcto. Creamos los directorios necesarios como aparece en el Listado 4. Listado 4. Directorios Samba mkdir -p /var/lib/samba mkdir /var/lib/samba/{netlogon,profiles} chown root:root -R /var/lib/samba chmod 0755 /var/lib/samba/netlogon chmod 1755 /var/lib/samba/profiles

El único parámetro que no aparece en el fichero de configuración y que es necesario para que el administrador pueda llevar a cabo las operaciones necesarias sobre el servidor, es la contraseña que le permita autentificarse. Creamos el password del usuario Manager en la bbdd de Samba: [root@lobezno Samba]# smbpasswd -w 12345 Setting stored password for "cn=Directory Manager" in secrets.tdb Interactuando con el directorio: smbldap-tools [root@lobezno etc]# net getlocalsid SID for domain LOBEZNO is: S-1-5-21XXXXXXXXX-XXXXXXXXX-XXXXXXXXX Si obtenemos una respuesta como la de arriba es que vamos por el buen camino, hasta ahora no hemos iniciado todavía el servicio de Samba y no debe estar iniciado para conseguir el SID. Ahora edite el fichero /etc/smbldap-tools/smbldap_bind.conf para colocar las credenciales para el acceso de smbldap-tools al directorio: slaveDN="cn=Directory Manager" slavePw="12345" masterDN="cn=Directory Manager" masterPw="12345"


Continúe modificando el fichero de configuración principal de smbldaptools: /etc/smbldaptools/smbldap.conf (vea Listado 5) para configurar cómo interactúa smbldaptools con nuestro directorio. SID="S-1-5-21-XXXXXXXXX-XXXXXXXXX-XXXXXXXXX" SambaDomain="COLEGIO" slaveLDAP="127.0.0.1" slavePort="389" masterLDAP="127.0.0.1" masterPort="389" ldapTLS="0" ldapSSL="0" verify="none" suffix="dc=colegio,dc=int" usersdn="ou=People,${suffix}" computersdn="ou=Computers,${suffix}" groupsdn="ou=Groups,${suffix}" SambaUnixIdPooldn="SambaDomainName=${SambaDomain},${suffix}" scope="sub" hash_encrypt="SSHA" crypt_salt_format="%s" userLoginShell="/bin/bash" userHome="/home/%U" userHomeDirectoryMode="700" userGecos="System User" defaultUserGid="513" defaultComputerGid="515" skeletonDir="/etc/skel" userSmbHome="\\LOBEZNO\%U" userProfile="\\LOBEZNO\profiles\%U" userHomeDrive="H:" mailDomain="colegio.int" with_smbpasswd="0" smbpasswd="/usr/bin/smbpasswd" with_slappasswd="0" slappasswd="/usr/sbin/slappasswd" Es el momento de “poblar” nuestro directorio, arranque los servicios de Samba y de directorio, y ejecute smbldap-populate -a Administrator (detallamos la salida del comando en el Listado 6). Revise que todo ha sucedido como esperábamos dando un vistazo al mapeo de grupos (Listado7). [root@lobezno ~]# smbldap-populate -a Administrator Populating LDAP directory for domain COLEGIO (S-1-5-21XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)


(using builtin directory structure) adding new entry: dc=colegio,dc=int adding new entry: ou=People,dc=colegio,dc=int adding new entry: ou=Group,dc=colegio,dc=int adding new entry: ou=Computers,dc=colegio,dc=int adding new entry: ou=Idmap,dc=colegio,dc=int adding new entry: uid=Administrator,ou=People,dc=colegio,dc=int adding new entry: uid=nobody,ou=People,dc=colegio,dc=int adding new entry: cn=Domain Admins,ou=Group,dc=colegio,dc=int adding new entry: cn=Domain Users,ou=Group,dc=colegio,dc=int adding new entry: cn=Domain Guests,ou=Group,dc=colegio,dc=int adding new entry: cn=Domain Computers,ou=Group,dc=colegio,dc=int adding new entry: cn=Administrators,ou=Group,dc=colegio,dc=int adding new entry: cn=Account Operators,ou=Group,dc=colegio,dc=int adding new entry: cn=Print Operators,ou=Group,dc=colegio,dc=int adding new entry: cn=Backup Operators,ou=Group,dc=colegio,dc=int adding new entry: cn=Replicators,ou=Group,dc=colegio,dc=int adding new entry: SambaDomainName=COLEGIO,dc=colegio,dc=int Please provide a password for the domain Administrator: Changing password for Administrator New password : Retype new password :

Ahora es el momento de crear una cuenta para un usuario del dominio: smbldap-useradd -m -a antonio con el modificador -a aclaramos que es un usuario de Windows y con -m le creamos un directorio home, para más información consulte la página man del comando. Establezca también el password del usuario smbldap-passwd antonio. Configuración de DNS (bind9) Al igual que cuando configuramos un dominio con Active Directory necesitamos un servidor DNS en nuestra red para permitir a los clientes Windows unirse al dominio. BIND es el servidor de nombres de dominio más popular en Internet, y el más usado en plataformas Linux, se caracteriza por su flexibilidad y seguridad. La instalación mediante yum se reduce a ejecutar en una consola como root yum install bind. El servidor de nuestra red resolverá los nombres de nuestro dominio interno colegio.int y reenviará las peticiones de otros dominios a los servidores DNS de nuestro proveedor. La configuración de este servicio se sale del objetivo de este artículo, en su auxilio Fedora le ofrece una herramienta gráfica para su configuración system-configbind que puede instalar vía yum: yum install system-config-bind. Ahora detallamos (vea el Listado 8) las modificaciones que debe realizar en la configuración de su zona para que los clientes Windows “conozcan” a nuestro servidor como un controlador de dominio a la hora de iniciar sesión.


Integración con Postfix La documentación oficial de Postfix [6] es un buen punto de partida para la integración de nuestro directorio con un servidor de correo. Solamente añadir que 389-ds también es algo particular a la hora de integrarse en el correo y por compatibilidad con el antiguo directorio de Netscape usa el Objeto mailgroup en lugar del usual CourierMailAccount, para ampliar puede dirigirse al correspondiente apartado en el wiki de Fedora[7]. Configuración del cliente Windows El procedimiento para unir la máquina Windows al dominio es el mismo que realzaría si el controlador de dominio fuera un Windows 2003. Suponemos que el cliente Windows tiene esta configuración de red: IP : 192.168.1.201 Gateway: 192.168.1.1 Mascara de Red: 255.255.255.0 DNS: 192.168.1.200 Dominio de Búsqueda: colegio.int Los pasos a seguir serían: • Ingrese en la estación de trabajo como administrador, • Botón derecho en “Mi Pc”, clic en “Propiedades”, • Clic en la pestaña “Nombre de Equipo”, • Clic en el botón “cambiar”, • Seleccione “Dominio” y escriba “COLEGIO”, • Clic en el botón Aceptar, • En la caja que aparece introduzca el usuario “Administrator” y la clave. Código: echo "net.ipv4.tcp_keepalive_time = 300" >> /etc/sysctl.conf echo "fs.file-max = 64000" >> /etc/sysctl.conf echo "* soft nofile 8192" >> /etc/security/limits.conf echo "* hard nofile 8192" >> /etc/security/limits.conf echo "ulimit -n 8192" >> /etc/profile echo "64000" > /proc/sys/fs/file-max echo "net.ipv4.ip_local_port_range = 1024 65000" >> /etc/ sysctl.conf Listado 5. Configuración de smbldap-tools Listado 6. Salida del comando smbldap-populate Código:


[root@lobezno ~]# service dirsrv start Starting dirsrv: lobezno... [ OK ] [root@lobezno ~]# service smb start Iniciando servicios SMB: [ OK ] Listado 7. Salida net groupmap list C贸digo: [root@lobezno ~]# net groupmap list Domain Admins (S-1-5-21-1375073545-2757690610-XXXXXXXXX-512) -> Domain Admins Domain Users (S-1-5-21-1375073545-2757690610-XXXXXXXXX-513) -> Domain Users Domain Guests (S-1-5-21-1375073545-2757690610-XXXXXXXXX-514) -> Domain Guests Domain Computers (S-1-5-21-1375073545-2757690610-XXXXXXXXX-515) -> Domain Computers Administrators (S-1-5-32-544) -> Administrators Account Operators (S-1-5-32-548) -> Account Operators Print Operators (S-1-5-32-550) -> Print Operators Backup Operators (S-1-5-32-551) -> Backup Operators Replicators (S-1-5-32-552) -> Replicators [root@lobezno ~]# Listado 8. Zona DNS root@lobezno ~]# cat /var/named/colegio.int.hosts $ttl 38400 colegio.int. IN SOA lobezno. administrator.colegio.int. (1256845598 10800 3600 604800 38400 ) colegio.int. IN NS lobezno. lobezno A 192.168.1.200 malaspina A 192.168.1.201 _ldap._tcp.dc._msdcs SRV 0 100 389 lobezno _ldap._tcp.pdc._msdcs SRV 0 100 389 lobezno IN 1H SRV 0 100 389 lobezno.colegio.int _ldap._tcp SRV 0 100 389 lobezno _ldap._tcp.colegio.int-site._sites SRV 0 100 389 lobezno _ldap._tcp.colegio.int_site._sites.dc_msdcs SRV 0 100 389 lobezno _ldap._tcp.gc._msdcs SRV 0 100 389 lobezno _gc._tcp SRV 0 100 3268 lobezno _gc._tcp.colegio.int-site._sites SRV 0 100 3268 lobezno



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.