Como configurar un Dominio Samba con openLDAP en CentOS 4.X

Manual openLDAP Samba

Dominio Samba con OpenLDAP (Parte 1: Configuracion General)

Autor: Jaime M. Tan Nozawa
Correo electrónico: jtnozawa@gmail.com
Procedencia del autor: Lima-Perú

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.

© 2007 Jaime M.Tan Nozawa. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicación, a través de cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.

Introducción.

LDAP (Lightweight Directory Access Protocol) es un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red. LDAP puede considerarse una base de datos (aunque su sistema de almacenamiento puede ser diferente) al que pueden realizarse consultas.
URL: http://es.wikipedia.org/wiki/LDAP

SMB (acrónimo de Server Message Block)  Protocolo de red que permite compartir archivos e impresoras (entre otras cosas) entre nodos de una red. Es utilizado principalmente en ordenadores con Microsoft Windows.  SMB fue originalmente inventado por IBM, pero la versión más común hoy en día es la modificada ampliamente por Microsoft. Microsoft renombró SMB a Common Internet File System (CIFS) en 1998 y añadió más características, que incluyen soporte para enlaces simbólicos, enlaces duros (hard links) y mayores tamaños de archivo.
URL: http://es.wikipedia.org/wiki/SMB

OpenLDAP es una implementación libre y open source del protoloco Lightweight Directory Access Protocol (LDAP) desarrollado por  elOpenLDAP Project. Está liberada bajo su propia licencia OpenLDAP Public License. LDAP es un protoloco independiente de la plataforma. Muchas distribuciones  Linux incluyen el software OpenLDAP para su soporte.

SAMBA es un conjunto de programas, originalmente creados por Andrew Tridgell y actualmente mantenidos por The SAMBA Team, bajo la Licencia Publica General GNU, y que implementan en sistemas basados sobre UNIX® el protocolo SMB. Sirve como reemplazo total para Windows® NT, Warp®, NFS® o servidores Netware®.

Equipamiento lógico requerido.

•  openldap-2.2.13
•  openldap-clients-2.2.13
•  openldap-servers-2.2.
•  authconfig-4.6.10
samba-client
•  samba 

Instalación a través de yum.

 yum -y install openldap openldap-clients openldap-servers authconfig authconfig-gtk perl-XML gcc samba samba-client samba-common perl-LDAP

Instalación a través de up2date.

up2date -i openldap openldap-clients openldap-servers authconfig authconfig-gtk  gcc samba samba-client samba-common perl-LDAP

Procedimientos:

Para comenzar a utilizar este tutorial se asume pudo implementar satisfactoriamente el tutorial: un openLDAP como servidor de autenticación y el tutorial : Cómo configurar SAMBA de Joel Barrios. Algunas pequeñas fracciones y configuración de este documento fueron extraidas de los manuales previamente mencionados para brindar una mejor comprensión e hilo del tutorial.  

Vamos a copiar el archivo de esquema de samba al directorio de esquemas de openLDAP:

cp /usr/share/doc/samba-*/LDAP/samba.schema /etc/openldap/schema/

Luego de esto editaremos el archivo /etc/openldap/slapd.conf y agregar una linea más para que openLDAP soporte el esquema de samba. El archivo quedaría como lo siguiente:

# # See slapd.conf(5) for details on configuration options. 
# This file should NOT be world readable.
#
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/samba.schema

Añadimos al final del archivo /etc/openldap/slapd.conf :

database bdb 
suffix "dc=su-red-local,dc=com"
rootdn "cn=Administrador,dc=su-red-local,dc=com"
rootpw {SSHA}XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
directory /var/lib/ldap/autenticar
# Indices to maintain for this database
index objectClass eq
index cn pres,sub,eq
index sn pres,sub,eq
index uid pres,sub,eq
index displayName pres,sub,eq
index uidNumber eq
index gidNumber eq
index memberUID eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
index default sub

Tenemos que configurar los parametros globales como cliente(NSS), el mismo servidor localhost  en /etc/ldap.conf :

