66
Configuración e Integración LDAP +SAMBA como PDC Red Hat Enterprise Linux 6.2 GESTIÓN DE REDES DE DATOS SERVICIO NACIONAL DE APRENDIZAJE DIEGO LEON GIL BARRIENTOS Ficha: 464327

Integración LDAP + SAMBA

Embed Size (px)

Citation preview

Page 1: Integración LDAP + SAMBA

Configuración e Integración LDAP +SAMBA como PDC Red Hat Enterprise Linux 6.2 GESTIÓN DE REDES DE DATOS

SERVICIO NACIONAL DE APRENDIZAJE

DIEGO LEON GIL BARRIENTOS

Ficha:

464327

Page 2: Integración LDAP + SAMBA

1

¿Qué es SAMBA?

Es un software que permite a tu ordenador con Ubuntu poder compartir archivos e

impresoras con otras computadoras en una misma red local. Utiliza para ello un

protocolo conocido como SMB/CIFS compatible con sistemas operativos UNIX

o Linux, como Ubuntu, pero además con sistemas Windows (XP, NT, 98...), OS/2

o incluso DOS. También se puede conocer como LAN Manager o NetBIOS.

¿Qué es LDAP?

Es un protocolo estándar que permite administrar directorios, esto es, acceder a

bases de información de usuarios de una red mediante protocolos TCP/IP.

Las bases de información generalmente están relacionadas con los usuarios, pero,

algunas veces, se utilizan con otros propósitos, como el de administrar el

hardware de una compañía.

¿Cuál es el objetivo de esta implementación?

El objetivo principal es lograr la compatibilidad entre sistemas operativos (LINUX y

WINDOWS) mediante samba con los usuarios del árbol de directorio (LDAP).

Page 3: Integración LDAP + SAMBA

2

Requisitos previos a la Implementación

Para este manual trabajaremos con la plataforma Red Hat Enterprise Linux 6.2. NOTA: Funciona también en CentOS 6.X. Utilizare la herramienta de virtualización VirtualBox, y tendré mi respectiva máquina de RHEL con las siguientes características: Inicialmente tener nuestra máquina virtual con un repositorio local basado en nuestra imagen ISO de instalación: http://cyberleon95.blogspot.com/2013/11/habilitar-entorno-grafico-y-repositorio.html

Servidor DNS http://cyberleon95.blogspot.com/2013/11/servidor-dns-red-hat-62.html Servidor DHCP http://cyberleon95.blogspot.com/2013/11/servidor-dhcp-red-hat-62.html Servidor FTP http://cyberleon95.blogspot.com/2013/11/servidor-ftp-red-hat-62_16.html Servidor Web http://cyberleon95.blogspot.com/2013/11/servidor-http-red-hat-62_15.html Cuando contemos con nuestro repositorio local funcional, y los 4 respectivos servicios mencionados anteriormente procedemos a iniciar nuestra configuración. Las características del servidor en el que haré la implementación: Dirección IP: 192.168.10.1 Mascara: 255.255.255.0 Gateway: 192.168.10.254 Dominio completo: dns.cyberleon95.com Dominio corto: cyberleon95.com Arquitectura: X 64

Page 4: Integración LDAP + SAMBA

3

Empezamos iniciando sesión en nuestro supe usuario (Root):

Ahora miramos nuestra dirección IP:

Como podemos ver efectivamente tenemos la dirección 192.168.10.1. NOTA: En la configuración externa de nuestro VirtualBox tenemos nuestro servidor Red Hat en Red Interna.

Page 5: Integración LDAP + SAMBA

4

Verificamos que tengamos disponible nuestro repositorio local:

Procedemos a inicial nuestras instalaciones y configuraciones. NOTA: Para estos primeros paquetes utilizaremos nuestra imagen ISO como repositorio local, pero posteriormente algunos paquetes los descargamos por medio de repositorios webs.

Page 6: Integración LDAP + SAMBA

5

Los siguientes archivos es muy importante configurarlos y adaptarlos de la siguiente forma:

1) Archivo /etc/hosts

2) Nuestra zona directa del DNS

Debemos garantizar al configurar nuestro archivo de la zona directa, que responda ping nuestro dominio corto:

Page 7: Integración LDAP + SAMBA

6

Instalamos OPENLDAP: # yum -y install openldap-servers openldap-clients

Confirmamos nuestra instalación:

Page 8: Integración LDAP + SAMBA

7

Verificamos que el siguiente archivo: # vim /etc/sysconfig/ldap

Comprobamos que tenga la siguiente característica habilitada: SLAPD_LDAPI = yes

