Hola a todos.
Estoy experimentando con el montaje de un PDC con LDAP y Samba. Aparentemente está instalado y los daemos correspondientes corriendo, pero algo no va bien.
Me ocurre lo siguiente. Esto, por ejemplo, sale bien:
smbclient -L localhost Password: Anonymous login successful Domain=[CENTRO] OS=[Unix] Server=[Samba 3.0.33-3.7.el5]
Sharename Type Comment --------- ---- ------- Comun Disk Carpeta general del centro Profesores Disk Carpeta general de profesores Alumnos Disk Carpeta general de alumnos apps Disk Aplicaciones netlogon Disk Network Logon Service profiles Disk Profile Share profdata Disk Profile Data Share print$ Disk Printer Drivers IPC$ IPC IPC Service (Samba 3.0.33-3.7.el5) Anonymous login successful Domain=[CENTRO] OS=[Unix] Server=[Samba 3.0.33-3.7.el5]
Server Comment --------- ------- LINUXSRV Samba 3.0.33-3.7.el5
Workgroup Master --------- ------- CENTRO LINUXSRV
Pero si lo hago lo mismo con root:
smbclient -L localhost -U root%xxxxxxxx session setup failed: NT_STATUS_LOGON_FAILURE
La password es correcta, porque es la misma que utilizo para acceder al sistema, la he puesto y repuesto con smbpassw -w xxxxxxxx ... ya no sé qué más mirar.
También ocurre que ...
getent passwd | grep root root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin
Entiendo que debería salir una vez nada más, no entiendo por qué sale dos.
Para rematar, desde un equipo Windows XP es imposible añadir dicho equipo al dominio, me da error de usuario / contraseña.
Agracederé enormemente cualquier ayuda al respecto.
Mis ficheros de configuración son.
*smb.conf:*
[global] unix charset = LOCALE workgroup = CENTRO netbios name = LinuxSrv admin users = Administrador @"Domain Admins" interfaces = eth0, lo bind interfaces only = Yes passdb backend = ldapsam:ldap://127.0.0.1 enable privileges = Yes username map = /etc/samba/smbusers log level = 5 syslog = 0 log file = /var/log/samba/%m max log size = 50 smb ports = 139 name resolve order = wins bcast hosts time server = Yes printcap name = CUPS show add printer wizard = No
logon script = scripts\logon.bat logon path = \%L\profiles%U logon drive = X: domain logons = Yes preferred master = Yes wins support = Yes
add user script = /usr/sbin/smbldap-useradd -m "%u" 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/smbldap-groupmod -x "%u" "%g" set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u" add machine script = /usr/sbin/smbldap-useradd -w "%u"
ldap suffix = dc=centro,dc=lan ldap machine suffix = ou=People ldap user suffix = ou=People ldap group suffix = ou=Group ldap idmap suffix = ou=Idmap ldap admin dn = cn=Administrador,dc=centro,dc=lan idmap backend = ldap:ldap://127.0.0.1 idmap uid = 10000-20000 idmap gid = 10000-20000 map acl inherit = Yes printing = cups
ldap passwd sync = yes security = user
[homes] comment = Carpetas particulares de usuario valid users = %S read only = No browseable = No
[Comun] comment = Carpeta general del centro path = /data/comun read only = No
[Profesores] comment = Carpeta general de profesores path = /data/profesores read only = No
[Alumnos] comment = Carpeta general de alumnos path = /data/alumnos read only = No
*/etc/openldap/slapd.conf*
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 allow bind_v2 pidfile /var/run/openldap/slapd.pid argsfile /var/run/openldap/slapd.args database bdb suffix "dc=centro,dc=lan" rootdn "cn=Administrador,dc=centro,dc=lan" rootpw {SSHA}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx directory /var/lib/ldap/autenticar index objectClass eq index cn,sn,uid,displayName pres,sub,eq index uidNumber eq index gidNumber eq index memberUID eq index sambaSID eq,sub index sambaPrimaryGroupSID eq index sambaDomainName eq index default sub
*/etc/openldap/ldap.conf*
URI ldap://127.0.0.1/ host 127.0.0.1 BASE dc=centro,dc=lan TLS_CACERTDIR /etc/openldap/cacerts
*/etc/ldap.conf*
host 127.0.0.1 base dc=centro,dc=lan timelimit 120 bind_timelimit 120 bind_policy soft idle_timelimit 3600 nss_initgroups_ignoreusers root,ldap,named,avahi,haldaemon uri ldap://127.0.0.1/ ssl no tls_cacertdir /etc/openldap/cacerts pam_password md5
*/etc/nsswitch.conf*
passwd: files ldap shadow: files ldap group: files ldap hosts: files dns bootparams: nisplus [NOTFOUND=return] files ethers: files netmasks: files networks: files protocols: files rpc: files services: files netgroup: files ldap publickey: nisplus automount: files ldap aliases: files nisplus
Gracias anticipadas y un cordial saludo,
Arturo Limon
On Wed, 2009-04-08 at 12:55 +0200, Arturo Limón wrote:
Me ocurre lo siguiente. Esto, por ejemplo, sale bien:
smbclient -L localhost Password: Anonymous login successful
<snip>
Pero si lo hago lo mismo con root:
smbclient -L localhost -U root%xxxxxxxx session setup failed: NT_STATUS_LOGON_FAILURE
La password es correcta, porque es la misma que utilizo para acceder al sistema, la he puesto y repuesto con smbpassw -w xxxxxxxx ... ya no sé qué más mirar.
estas seteando el password de manera incorrecta en el root.
cuando creaste el arbol ldap para tu samba, debiste seguramente crear dos "usuarios" ldap por defecto, root y nobody (al menos las smbldap-tools las crean por defecto) el password root en cuestion q te solicita NO ES el del usuario root del sistema, sino del usuario root de tu arbol ldap. si estas usando smbldap-tools puedes usar
smbldap-passwd root
para cambiar el password del root o si es un dominio sin users y PCs todavia correr nuevamente smbldap-populate (se quejara q los objetos ya existen) q al final tb te pide setear el password de root.
el smbpasswd -w no setea ningun password, ese password es mas bien del objeto ldap q tiene derechos completos de escritura y lectura en tu arbol ldap (por convencion generalmente cn=Manager ....) q en ldap comunmente esta seteado en el rootdn, el password en cuestion q ingresas con smbpasswd -w es el rootpw (si ves tu configuracion de samba, tu ingresas el usuario administrador de ldap con 'ldap admin dn' pero en ninguna parte esta el password, cuando haces smbpasswd -w el password q ingresas es almacenando en el archivo secrets.tdb de samba para ser accedido de ahi. Si has cambiado ese password, el samba nunca podra leer ni escribir nada en el ldap.
También ocurre que ...
getent passwd | grep root root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin
si has configurado en el authconfig q reconozca a los usuarios ldap como users del sistema tendria sentido (usuario root del sistema y usuario root en el ldap). getent no es 100% acurate en muchos casos al menos en mi experiencia. por ahora concentrate en sacar adelante tu dominio.
-- Black Hand
Muchas gracias por tu correo BlackHand Creo que con lo que me cuentas empiezo a aclararme.
Inicialmente, pasé todos los usuarios que había en /etc/passwd a LDAP mediante los scripts de migración (migrate ...). Supongo que por eso me aparecen duplicados.
Así pues no sé si es correcto considerar que hay tres "tipos" de usuarios: usuarios recogidos en /etc/passwd; usuarios Posix creados en LDAP (como los que se podrían crear desde phpldapadmin o ldapadd) y usuarios Samba en LDAP. Por lo que he visto con phpmyadmin, los usuarios creados con Samba tienen SID, los migrados no, obviamente, por lo que entiendo que no son utilizables en Samba; hay que crearlos mediante las smbldap-tools. De todas formas, los usuarios Samba han de tener uid correspondiente a Unix ¿es así? ¿Hay que mantener un paralelismo usuarios Posix - usuarios Samba, o eso lo hacen las smbldap-tools?
Otra cosa, es que no tengo claro cómo añadir usuarios Samba a grupos Samba; lo he tratado de descifrar en phpldapadmin, pero no acabo de verlo.
Gracias por tu ayuda.
Saludos cordiales.
Arturo Limón.
El 8 de abril de 2009 14:22, BlackHand <yonsy@blackhandchronicles.homeip.net
escribió:
On Wed, 2009-04-08 at 12:55 +0200, Arturo Limón wrote:
Me ocurre lo siguiente. Esto, por ejemplo, sale bien:
smbclient -L localhost Password: Anonymous login successful
<snip>
Pero si lo hago lo mismo con root:
smbclient -L localhost -U root%xxxxxxxx session setup failed: NT_STATUS_LOGON_FAILURE
La password es correcta, porque es la misma que utilizo para acceder al sistema, la he puesto y repuesto con smbpassw -w xxxxxxxx ... ya no sé qué más mirar.
estas seteando el password de manera incorrecta en el root.
cuando creaste el arbol ldap para tu samba, debiste seguramente crear dos "usuarios" ldap por defecto, root y nobody (al menos las smbldap-tools las crean por defecto) el password root en cuestion q te solicita NO ES el del usuario root del sistema, sino del usuario root de tu arbol ldap. si estas usando smbldap-tools puedes usar
smbldap-passwd root
para cambiar el password del root o si es un dominio sin users y PCs todavia correr nuevamente smbldap-populate (se quejara q los objetos ya existen) q al final tb te pide setear el password de root.
el smbpasswd -w no setea ningun password, ese password es mas bien del objeto ldap q tiene derechos completos de escritura y lectura en tu arbol ldap (por convencion generalmente cn=Manager ....) q en ldap comunmente esta seteado en el rootdn, el password en cuestion q ingresas con smbpasswd -w es el rootpw (si ves tu configuracion de samba, tu ingresas el usuario administrador de ldap con 'ldap admin dn' pero en ninguna parte esta el password, cuando haces smbpasswd -w el password q ingresas es almacenando en el archivo secrets.tdb de samba para ser accedido de ahi. Si has cambiado ese password, el samba nunca podra leer ni escribir nada en el ldap.
También ocurre que ...
getent passwd | grep root root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin
si has configurado en el authconfig q reconozca a los usuarios ldap como users del sistema tendria sentido (usuario root del sistema y usuario root en el ldap). getent no es 100% acurate en muchos casos al menos en mi experiencia. por ahora concentrate en sacar adelante tu dominio.
-- Black Hand
CentOS-es mailing list CentOS-es@centos.org http://lists.centos.org/mailman/listinfo/centos-es