host 127.0.0.1
base dc=su-red-local,dc=com

Tambien tenemos que configurar el cliente LDAP en /etc/openldap/ldap.conf :

HOST 127.0.0.1
BASE dc=su-red-local,dc=com

Iniciamos el servicio LDAP y configuramos que arranque por defecto:

service ldap start 
chkconfig ldap on

Configuramos la autenticación de Linux con authconfig :

captura authconfig01

Captura authconfig02

Ahora configuremos Samba en /etc/samba/smb.conf

 # Samba PDC openLDAP
# x Jaime M. Tan Nozawa

# Nombre del dominio : podria ser nombre de la empresa.
workgroup = DOMAIN
server string = Samba Server
#Nombre Netbios de la maquina
 netbios name = LINUX

# ----- Parametros LDAP -----

#Quien va a ser el usuario administrador del dominio
admin users = Administrator @"Domain Admins"
passdb backend = ldapsam:ldap://localhost
#Sufijo ldap para todas las entradas siguientes
ldap suffix = dc=su-red-local,dc=com
# OU de usuarios netbios
ldap user suffix = ou=People
# OU de Grupos netbios
ldap group suffix = ou=Group
# Cuentas maquinas netbios
ldap machine suffix = ou=Computers
# La cuenta administrador openLDAP
ldap admin dn = cn=Administrador,dc=su-red-local,dc=com
# Sincronizacion de cuentas LDAP, NT y LM
ldap passwd sync = yes
# Agregado de cuentas maquina automáticamente
add machine script = /usr/local/sbin/smbldap-useradd.pl -w %u

# Aqui dejo comentado por si es necesario o a tu criterio usarlo
#ldap ssl = start tls
#add user script = /usr/local/sbin/smbldap-useradd.pl -m "%u"
#ldap delete dn = Yes
#delete user script = /usr/local/sbin/smbldap-userdel.pl "%u"
#add group script = /usr/local/sbin/smbldap-groupadd.pl -p "%g"
#delete group script = /usr/local/sbin/smbldap-groupdel.pl "%g"
#add user to group script = /usr/local/sbin/smbldap-groupmod.pl -m "%u" "%g"
#delete user from group script = /usr/local/sbin/smbldap-groupmod.pl -x "%u" "%g"
#set primary group script = /usr/local/sbin/smbldap-usermod.pl -g "%g" "%u"
#ldap replication sleep = 1000 # Tiempo de replicacion entre servidores

# ----- FIN DE PARAMETROS LDAP

# Asegurarse de tener los siguiente parametros activado de la siguiete forma:

security = user

encrypt passwords = yes
os level = 65
domain master = yes?
preferred master = yes?
domain logons = yes

# ... demas opciones.

Ahora necesitamos hacer saber a samba cual es el password del usuario Administrador de openLDAP para que pueda conectarse al directorio:

smbpasswd -w password

Nos aparecererá el siguiente mensaje y confirmará que samba ya pueda autenticarse en openLDAP:  

Setting stored password for "cn=Administrador,dc=su-red-local,dc=com" in secrets.tdb


Testeamos y reiniciamos samba:
testparm
service smb restart

Ahora procederemos a copiar y asignar los permisos apropiados a los scripts smbldap-tools, nosotros no utilizaremos un rpm extra sino que utilizaremos los mismos que ya vienen incluidos con samba, los archivos .pl  son ejecutables y los .pm son de configuración. Adicionalmente algunas herramientas como el phpldapadmin requiere la utilidad mkntpwd para crear "samba hashes". Procedemos a compilarlo con make (se requiere gcc) :

cp /usr/share/doc/samba-*/LDAP/smbldap-tools/*.pl /usr/local/sbin/
cp /usr/share/doc/samba-*/LDAP/smbldap-tools/*.pm /usr/local/sbin/
chmod +x /usr/local/sbin/smbldap*.pl
chmod 600 /usr/local/sbin/smbldap*.pm
cd /usr/share/doc/samba-*/LDAP/smbldap-tools/mkntpwd/
make?
cp mkntpwd /usr/local/sbin/?