Ahora creamos el siguiente archivo en el directorio /etc/openldap # vi /etc/openldap/slapd.conf

Le agregamos lo siguiente: NOTA: El archivo no existe, así que al ejecutar el comando saldrá sin líneas debemos escribir manualmente lo siguiente. pidfile /var/run/openldap/slapd.pid

argsfile /var/run/openldap/slapd.args

Page 9: Integración LDAP + SAMBA

8

Ahora eliminamos todo el contenido del directorio /etc/openldap/slapd.d/ # rm -rf /etc/openldap/slapd.d/*

Ahora crearemos nuestros archivos .ldif, lo hacemos ejecutando el siguiente commando: # slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d

El comando mostrado anteriormente creó los archivos de configuración de LDAP. Ahora procedemos a editarlos y a crear un archivo.

Page 10: Integración LDAP + SAMBA

9

Empezamos editando el siguiente: # vi /etc/openldap/slapd.d/cn=config/olcDatabase\={0}config.ldif

La línea 4 la comentamos y agregamos una nueva. dn: olcDatabase={0}config

objectClass: olcDatabaseConfig

olcDatabase: {0}config

#olcAccess: {0}to * by * none

olcAccess: {0}to * by

dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

manage by * break

olcAddContentAcl: TRUE

olcLastMod: TRUE

olcMaxDerefDepth: 15

olcReadOnly: FALSE

olcRootDN: cn=config

olcSyncUseSubentry: FALSE

olcMonitoring: FALSE

structuralObjectClass: olcDatabaseConfig

entryUUID: 54a95934-67a4-1031-9c0b-6b11c7427936

creatorsName: cn=config

createTimestamp: 20120721172202Z

entryCSN: 20120721172202.648710Z#000000#000#000000

modifiersName: cn=config

modifyTimestamp: 20120721172202Z

Debemos tener mucha precaución de escribir correctamente, algún digito mal escrito y de una nos arrojará error.

Page 11: Integración LDAP + SAMBA

10

Ahora procedemos a crear el siguiente archivo: # vi /etc/openldap/slapd.d/cn=config/olcDatabase\={1}monitor.ldif

Le debemos agregar lo siguiente… dn: olcDatabase={1}monitor

objectClass: olcDatabaseConfig

olcDatabase: {1}monitor

olcAccess: {1}to * by

dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

manage by * break

olcAddContentAcl: FALSE

olcLastMod: TRUE

olcMaxDerefDepth: 15

olcReadOnly: FALSE

olcMonitoring: FALSE

structuralObjectClass: olcDatabaseConfig

creatorsName: cn=config

modifiersName: cn=config

Page 12: Integración LDAP + SAMBA

11

Ahora debemos asignar como usuario y dueño propietario a “ldap” y configurar unos respectivos permisos: # chown -R ldap. /etc/openldap/slapd.d

# chmod -R 700 /etc/openldap/slapd.d

# /etc/rc.d/init.d/slapd start

# chkconfig slapd on

NOTA: Si no nos inicia el servicio slapd debemos analizar el error para identificar que archivo nos quedó mal configurado. #ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/core.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=core,cn=schema,cn=config"

#ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=cosine,cn=schema,cn=config"

#ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=nis,cn=schema,cn=config"

#ldapadd -Y EXTERNAL -H ldapi:/// -f

/etc/openldap/schema/inetorgperson.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=inetorgperson,cn=schema,cn=config"

Page 13: Integración LDAP + SAMBA

12

Ahora que añadimos una entradas, procedemos a crear la contraseña del administrador de openldap: #slappasswd

New password:

Re-enter new password:

El password resultante lo copiamos y lo dejamos en nuestro portapapeles para pegarlo posteriormente en otros archivos.

Page 14: Integración LDAP + SAMBA

13

Ahora creamos un archivo .ldif ya con los datos de nuestro respectivo dominio. El archivo se debe llamar backend.ldif, en el directorio actual que nos encontramos:

# vi backend.ldif

dn: cn=module,cn=config

objectClass: olcModuleList

cn: module

olcModulepath: /usr/lib64/openldap

olcModuleload: back_hdb

dn: olcDatabase=hdb,cn=config

objectClass: olcDatabaseConfig

objectClass: olcHdbConfig

olcDatabase: {2}hdb

olcSuffix: dc=cyberleon95,dc=com

olcDbDirectory: /var/lib/ldap

olcRootDN: cn=admin,dc=cyberleon95,dc=com

olcRootPW: (Pegamos nuestro password generado por slappasswd)

olcDbConfig: set_cachesize 0 2097152 0

olcDbConfig: set_lk_max_objects 1500

