Inicio Artículos técnicos Experiencia Técnica Autenticar máquinas Linux contra un dominio Samba4 Active Directory

Autenticar máquinas Linux contra un dominio Samba4 Active Directory

E-mail Imprimir PDF
Usar puntuación: / 1
MaloBueno 

Continúo realizando experimentos con SAMBA4 Active Directory. En esta oportunidad voy a documentar dos maneras para autenticar máquinas Linux contra un dominio SAMBA4AD. La idea es tomar los usuarios, claves y grupos almacenados para implementar servicos de proxy cache con Squid 3, compartir archivos con Samba 3.x y configurar servicios de correo electrónico. Son dos los métodos de autenticación: el primero utilizando Winbind (probados en Ubuntu 9.10 y Debian 5.0.x con éxito)  y el segundo utilizando una aplicación llamada LikeWise Open (que funciona perfecto con Ubuntu 9.10 pero no con Debian 5.0.x).

 

i) Para Debian Lenny:

 

i.i)  Verificamos que el archivo /etc/resolv.conf tenga el nombre del servidor Samba 4 AD incluido.

# nano /etc/resolv.conf

i.ii) Instalamos la suite de samba 3.x y Kerberos 5.x

# aptitude install krb5-config krb5-user libkrb53 libpam-krb5 krb5-auth-dialog krb5-clients samba-common samba winbind smbclient samba-tools

 

i.iii) Utilizaremos como base para el /etc/smb.conf el siguiente archivo. Para revisar con detalle lo que hace cada linea recomiendo revisar la página oficial de Samba.

[global]
workgroup = EJEMPLO
password server = servidor.ejemplo.com
realm = EJEMPLO.COM.VE
netbios name = NOMBREDETUMAQUINALINUX
security = ads
idmap uid = 10000-20000
idmap gid = 10000-20000
template homedir = /home/EJEMPLO/%U
template shell = /bin/bash
winbind separator = +
winbind enum users = yes
winbind enum groups = yes
winbind cache time = 10
auth methods = winbind
username = %u
add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
winbind use default domain = true
winbind offline logon = false

 

Puedes seguir agregando opciones a gusto pero esta es la base.

 

i.iv) Debemos crear el directorio /home/EJEMPLO con permisos de lectura, escritura y ejecución.

 

i.v) Modificamos el archivo /etc/krb5.conf

 

 

Como base para el krb5.conf utilizaremos el siguiente archivo:

[logging]
 default = FILE:/var/log/krb5.log

[libdefaults]
 default_realm = EJEMPLO.COM.VE
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 forwardable = yes
 kdc_timesync = 1
 ccache_type = 4
 forwardable = true
 proxiable = true

[realms]
 EJEMPLO.COM.VE = {
 kdc = servidor.ejemplo.com.ve:88
 admin_server = servidor.ejemplo.com.ve:749
 default_domain = ejemplo.com.ve
 }
[domain_realm]
 .ejemplo.com.ve = EJEMPLO.COM.VE
 ejemplo.com.ve = EJEMPLO.COM.VE


Sin embargo, recomiendo utilizar el mismo que genera Samba4 AD en la carpeta /usr/local/samba/private/krb5.conf

i.vi) Probemos kerberos

# kinit Administrator
# klist

 

En este punto, en teoría podemos hacer un /etc/init.d/samba restart y /etc/init.d/winbind restart y proceder a pegar la máquina al dominio. Sino, reinicia.

i.vii) Agregamos la maquina al dominio.

# net join ads -U Administrator -S ip_o_nombre_de_la_maquina

 

Quizás dé un error en este punto y te vuelva a pedir la clave de administrator. Estoy trabajando para mejorar este punto.

Probamos que funcione winbind:

# wbinfo -t
# wbinfo -u
# wbinfo -g

 

i.vii) Ahora a configurar el proceso de autenticación.


En el archivo /etc/pam.d/samba agregamos las líneas:

auth required /lib/security/pam_winbind.so
account required /lib/security/pam_winbind.so

 

En el archivo /etc/nsswitch.conf agregamos

passwd:      compat winbind
group:       compat winbind
shadow:      compat 

 

Reiniciamos:

Comprobamos que ahora los usuarios esten el listado del sistema:

# getent passwd


Y observamos los usuarios creados con Samba 4 AD

 

i.viii) Terminamos de configurar la autenticación.


En el archivo /etc/pam.d/common-account agregamos:

 

account    sufficient    pam_winbind.so
account    required    pam_unix.so

 

En el archivo etc/pam.d/common-auth agregamos:

auth    sufficient    pam_winbind.so
auth    required    pam_unix.so use_first_pass nullok_secure

 

En el archivo /etc/pam.d/common-session agregamos:

session    required    pam_mkhomedir.so skel=/etc/skel/ umask=0066
session    sufficient    pam_winbind.so
session required    pam_unix.so

 

i.ix) Reiniciamos y ahora podremos entrar con los usuarios.

 

Para Ubuntu 9.10


Karmic Koala trae un utilitario muy sencillo que permite agregar máquinas a un dominio de MS AD o de Samba4 AD de forma sencilla. Se llama likewise-open.

Para instalarlo:


# aptitude install likewise-open5 likewise-open5-eventlog likewise-open5-eventlog likewise-open5-lsass likewise-open5-netlogon likewise-open5-rpc

 

Y si tienes entorno gráfico agrega el GUI:


# aptitude install likewise-open5-gui


Ahora es tan sencillo como:

 

# domainjoin-cli ejemplo.com.ve Administrator

 

Referencia bibliográfica:

http://www.held-im-ruhestand.de/software/samba-and-active-directory
http://www.surlyjake.com/linux/samba/join-debian-lenny-to-active-directory-using-samba/
http://www.likewiseopen.org/

Comentarios (1)
  • Ivan Martinez  - Ahora puedes dejar tu comentario aquí
    avatar

    Puedes utilizar este canal para dejar tus preguntas e inquietudes. Solo debes registrarte. :D

¡Sólo los usuarios registrados pueden escribir comentarios!

Curriculum Vitae

  • Contácto
  • Twitter
  • Estadísticas

Para contactarme puedes usar:

My status

- Skype:
  cybercanibal
- Gmail:
  cybercanibal *arroba*gmail.com
- ICQ: 13588975
- Yahoo messenger:
   cybercanibal
- MSN messenger:
  cybercanibal *arroba*hotmail.com

RSS

Newsflash

"¡Triste época la nuestra! Es más fácil desintegrar un átomo que un prejuicio." Albert Einstein