Como vemos todos los archivos se han copiado a  /usr/local/sbin/   por lo tanto es un comando mas en nuestro Linux. 

Ahora averigüemos el SID de nuestro servidor Samba:

net getlocalsid

Nos mostrará un mensaje similar al siguiente y debemos de anotarlo o copiarlo:
    SID for domain LINUX is:   
S-1-5-21-XXXXXXXXXX-XXXXXXXXXX

Tenemos que configurar los script de smbldap-tools, primero editamos el archivo /usr/local/sbin/smbldap_conf.pm, buscamos y reemplazamos las siguientes lineas: 

# Put your own SID
# to obtain this number do: "net getlocalsid"
$SID='
 S-1-5-21-XXXXXXXXXX-XXXXXXXXXX'; #Aqui ingresmo nuestro SID

# Ex: slaveLDAP=127.0.0.1
slaveLDAP="127.0.0.1"
slavePort="389"

# Master LDAP : needed for write operations
# Ex: masterLDAP=127.0.0.1
masterLDAP="127.0.0.1"
masterPort="389"

# LDAP Suffix
# Ex: $suffix = "dc=IDEALX,dc=ORG";
$suffix = "dc=su-red-local,dc=com";

$usersou = q(People);?
$groupsdn = "ou=$usersou,$suffix";

$computersou = q(Computers);?
$computersdn = "ou=$computersou,$suffix";

$groupsou = q(Group);?
$groupsdn = "ou=$groupsou,$suffix";

$binddn = "cn=Administrador,$suffix";

$bindpasswd = "password"; # Aqui el password cin cifrar del Administrador openLDAP

$_userLoginShell = q(/bin/bash); # Tambien se puede optar por /sbin/nologin

$_userHomePrefix = q(/home/);

$_userGecos = q(System User);

$_defaultUserGid = 513;

$_defaultComputerGid = 553;

$_skeletonDir = q(/etc/skel);

#$_defaultMaxPasswordAge = 90; # Aquí comento la caducidad de passwords

## --- Aqui LINUX representar el parametro "netbios name" de Samba
$_userSmbHome = q(LINUXhomes);


$_userProfile = q(LINUXprofiles);

$_userHomeDrive = q(Z:);

Ahora con este script se creará en openLDAP la infraestructura de OU's y usuarios que se requerirá al usar un dominio Samba :

smbldap-populate.pl?

Resultado en pantalla :

adding new entry: dc=su-red-local,dc=com
adding new entry: ou=People,dc=su-red-local,dc=com
adding new entry: ou=Group,dc=su-red-local,dc=com
adding new entry: ou=Computers,dc=su-red-local,dc=com
adding new entry: uid=Administrator,ou=People,dc=su-red-local,dc=com
adding new entry: uid=nobody,ou=People,dc=su-red-local,dc=com
adding new entry: cn=Domain Admins,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Domain Users,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Domain Guests,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Administrators,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Users,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Guests,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Power Users,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Account Operators,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Server Operators,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Print Operators,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Backup Operators,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Replicator,ou=Group,dc=su-red-local,dc=com
adding new entry: cn=Domain Computers,ou=Group,dc=su-red-local,dc=com

Notamos que nos ha creado un usuario Administrator, este usuario será el administrador del dominio samba y fue previamente asignado como tal en /etc/samba/smb.conf, por ello ahora debemos ponerle un password a Administrador del dominio samba :
smbldap-passwd.pl Administrator

Si disponemos de una lista de usuarios samba en  /etc/samba/smbpasswd , podemos realizar la migración con  :

 pdbedit -i smbpasswd:/etc/samba/smbpasswd -e ldapsam:ldap://localhost

Si todo nos ha ido bien podemos ahora ver si la asignación de grupos de Windows fueron asigando a sus correspondientes grupos LDAP:

 net groupmap list