olcDbConfig: set_lk_max_locks 1500

olcDbConfig: set_lk_max_lockers 1500

olcDbIndex: objectClass eq

olcLastMod: TRUE

olcMonitoring: TRUE

olcDbCheckpoint: 512 30

olcAccess: to attrs=userPassword by

dn="cn=admin,dc=cyberleon95,dc=com" write by anonymous auth by

self write by * none

olcAccess: to attrs=shadowLastChange by self write by * read

olcAccess: to dn.base="" by * read

olcAccess: to * by dn="cn=admin,dc=cyberleon95,dc=com" write by *

read

NOTA: mucha precaución a la hora de escribir todo este archivo.

Page 15: Integración LDAP + SAMBA

14

# ldapadd -Y EXTERNAL -H ldapi:/// -f backend.ldif

Page 16: Integración LDAP + SAMBA

15

NOTA: si sale error revisamos todos nuestros archivos .ldif, también cabe aclarar que moví el archivo backend.ldif a /root por razones de comodidad, lo cual es indiferente a la hora de añadir la entrada. Si presenta problemas de acceso insuficiente reiniciamos nuestra máquina. Ahora creamos otro archivo llamado frontend.ldif:

# vi frontend.ldif

dn: dc=cyberleon95,dc=com

objectClass: top

objectClass: dcObject

objectclass: organization

o: pamplona local

dc: pamplona

dn: cn=admin,dc=cyberleon95,dc=com

objectClass: simpleSecurityObject

objectClass: organizationalRole

cn: admin

userPassword: (Nuestro Password encriptado lo pegamos de Nuevo)

dn: ou=people,dc=cyberleon95,dc=com

objectClass: organizationalUnit

ou: people

dn: ou=groups,dc=cyberleon95,dc=com

objectClass: organizationalUnit

ou: groups

Page 17: Integración LDAP + SAMBA

16

Cuando este creado el archivo, procedemos a añadirlo al árbol de ldap: # ldapadd -x -D cn=admin,dc=pamplona,dc=local -W -f frontend.ldif

En el password ponemos nuestro escribimos de forma normal (con teclado – no pegar) nuestro password.

Page 18: Integración LDAP + SAMBA

17

Ahora procedemos a instalar y configurar nuestro cliente LDAP. NOTA: Estos paquetes aun los vamos a tomar de nuestro repositorio local DVD. # yum -y install openldap-clients nss-pam-ldapd

Page 19: Integración LDAP + SAMBA

18

Editamos los siguientes archivos con los datos de nuestro dominio:

# vi /etc/openldap/ldap.conf

URI ldap://192.168.10.1/

BASE dc=cyberleon95,dc=com

TLS_CACERTDIR /etc/openldap/certs

# vi /etc/nslcd.conf

uri ldap://192.168.10.1/

base dc=cyberleon95,dc=com

ssl no

tls_cacertdir /etc/openldap/certs

Vamos al final del archivo…

Page 20: Integración LDAP + SAMBA

19

# vi /etc/pam_ldap.conf

#host 127.0.0.1

base dc=cyberleon95,dc=com

Comentamos la linea host….

Page 21: Integración LDAP + SAMBA

20

En el mismo archivo pam_ldap.conf vamos al final y agregamos lo siguiente: uri ldap://192.168.10.1/

ssl no

tls_cacertdir /etc/openldap/certs

pam_password md5

En el siguiente archive agregamos las líneas que se encuentran en Negrita, les agregué un “#” para que las diferencien más fácil, no es necesario agregarlo: # vi /etc/pam.d/system-auth

NOTA: Mucho cuidado a la hora de editar este archivo, de agregar las líneas en el orden indicado y con perfecta escritura.

Page 22: Integración LDAP + SAMBA

21

auth required pam_env.so

auth sufficient pam_unix.so nullok try_first_pass

auth requisite pam_succeed_if.so uid >= 500 quiet

auth sufficient pam_ldap.so use_first_pass ##

auth required pam_deny.so

account required pam_unix.so

account sufficient pam_localuser.so

account sufficient pam_succeed_if.so uid < 500 quiet

account [default=bad success=ok user_unknown=ignore] pam_ldap.so ##

account required pam_permit.so

password requisite pam_cracklib.so try_first_pass retry=3 type=

password sufficient pam_unix.so sha512 shadow nullok try_first_pass

use_authtok

password sufficient pam_ldap.so use_authtok ##

password required pam_deny.so

session optional pam_keyinit.so revoke

session required pam_limits.so

session [success=1 default=ignore] pam_succeed_if.so service in crond

quiet use_uid

session required pam_unix.so

