Samba LDAP · 4 min read · Dec 12, 2025
Controlador de Dominio Samba en CentOS 5.x con Backend LDAP - Página 2
Configuración de la administración remota del directorio ldap
Edita /etc/php.ini y asegúrate de que memory_limit esté configurado en al menos 32 MB:
memory_limit = 32MLa última vez que verifiqué, la versión de phpldapadmin disponible a través de yum está rota, así que obtendremos la última y la extraeremos: Ve a http://sourceforge.net/project/showfiles.php?group_id=61828&package_id=177751 y descarga la última versión. En mi caso, eso resultó en los siguientes comandos, tu paquete puede ser más nuevo:
mkdir /var/www/html/samba && cd /var/www/html/samba
wget http://softlayer.dl.sourceforge.net/sourceforge/phpldapadmin/phpldapadmin-1.1.0.7.tar.gz
tar zxf phpldapadmin-1.1.0.7.tar.gz
ln -s phpldapadmin-1.1.0.7 pla
cp pla/config/config.php.example pla/config/config.phpAhora edita ./pla/config/config.php y descomenta la siguiente línea:
$config->custom->jpeg['tmpdir'] = "/tmp";Hacer disponible el software recién configurado
service httpd restart
chkconfig httpd onEdita /etc/sysconfig/iptables y copia y modifica la línea sobre ssh (–dport 22 -j ACCEPT), y justo después de ella, agrega (suponiendo que tu instalación de CentOS produjo el archivo iptables predeterminado):
#Permitir Https://
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#Permitir samba:
-A RH-Firewall-1-INPUT -m multiport -p udp --dport 137,138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m multiport -p tcp --dport 139,445 -j ACCEPT
Ahora abre tu navegador web y visita https://192.168.0.5/samba/pla/ e inicia sesión con el nombre de usuario cn=root,dc=DOMAINNAME y tu contraseña. Deberías poder mirar alrededor y ver algo de basura.
Integrar ldap y Samba
mv /etc/samba/smb.conf /etc/samba/smb.conf.dist
cp /usr/share/doc/smbldap-tools-0.9.5/smb.conf /etc/samba/smb.confEdita /etc/samba/smb.conf a tu gusto, la parte ldap predeterminada debería estar bien. ajo [global], necesitarás agregar estas tres configuraciones que no están allí por defecto:
ldap ssl = off
nt acl support = yes
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE
cp /usr/share/doc/smbldap-tools-0.9.5/smbldap.conf /etc/smbldap-tools/smbldap.conf
net getlocalsidNota, net getlocalsid dará error un montón de veces hasta el final, porque aún no has configurado completamente samba – pero producirá el sid que necesitas para el siguiente paso.
Edita /etc/smbldap-tools/smbldap.conf e inserta sid, dominio, etc, a lo largo del archivo hasta el final.
Edita /etc/smbldap-tools/smbldap_bind.conf y cambia ambas líneas aplicables, cambia “secret” por tu contraseña.
chmod 644 /etc/smbldap-tools/smbldap.conf
chmod 600 /etc/smbldap-tools/smbldap_bind.conf
authconfig-tuiVerifica que la salida de authconfig-tui contenga:
[ ] La autorización local es suficienteAhora prueba tu configuración de samba:
testparmsmbpasswd -w TU_CONTRASEÑA_ROOT_LDAP_AQUÍ
smbldap-populatesmbldap-populate pedirá la contraseña, ingrésala.
Iniciar la instalación de LDAP Samba
/etc/init.d/smb start
chkconfig smb onAgrega usuarios/grupos, correlaciona entre unix y ldap:
useradd user1
smbldap-useradd -a -G 'Domain Users' -m -s /bin/bash -d /home/user2 -F "" -P user1Obtén una imagen de los grupos UNIX que aún no están allí que LDAP asume:
net groupmap listLa salida es algo como:
Domain Admins (S-1-5-21-990788473-1556064292-4137819756-512) -> domain_admins
Domain Users (S-1-5-21-990788473-1556064292-4137819756-513) -> domain_users
Domain Guests (S-1-5-21-990788473-1556064292-4137819756-514) -> 514
Domain Computers (S-1-5-21-990788473-1556064292-4137819756-515) -> 515
Administrators (S-1-5-32-544) -> 544
Account Operators (S-1-5-32-548) -> 548
Print Operators (S-1-5-32-550) -> 550
Backup Operators (S-1-5-32-551) -> 551
Replicators (S-1-5-32-552) -> 552
Agrega grupos correlacionados a unix, usando los GIDs sugeridos:
groupadd -g 514 samba_domain_guests
groupadd -g 515 samba_domain_computers
groupadd -g 544 samba_administrator
groupadd -g 548 samba_account_operators
groupadd -g 550 samba_print_operators
groupadd -g 551 samba_backup_operators
groupadd -g 552 samba_replicatorsSi deseas agregar un grupo no incorporado a LDAP/Samba, digamos para controlar qué usuarios pueden escribir/leer archivos en un recurso compartido, y hacerlo determinar eso por grupos:
smbldap-groupadd -a "Personas en nuestra oficina"Luego obtén la salida de net groupmap list nuevamente y correlaciona el nuevo grupo creado # igual que la última vez, agregando el grupo al sistema unix:
groupadd -g 1001 samba_people_in_our_officeAgrega usuarios a grupos LDAP a través de la interfaz web, luego correlaciona en unix:
usermod -a -G NOMBRE_DEL_GRUPO_UNIX NOMBRE_DE_USUARIO_UNIXTambién agrega cuentas de computadora a unix, usando el grupo “samba_domain_computers” de arriba, y donde tus nombres de computadora permitidos terminan con un “$”:
useradd -M -g 515 -s /bin/false oficina_comp1$Por último, pero ciertamente no menos importante, es posible que desees desactivar los servicios innecesarios que CentOS ejecuta por defecto. Determiné que yo, específicamente, no necesito ninguno de los siguientes. Podrías ser diferente, así que infórmate antes de apagarlos:
chkconfig ntpd off
chkconfig bluetooth off
chkconfig xinetd off
chkconfig smartd off
chkconfig yum-updatesd off
chkconfig rpcidmapd off
chkconfig rpcgssd off
chkconfig restorecond off
chkconfig portmap off
chkconfig pcscd off
chkconfig nfslock off
chkconfig mcstrans off
chkconfig mdmonitor off
chkconfig irqbalance off
chkconfig kudzu off
chkconfig ip6tables off
chkconfig hidd off
chkconfig gpm off
chkconfig haldaemon off
chkconfig autofs off
chkconfig avahi-daemon off
service ntpd stop
service bluetooth stop
service xinetd stop
service smartd stop
service yum-updatesd stop
service rpcidmapd stop
service rpcgssd stop
service restorecond stop
service portmap stop
service pcscd stop
service nfslock stop
service mcstrans stop
service mdmonitor stop
service irqbalance stop
service kudzu stop
service ip6tables stop
service hidd stop
service gpm stop
service haldaemon stop
service autofs stop
service avahi-daemon stop(Opcional) Actualizar Samba para que las computadoras con Windows 7 puedan unirse al dominio
Asegúrate de que ldap ssl = off esté configurado en /etc/samba/smb.conf, ya que esto no era necesario para que la versión del sistema operativo CentOS de Samba funcionara correctamente, pero será necesario una vez que actualicemos (3.0.x vs 3.3.x, que admite Windows 7).
Obtendremos los RPMs de samba más nuevos construidos para CentOS de Sernet:
cd /etc/yum.repos.d/
wget http://ftp.sernet.de/pub/samba/3.3/centos/5/sernet-samba.repo
yum updateTus paquetes de samba se actualizarán desde el repositorio de Sernet.
Dado que la actualización, nuestro servicio CentOS para samba desapareció; volvamos a agregarlo:
chkconfig --add smb
chkconfig smb onAhora agrega la computadora con Windows 7 a Unix (suponiendo que el nombre del grupo de computadoras de tu dominio es “samba_domain_computers”):
useradd -M -g `cat /etc/group|grep samba_domain_computers|cut -d: -f3` -s /bin/false win7-nombre_de_computadora$
usermod -a -G samba_domain_computers win7-nombre_de_computadora$Ahora une tu PC con Windows 7 al dominio usando esta guía oficial de Samba:
http://wiki.samba.org/index.php/Windows7
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.