En el siguiente anexo podemos ver una salida exitosa del comando anterior y otros adicionales Anexo 1: Salidas exitosas.


Ahora podemos crear una cuenta de usuario Windows, especificando que no tenga una ruta Profile (opción -F) y le asignamos un password:
 smbldap-useradd.pl -a -m -F "" usuariowin
smbldap-passwd.pl usuariowin

Mas detalle del comando smbldap-useradd.pl en el siguiente anexo: Anexo 2: smbldap-useradd
Reiniciamos samba y openLdap:

service ldap restart
service smb restart

Uniendo máquinas al dominio del Controlador Primario de Dominio.

En este proceso no es necesario crear cuentas máquinas debido a que agregamos en el archivo /etc/samba/smb.conf el script correspondiente salvo posiblemente en plataformas antiguas.

Windows 95/98/ME y Windows XP Home

Ya que los sistemas con Windows 95/98/ME y Windows XP Home no incluyen una implementación completa como miembros de dominio, no se requieren cuentas de confianza. El procedimiento para unirse al dominio es el siguiente:

•  Acceder hacia Menú de inicio → Configuraciones → Panel de control → Red
•  Seleccione la pestaña de Configuración
•  Seleccione «Cliente de redes Microsoft»
•  Haga clic en el botón de propiedades
•  Seleccione Acceder a dominio de Windows NT y especifique el dominio correspondiente.
•  Clic en todos los botones de «Aceptar» y reinicie el sistema
•  Acceda con un usuario que haya sido creado con  smbldap-useradd.pl en el directorio LDAP o una cuenta de usuario que pertenezca a la OU=Domain Admins

Windows NT

•  Acceder hacia Menú de inicio → Configuraciones → Panel de control → Red.
•  Seleccionar la pestaña de «Identificación».
•  Clic en el botón de «Cambiar».
•  Ingrese el nombre del dominio y el nombre del sistema. Seleccione «Crear una cuenta de máquina en el Dominio».
•  Clic en «Aceptar»
•  Espere algunos segundos.
•  Deberá mostrarse un mensaje emergente de confirmación que dice «Bienvenido a MI-DOMINIO»
•  Reinicie el sistema
•  Acceda con un usuario que haya sido creado con  smbldap-useradd.pl en el directorio LDAP o una cuenta de usuario que pertenezca a la OU=Domain Admins

Windows 2000/2003 y Windows XP Profesional

•  Clic derecho en el icono de «Mi PC».
•  Seleccionar «Propiedades»
•  Haga clic en la pestaña de «Identificación de red» o «Nombre del sistema».
•  Clic en el botón de «Propiedades».
•  Clic en el botón «Miembro de dominio»
•  Ingrese el nombre del dominio y el nombre de la máquina y haga clic en el botón de «Aceptar»
•  Aparecerá un diálogo que preguntará por una cuenta y clave de acceso con privilegios de administración en el servidor. Especifique el usuario : Administrator y la clave de acceso que asignó con el comando smbldap-passwd.pl 
•  Espere algunos segundos.
•  Deberá mostrarse un mensaje emergente de confirmación que dice «Bienvenido a MI-DOMINIO»
•  Reinicie el sistema
•  Acceda con un usuario que haya sido creado con  smbldap-useradd.pl en el directorio LDAP o una cuenta de usuario que pertenezca a la OU=Domain Admins

Comprobaciones:

Para culminar con este turorial procede a autenticarte en una máquina Windows con la cuenta usuario  usuariowin  creado en los pasos previos. Una vez dentro de tu cuenta presiona  CTRL+ALT+DEL  y cambia la contraseña.
Si todo fue bien pudiste cambiar la contraseña LDAP y por lo tanto tambien la de acceso local (si posee shell:  /bin/bash ) , abrimos una terminal cualquiera e intentemos autenticarnos con la cuenta usuariowin, deberíamos poder ingresar con la nueva contraseña.
Intenta ahora cambiar tu contraseña con  smbldap-passwd-pl  como root.