session optional pam_ldap.so ##

session optional pam_mkhomedir.so skel=/etc/skel umask=077 ##

Page 23: Integración LDAP + SAMBA

22

Agregamos la fuente ldap a nuestro archivo nsswitch.conf

# vi /etc/nsswitch.conf

passwd: files ldap

shadow: files ldap

group: files ldap

netgroup: ldap

publickey: nisplus

automount: files ldap

Será simplemente buscar las líneas y adecuarlas…

Page 24: Integración LDAP + SAMBA

23

Ahora editamos el siguiente archivo: # vi /etc/sysconfig/authconfig

USELDAP=yes

NOTA: Este archivo contiene líneas que puede ocasionar fácil confusión, leer bien es súper importante. En mi caso fue la línea 18.

Page 25: Integración LDAP + SAMBA

24

Ejecutamos el siguiente comando para que nuestro servicio nslcd encienda con el sistema por defecto.

# chkconfig nslcd on

Luego de ejecutado este comando, reiniciamos nuestro servidor:

Esperamos…

Page 26: Integración LDAP + SAMBA

25

Ahora procedemos a instalar samba… NOTA: Importante confirmar que tenemos nuestro repositorio local funcional para esta instalación, los paquetes serán tomados de este repo local. # yum -y install samba

Como podemos observar la instalación fue exitosa.

Page 27: Integración LDAP + SAMBA

26

Nos movemos al directorio /tmp #cd /tmp

Creamos el siguiente archivo: #vi schema_convert.conf

Le agregamos las siguientes lineas… include /etc/openldap/schema/core.schema

include /etc/openldap/schema/collective.schema

include /etc/openldap/schema/corba.schema

include /etc/openldap/schema/cosine.schema

include /etc/openldap/schema/duaconf.schema

include /etc/openldap/schema/dyngroup.schema

include /etc/openldap/schema/inetorgperson.schema

include /etc/openldap/schema/java.schema

include /etc/openldap/schema/misc.schema

include /etc/openldap/schema/nis.schema

include /etc/openldap/schema/openldap.schema

include /etc/openldap/schema/ppolicy.schema

include /etc/openldap/schema/samba.schema

Page 28: Integración LDAP + SAMBA

27

Creamos el siguiente directorio: # mkdir ldif_output

Ejecutamos el siguiente commando: slapcat -f schema_convert.conf -F ./ldif_output -n0 -s

"cn={12}samba,cn=schema,cn=config" > ./cn=samba.ldif

Del archivo generado cn=samba.ldif eliminamos el {12}

# vi cn=samba.ldif

Debe quedar del siguiente modo: dn: cn=samba,cn=schema,cn=config

objectClass: olcSchemaConfig

cn: samba

Page 29: Integración LDAP + SAMBA

28

Al final del archivo eliminamos las siguientes líneas: structuralObjectClass: olcSchemaConfig

entryUUID: e24790da-67a9-1031-9ca2-7f12861cadca

creatorsName: cn=config

createTimestamp: 20120721180147Z

entryCSN: 20120721180147.725827Z#000000#000#000000

modifiersName: cn=config

modifyTimestamp: 20120721180147Z

Ejecutamos el siguiente comando: # ldapadd -Y EXTERNAL -H ldapi:/// -f cn=samba.ldif

Page 30: Integración LDAP + SAMBA

29

Ahora creamos un archivo llamado samba_indexes.ldif # vi samba_indexes.ldif

Le agregamos lo siguiente: dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcDbIndex

olcDbIndex: uidNumber eq

olcDbIndex: gidNumber eq

olcDbIndex: loginShell eq

olcDbIndex: uid eq,pres,sub

olcDbIndex: memberUid eq,pres,sub

olcDbIndex: uniqueMember eq,pres

olcDbIndex: sambaSID eq

olcDbIndex: sambaPrimaryGroupSID eq

olcDbIndex: sambaGroupType eq

olcDbIndex: sambaSIDList eq

olcDbIndex: sambaDomainName eq

olcDbIndex: default sub

Ejecutamos este commando: # ldapmodify -Y EXTERNAL -H ldapi:/// -f samba_indexes.ldif

Page 31: Integración LDAP + SAMBA

30

Nos movemos al directorio del usuario Root ejecutando: # cd

Como ya añadimos la entrada al árbol y los archivo del ldap procedemos a borrar todos los archivos de la carpeta /tmp. # rm -rf /tmp/*

Reiniciamos el servicio de slapd. # /etc/rc.d/init.d/slapd restart

Page 32: Integración LDAP + SAMBA

31

Ahora debemos hacer unas configuraciones adicionales y externas a nuestro servidor para habilitar el repositorio EPEL y poder descargar unos paquetes para la correcta instalación de smbldap-tools. Empezamos instalando los siguientes paquetes (aun desde nuestro repositorio local basado en nuestra imagen ISO): # yum install perl*

Nos instalará 101 paquetes. Esperamos…

Luego de esto procedemos a hacer unas configuraciones externas de nuestro servidor (VirtualBox), bien sabemos nuestra maquina se encuentra en red interna por lo tanto no posee internet y cuenta con una IP estática, lo que vamos a hacer es para las siguientes instalaciones cambiar momentáneamente el adaptador de Red Interna a NAT, para que tengamos internet y descarguemos y habilitemos nuestros repositorios.

Page 33: Integración LDAP + SAMBA

32

Como vemos tenemos una IP estática, vamos a VirtualBox y le asignamos el adaptador en NAT.

Aceptamos y vamos a nuestro server. Ejecutamos… # system-config-network

Page 34: Integración LDAP + SAMBA

33

Entramos a Device configuration y dentro de este escogemos nuestra interfaz, en mi caso eth0.

Justo aquí seleccionamos que solicite dirección por medio de DHCP.

Page 35: Integración LDAP + SAMBA

34

Guardamos y ejecutamos lo siguiente para solicitar la nueva dirección IP. # service network restart

Ahora miramos si tenemos una nueva dirección IP y confirmamos con un ping a algún servidor público para garantizar que contamos con acceso a internet.

Page 36: Integración LDAP + SAMBA

35

Hacemos ping a 8.8.8.8

Listo, ahora que tenemos internet utilizamos nuestro navegador interno de nuestro RHEL/CENTOS para descargar e instalar los siguientes paquetes. NOTA: Importante dejo el enlace para que sean descargados de forma específica pero exclusivamente para servidores de 64 bits, caso opuesto deben buscarlos y que sean compatibles con su arquitectura.

Page 37: Integración LDAP + SAMBA

36

Primero descargamos… Perl-Unicode-String https://mega.co.nz/#!MABhCTTR!A0nCzbsa2e-KoDrGje7LEoWb8a7zg5M2hPW9bdAw0yk

Al descargarlo nos movemos al directorio done hayamos guardado el paquete, por defecto es en /root/Downloads.

Ejecutamos lo siguiente para instalarlo. # rpm –Uvh perl-Unicode-String-2.09-12.el6.x86_64.rpm

Luego de instalado este primer paquete descargamos e instalamos el siguiente. Perl-Unicod-Map8 https://mega.co.nz/#!0ZgVmaLJ!Ih0nk_R1PxzyfrjpCXeT_SVI4lLwBgODHzzhuP63qTM

Page 38: Integración LDAP + SAMBA

37

Lo instalamos ejecutando lo siguiente. # rpm –Uvh perl-Unicode-Map8-0.13-1.el6.rfx.x86_64.rpm

Ya instaladas estas dependencias para poder instalar oficialmente el smbldap-tools, agregamos este repositorio (EPEL) en la ruta /etc/yum.repos.d/ [epel]

name=Extra Packages for Enterprise Linux 6 - $basearch

#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-

6&amp;arch=$basearch

failovermethod=priority

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

[epel-debuginfo]

name=Extra Packages for Enterprise Linux 6 - $basearch - Debug

#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch/de

bug

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-

debug-6&amp;arch=$basearch

failovermethod=priority

enabled=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

gpgcheck=1

[epel-source]

name=Extra Packages for Enterprise Linux 6 - $basearch - Source

#baseurl=http://download.fedoraproject.org/pub/epel/6/SRPMS

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-

source-6&amp;arch=$basearch

failovermethod=priority

enabled=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

gpgcheck=1

Page 39: Integración LDAP + SAMBA

38

También lo podemos descargar directamente del siguiente enlace y lo movemos al directorio /etc/yum.repos.d/ https://mega.co.nz/#!4RxHEbxJ!zgvShZzq6lTrnJkHn3Sc8XjE7zf5rqT3hQgN_dgmdRM

Importamos el siguiente archivo del repositorio epel. # rpm --import https://fedoraproject.org/static/0608B895.txt

Ahora deshabilitamos momentáneamente nuestro repositorio local, para asegurarnos que irá a buscar los paquetes al repositorio de EPEL.

Editamos el archivo donde tengamos la configuración del repositorio local.

Page 40: Integración LDAP + SAMBA

39

Cuando cambiemos el enabled por un cero quedará deshabilitado, para que tome nuestro repositorio epel ejecutamos lo siguiente. # yum repolist