Desarrollado desde Lima-Peru por : Jaime M. Tan Nozawa.

Basado en los siguientes manuales:

Anexos:

Anexo 1: Salidas Exitosas
Salida exitosa en mi Linux del comando net groupmap list :
Domain Admins (S-1-5-21-2077231340-1860026891-176131073-512) -> Domain Admins
Domain Users (S-1-5-21-2077231340-1860026891-176131073-513) -> Domain Users
Domain Guests (S-1-5-21-2077231340-1860026891-176131073-514) -> Domain Guests
Administrators (S-1-5-21-2077231340-1860026891-176131073-544) -> Administrators
users (S-1-5-21-2077231340-1860026891-176131073-545) -> Users
Guests (S-1-5-21-2077231340-1860026891-176131073-546) -> Guests
Power Users (S-1-5-21-2077231340-1860026891-176131073-547) -> Power Users
Account Operators (S-1-5-21-2077231340-1860026891-176131073-548) -> Account Operators
Server Operators (S-1-5-21-2077231340-1860026891-176131073-549) -> Server Operators
Print Operators (S-1-5-21-2077231340-1860026891-176131073-550) -> Print Operators
Backup Operators (S-1-5-21-2077231340-1860026891-176131073-551) -> Backup Operators
Replicator (S-1-5-21-2077231340-1860026891-176131073-552) -> Replicator
Domain Computers (S-1-5-21-2077231340-1860026891-176131073-553) -> Domain Computers

Salida exitosa en mi Linux del comando   ldapsearch -x -b 'dc=su-red-local,dc=com' 'objectclass==*'  :