Ya tomó nuestro repositorio EPEL, podemos observar que cuenta con 10.809 paquetes, ahora si podemos instalar nuestro smbldap-tools. # yum -y install smbldap-tools

Page 41: Integración LDAP + SAMBA

40

Ahora tenemos instalado perfectamente nuestro smbldap-tools correctamente con sus respectivas dependencias.

Page 42: Integración LDAP + SAMBA

41

Ahora restablecemos la configuración de nuestro server, externamente en el VirtualBox ponemos de nuevo adaptador de red en Red Interna.

NOTA: Para esta instalación con repositorio web utilice un solo adaptador cambiándolo de red interna a NAT, también es posible agregar otro adaptador de red pero recomiendo no hacerlo para evitar errores o confusión con interfaces. Ahora entramos de nuevo al system-config-network.

Page 43: Integración LDAP + SAMBA

42

Quitamos que solicite dirección por DHCP y asignamos de nuevo nuestra dirección IP estática.

Confirmamos que este de nuevo bien configurado nuestro server haciendo ping a nuestro DNS.

Ahora nos movemos al directorio del usuario root: /root # cd

Page 44: Integración LDAP + SAMBA

43

Vamos a renombrar el siguiente archivo, para ello: mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

Copiamos el siguiente archivo también: cp /usr/share/doc/smbldap-tools-0.9.6/smb.conf /etc/samba/smb.conf

Ahora lo editamos… vi /etc/samba/smb.conf

# Global parameters

[global]

workgroup = CYBERLEON95

netbios name = PDC01

security = user

enable privileges = yes

#interfaces = 192.168.5.11

#username map = /etc/samba/smbusers

server string = Samba Server %v

#security = ads

encrypt passwords = Yes

#min passwd length = 3

#pam password change = no

#obey pam restrictions = No

# method 1:

#unix password sync = no

#ldap passwd sync = yes

Page 45: Integración LDAP + SAMBA

44

# method 2:

unix password sync = yes

ldap passwd sync = yes

passwd program = /usr/sbin/smbldap-passwd -u "%u"

passwd chat = "Changing *\nNew password*" %n\n "*Retype new

password*" %n\n"

log level = 0

syslog = 0

log file = /var/log/samba/log.%U

max log size = 100000

time server = Yes

socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

mangling method = hash2

Dos charset = CP932

Unix charset = UTF-8

logon script = logon.bat

logon drive = H:

logon home =

logon path =

domain logons = Yes

domain master = Yes

os level = 65

preferred master = Yes

wins support = yes

passdb backend = ldapsam:ldap://192.168.10.1/

ldap admin dn = cn=admin,dc=cyberleon95,dc=com

ldap suffix = dc=cyberleon95,dc=com

ldap group suffix = ou=Groups

ldap user suffix = ou=Users

ldap machine suffix = ou=Computers

#ldap idmap suffix = ou=Idmap

add user script = /usr/sbin/smbldap-useradd -m "%u"

#ldap delete dn = Yes

delete user script = /usr/sbin/smbldap-userdel "%u"

add machine script = /usr/sbin/smbldap-useradd -t 0 -w "%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/smbldap-groupmod -x

"%u" "%g"

set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'

Page 46: Integración LDAP + SAMBA

45

admin users = sysadmin

ldap ssl = no

# printers configuration

#printer admin = @"Print Operators"

load printers = Yes

create mask = 0640

directory mask = 0750

#force create mode = 0640

#force directory mode = 0750

nt acl support = No

printing = cups

printcap name = cups

deadtime = 10

guest account = nobody

map to guest = Bad User

dont descend = /proc,/dev,/etc,/lib,/lost+found,/initrd

show add printer wizard = yes

; to maintain capital letters in shortcuts in any of the profile

folders:

preserve case = yes

short preserve case = yes

case sensitive = no

Page 47: Integración LDAP + SAMBA

46

Page 48: Integración LDAP + SAMBA

47

Ahora creamos el directorio. # mkdir /home/netlogon

Reiniciamos lo siguientes servicios: # /etc/rc.d/init.d/smb restart

Page 49: Integración LDAP + SAMBA

48

# /etc/rc.d/init.d/nmb restart

Ahora vamos a hacer que estos servicios arranquen con el sistema, para ello ejecutamos: # chkconfig smb on

# chkconfig smb on

Crearemos un password para la integración: # smbpasswd -W

Ahora mediante perl, vamos a configurar lo siguiente; para ello ejecutamos: # perl /usr/share/doc/smbldap-tools-0.9.6/configure.pl

NOTA: Esta configuración es de modo semi-grafico, en el resultado de forma textual específico que se debe hacer, en la gran mayoría simplemente damos “Enter” en otras partes escribimos nuestro password.

Page 50: Integración LDAP + SAMBA

49

Before starting, check

. if your samba controller is up and running.

. if the domain SID is defined (you can get it with the 'net

getlocalsid')

. you can leave the configuration using the Ctrl-c key combination

. empty value can be set with the "." character

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Looking for configuration files...

Samba Configuration File Path [/etc/samba/smb.conf] > Enter

The default directory in which the smbldap configuration files are stored

is shown.

If you need to change this, enter the full directory path, then press

enter to continue.

Smbldap-tools Configuration Directory Path [/etc/smbldap-tools] > Enter

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Let's start configuring the smbldap-tools scripts ...

. workgroup name: name of the domain Samba acts as a PDC for

workgroup name [CYBERLEON95] > Enter

. netbios name: netbios name of the samba controller

netbios name [PDC01] > Enter

. logon drive: local path to which the home directory will be connected

(for NT Workstations). Ex: 'H:'

logon drive [H:] > Enter

. logon home: home directory location (for Win95/98 or NT Workstation).

(use %U as username) Ex:'\\PDC01\%U'

logon home (press the "." character if you don't want homeDirectory)

[\\PDC01\%U] > Enter

. logon path: directory where roaming profiles are stored.

Ex:'\\PDC01\profiles\%U'

logon path (press the "." character if you don't want roaming profiles)

[\\PDC01\profiles\%U] > .

. home directory prefix (use %U as username) [/home/%U] > Enter

. default users' homeDirectory mode [700] > Enter

. default user netlogon script (use %U as username) [logon.bat] > Enter

default password validation time (time in days) [45] > Enter

. ldap suffix [dc=cyberleon95,dc=com] > Enter

. ldap group suffix [ou=Groups] > Enter

. ldap user suffix [ou=Users] > Enter

. ldap machine suffix [ou=Computers] > Enter

. Idmap suffix [ou=Idmap] > Enter

. sambaUnixIdPooldn: object where you want to store the next uidNumber

and gidNumber available for new users and groups

sambaUnixIdPooldn object (relative to ${suffix})

Page 51: Integración LDAP + SAMBA

50

[sambaDomainName=CYBERLEON95] >

. ldap master server: IP address or DNS name of the master (writable)

ldap server

ldap master server [192.168.10.1] > Enter

. ldap master port [389] > Enter

. ldap master bind dn [cn=admin,dc=cyberleon95,dc=com] > Enter

. ldap master bind password [] > Ingresamos El PASSWORD

. ldap slave server: IP address or DNS name of the slave ldap server: can

also be the master one

ldap slave server [192.168.10.1] > Enter

. ldap slave port [389] > Enter

. ldap slave bind dn [cn=admin,dc=cyberleon95,dc=com] > Enter

. ldap slave bind password [] > Ingresamos El PASSWORD

. ldap tls support (1/0) [0] > Enter

. SID for domain CYBERLEON95: SID of the domain (can be obtained with

'net getlocalsid PDC01')

SID for domain CYBERLEON95 [S-1-5-21-3173375413-340090289-266529731] >

Enter

. unix password encryption: encryption used for unix passwords

unix password encryption (CRYPT, MD5, SMD5, SSHA, SHA) [SSHA] > Enter

. default user gidNumber [513] > Enter

. default computer gidNumber [515] > Enter

. default login shell [/bin/bash] > Enter

. default skeleton directory [/etc/skel] > Enter

. default domain name to append to mail address [] > Enter

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

backup old configuration files:

/etc/smbldap-tools/smbldap.conf->/etc/smbldap-tools/smbldap.conf.old

/etc/smbldap-tools/smbldap_bind.conf->/etc/smbldap-

tools/smbldap_bind.conf.old

writing new configuration file:

/etc/smbldap-tools/smbldap.conf done.

/etc/smbldap-tools/smbldap_bind.conf done.

Page 52: Integración LDAP + SAMBA

51

Ahora ejecutamos lo siguiente: # smbldap-populate

En la última parte escribimos nuestro password.

Ahora creamos el usuario y grupo “sysadmin” # smbldap-groupadd -a sysadmin

Page 53: Integración LDAP + SAMBA

52

Confirmamos la existencia del usuario: # su - sysadmin

Ahora creamos un usuario cualquiera para hacer pruebas: # smbldap-useradd -am diego

# smbldap-groupmod -m diego "Domain Users"

adding user diego to group Domain Users

# smbldap-passwd diego

Changing UNIX and samba passwords for diego

New password:

Retype new password:

Confirmamos la existencia y nos logueamos en el…

Page 54: Integración LDAP + SAMBA

53

NOTA: Importante aclarar que estos usuarios que creamos no son usuarios del sistema, lo podemos comprobar cerrando sesión o reiniciando nuestro server.

Son usuarios en el árbol de directorio de OPENLDAP integrado con samba mediante la herramienta smbldap-tools. Continuamos nuestras últimas configuraciones, ahora desactivamos nuestro SELINUX. # vi /etc/sysconfig/selinux

SELINUX=disabled

Page 55: Integración LDAP + SAMBA

54

Para la práctica vamos a bajar nuestro firewall pero podemos configurarlo hacienda las siguiente excepciones. En el firewall podemos habilitar los puertos correspondientes (TCP: 139, 389,445 y

UDP: 137,138), para el ejemplo lo deshabilitamos...

# /etc/init.d/iptables stop

Esta es toda nuestra configuración necesaria en nuestro servidor ahora podemos

unir a nuestro dominio nuestros clientes con sistema operativo Windows y no

tendremos ningún tipo de problema de compatibilidad.

NOTA: Para los sistemas operativos más contemporáneos como son Windows 7,

Windows 8 para unirlo al dominio podemos hacerlo haciendo unas modificaciones

en nuestro registro de Windows (Regedit).

Más información sobre la unión con sistemas operativos contemporáneos:

http://dolphion.blogspot.com/2013/04/windows-78-en-samba-pdc.html

Para esta prueba usare un Windows XP.

Page 56: Integración LDAP + SAMBA

55

Encendemos nuestra máquina virtual con Windows XP, importante recordar

tenerla igual que nuestro servidor en red Interna.

Page 57: Integración LDAP + SAMBA

56

Vamos a conexiones de red en nuestro Windows XP.

Confirmamos que nuestro cliente este solicitando dirección y DNS por medio de

DHCP a nuestro servidor.

Comprobamos en nuestra consola de comandos de Windows…

Page 58: Integración LDAP + SAMBA

57

Hacemos ping a nuestro servidor.

Ahora volvemos a Configuraciones de red y vamos agregar nuestro servidor

WINS.

Los servidores de Servicio de nombres Internet de Windows (WINS) asignan

dinámicamente direcciones IP a nombres de equipo (nombres NetBIOS). Esto

permite a los usuarios tener acceso a los recursos a través del nombre del equipo

en lugar de a través de la dirección IP. Si desea que el equipo realice un

seguimiento de los nombres y direcciones IP de otros equipos de la red,

configúrelo como un servidor WINS.

Page 59: Integración LDAP + SAMBA

58

Vamos a opciones avanzadas…

Lo agregamos…

Page 60: Integración LDAP + SAMBA

59

NOTA: Es la dirección IP estática de nuestro servidor.

Aceptamos y guardamos todo y procedemos a unir nuestro cliente al dominio.

Vamos a Mi PC > clic derecho propiedades.

Page 61: Integración LDAP + SAMBA

60

Vamos a nombre de equipo y seleccionamos cambiar el nombre de este equipo o

unirse a un dominio…

Page 62: Integración LDAP + SAMBA

61

En esta parte ponemos nuestro usuario de acceso llamado “sysadmin”, luego de

estar unidos al dominio podemos cambiar por el usuario de prueba “diego”.

Esperamos un momento que se comunique con nuestro servidor y esperamos que

se una de forma exitosa con nuestro dominio.

Page 63: Integración LDAP + SAMBA

62

Se reiniciará nuestro Windows XP…

Presionamos Ctrl + Alt + Supr y escogemos como loguearnos.

Page 64: Integración LDAP + SAMBA

63

Vamos a opciones…

Seleccionamos en conectarse a: escogemos nuestro dominio en mi caso es

CYBERLEON95.

Page 65: Integración LDAP + SAMBA

64

Ahora si escribimos nuestro usuario de prueba con su respectiva contraseña y le

damos aceptar…

Inmediatamente se conectará con nuestro servidor a nuestro usuario y cargara las

configuraciones básicas de escritorio.

Page 66: Integración LDAP + SAMBA

65

Confirmamos mirando de nuevo las propiedades del equipo y vemos que

efectivamente está unido al dominio.

De esta forma tenemos nuestro Servidor Red Hat Enterprise Linux 6.2 con

OPENLDAP y SAMBA como PDC.

NOTA: Si queremos restablecer o necesitamos algún paquete del repositorio local

simplemente deshabilitamos el repositorio EPEL y habilitamos el local; ejecutamos

“yum repolist” y listo.