# extended LDIF
#
# LDAPv3
# base <dc=su-red-local,dc=com> with scope sub
# filter: objectclass=*
# requesting: ALL
#
# su-red-local.com
dn: dc=su-red-local,dc=com
dc: su-red-local
objectClass: top
objectClass: domain
# Administrador, su-red-local.com
dn: cn=Administrador,dc=su-red-local,dc=com
objectClass: organizationalRole
cn: Administrador
# DOMAIN, su-red-local.com
dn: sambaDomainName=DOMAIN,dc=su-red-local,dc=com
sambaDomainName: DOMAIN
sambaSID: S-1-5-21-2077231340-1860026891-176131073
sambaAlgorithmicRidBase: 1000
objectClass: sambaDomain
sambaNextUserRid: 67109862
sambaNextGroupRid: 67109863
# Computers, su-red-local.com
dn: ou=Computers,dc=su-red-local,dc=com
objectClass: organizationalUnit
ou: Computers
# People, su-red-local.com
dn: ou=People,dc=su-red-local,dc=com
objectClass: organizationalUnit
ou: People
# Group, su-red-local.com
dn: ou=Group,dc=su-red-local,dc=com
objectClass: organizationalUnit
ou: Group
# Administrator, People, su-red-local.com
dn: uid=Administrator,ou=People,dc=su-red-local,dc=com
cn: Administrator
sn: Administrator
objectClass: inetOrgPerson
objectClass: sambaSamAccount
objectClass: posixAccount
gidNumber: 512
uid: Administrator
uidNumber: 998
homeDirectory: /home/
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdCanChange: 0
sambaPwdMustChange: 2147483647
sambaHomePath: LINUXhomes
sambaHomeDrive: Z:
sambaProfilePath: LINUXprofiles
sambaPrimaryGroupSID: S-1-5-21-2077231340-1860026891-176131073-512
sambaAcctFlags: [U ]
sambaSID: S-1-5-21-2077231340-1860026891-176131073-2996
loginShell: /bin/false
gecos: Netbios Domain Administrator
sambaLMPassword: 44EFCE164AB921CAAAD3B435B51404EE
sambaNTPassword: 32ED87BDB5FDC5E9CBA88547376818D4
sambaPwdLastSet: 1175475097
userPassword:: e1NTSEF9eUVQTWVJdEhBL2dLM09xWjFkOEJaTVVhTjNLbHk5N28=
# nobody, People, su-red-local.com
dn: uid=nobody,ou=People,dc=su-red-local,dc=com
cn: nobody
sn: nobody
objectClass: inetOrgPerson
objectClass: sambaSamAccount
objectClass: posixAccount
gidNumber: 514
uid: nobody
uidNumber: 999
homeDirectory: /dev/null
sambaPwdLastSet: 0
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdCanChange: 0
sambaPwdMustChange: 2147483647
sambaHomePath: LINUXhomes
sambaHomeDrive: Z:
sambaProfilePath: LINUXprofiles
sambaPrimaryGroupSID: S-1-5-21-2077231340-1860026891-176131073-514
sambaLMPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX
sambaNTPassword: NO PASSWORDXXXXXXXXXXXXXXXXXXXXX
sambaAcctFlags: [NU ]
sambaSID: S-1-5-21-2077231340-1860026891-176131073-2998
loginShell: /bin/false
# Domain Admins, Group, su-red-local.com
dn: cn=Domain Admins,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 512
cn: Domain Admins
memberUid: Administrator
description: Netbios Domain Administrators
sambaSID: S-1-5-21-2077231340-1860026891-176131073-512
sambaGroupType: 2
displayName: Domain Admins
# Domain Users, Group, su-red-local.com
dn: cn=Domain Users,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 513
cn: Domain Users
description: Netbios Domain Users
sambaSID: S-1-5-21-2077231340-1860026891-176131073-513
sambaGroupType: 2
displayName: Domain Users
memberUid: fedora
# Domain Guests, Group, su-red-local.com
dn: cn=Domain Guests,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 514
cn: Domain Guests
description: Netbios Domain Guests Users
sambaSID: S-1-5-21-2077231340-1860026891-176131073-514
sambaGroupType: 2
displayName: Domain Guests
# Administrators, Group, su-red-local.com
dn: cn=Administrators,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 544
cn: Administrators
description: Netbios Domain Members can fully administer the
computer/sambaDom ainName
sambaSID: S-1-5-21-2077231340-1860026891-176131073-544
sambaGroupType: 2
displayName: Administrators
# Users, Group, su-red-local.com
dn: cn=Users,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 545
cn: Users
description: Netbios Domain Ordinary users
sambaSID: S-1-5-21-2077231340-1860026891-176131073-545
sambaGroupType: 2
displayName: users
# Guests, Group, su-red-local.com
dn: cn=Guests,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 546
cn: Guests
memberUid: nobody
description: Netbios Domain Users granted guest access to the
computer/sambaDo mainName
sambaSID: S-1-5-21-2077231340-1860026891-176131073-546
sambaGroupType: 2
displayName: Guests
# Power Users, Group, su-red-local.com
dn: cn=Power Users,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 547
cn: Power Users
description: Netbios Domain Members can share directories and printers
sambaSID: S-1-5-21-2077231340-1860026891-176131073-547
sambaGroupType: 2
displayName: Power Users
# Account Operators, Group, su-red-local.com
dn: cn=Account Operators,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 548
cn: Account Operators
description: Netbios Domain Users to manipulate users accounts
sambaSID: S-1-5-21-2077231340-1860026891-176131073-548
sambaGroupType: 2
displayName: Account Operators
# Server Operators, Group, su-red-local.com
dn: cn=Server Operators,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 549
cn: Server Operators
description: Netbios Domain Server Operators
sambaSID: S-1-5-21-2077231340-1860026891-176131073-549
sambaGroupType: 2
displayName: Server Operators
# Print Operators, Group, su-red-local.com
dn: cn=Print Operators,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 550
cn: Print Operators
description: Netbios Domain Print Operators
sambaSID: S-1-5-21-2077231340-1860026891-176131073-550
sambaGroupType: 2
displayName: Print Operators
# Backup Operators, Group, su-red-local.com
dn: cn=Backup Operators,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 551
cn: Backup Operators
description: Netbios Domain Members can bypass file security to back up
files
sambaSID: S-1-5-21-2077231340-1860026891-176131073-551
sambaGroupType: 2
displayName: Backup Operators
# Replicator, Group, su-red-local.com
dn: cn=Replicator,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 552
cn: Replicator
description: Netbios Domain Supports file replication in a
sambaDomainName
sambaSID: S-1-5-21-2077231340-1860026891-176131073-552
sambaGroupType: 2
displayName: Replicator
# Domain Computers, Group, su-red-local.com
dn: cn=Domain Computers,ou=Group,dc=su-red-local,dc=com
objectClass: posixGroup
objectClass: sambaGroupMapping
gidNumber: 553
cn: Domain Computers
description: Netbios Domain Computers accounts
sambaSID: S-1-5-21-2077231340-1860026891-176131073-553
sambaGroupType: 2
displayName: Domain Computers
# fedora, People, su-red-local.com
dn: uid=fedora,ou=People,dc=su-red-local,dc=com
objectClass: top
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: sambaSamAccount
cn: fedora
sn: fedora
uid: fedora
uidNumber: 1000
gidNumber: 513
homeDirectory: /home//fedora
loginShell: /bin/bash
gecos: System User
description: System User
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdMustChange: 2147483647
displayName: System User
sambaAcctFlags: [UX]
sambaSID: S-1-5-21-2077231340-1860026891-176131073-3000
sambaPrimaryGroupSID: S-1-5-21-2077231340-1860026891-176131073-513
sambaHomeDrive: Z:
sambaLogonScript: fedora.cmd
sambaProfilePath: LINUXprofilesfedora
sambaHomePath: LINUXhomes
sambaPwdCanChange: 1175478004
sambaLMPassword: 44EFCE164AB921CAAAD3B435B51404EE
sambaNTPassword: 32ED87BDB5FDC5E9CBA88547376818D4
sambaPasswordHistory:
00000000000000000000000000000000000000000000000000000000 00000000
sambaPwdLastSet: 1175478004
userPassword:: e1NNRDV9QjZMSHQxTEQxL0xvRmRacGJJU2Q2d000dEY0PQ==
# jaime$, Computers, su-red-local.com
dn: uid=jaime$,ou=Computers,dc=su-red-local,dc=com
objectClass: top
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: sambaSamAccount
cn: jaime$
sn: jaime$
uid: jaime$
uidNumber: 1001
gidNumber: 553
homeDirectory: /dev/null
loginShell: /bin/false
description: Computer
sambaSID: S-1-5-21-2077231340-1860026891-176131073-3002
sambaPrimaryGroupSID: S-1-5-21-2077231340-1860026891-176131073-553
displayName: jaime$
sambaPwdCanChange: 1175476965
sambaPwdMustChange: 2147483647
sambaNTPassword: C8761052858C9E6856C4431FA8BBF2B5
sambaPwdLastSet: 1175476965
sambaAcctFlags: [W ]
# search result
search: 2
result: 0 Success
# numResponses: 24
# numEntries: 23


Anexo 2: smbldap-useradd.pl

smbldap-useradd.pl  [-o user_ou] [-c comment] [-d home_dir] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-s shell] [-u uid [ -o]] [-P] [-A canchange] [-B mustchange] [-C smbhome] [-D homedrive] [-E scriptpath] [-F profilepath] [-H acctflags] login

Crea nuevos usuarios. El comando smbldap-useradd una nueva cuenta de usuario de los valores especificados en los paramtros y los valores por defecto del sistema.

Para usuarios Samba, RID es '2*uidNumber+1000' y el  sambaPrimaryGroupSID es '$SID-2*gidNumber+1001', donde $SID es el SID del dominio. Por lo tanto si tu usarías la instrucción: $ smbldap-useradd -a -g "Domain Admins" -u 500 Administrator  para crear la cuenta de dominio administrator (el admin RID es 0x1F4 = 500  y el groupRID es 0x200 = 512).

Mas detalle en el siguiente enlace: smbldap-useradd