6.2 CONFIGURACIÓN DE SAMBA
Proceder a configurar el servidor Samba, ya
Proceder a configurar el servidor Samba, ya que el LDAP necesita de éste paraque el LDAP necesita de éste para pod
poder er almalmaceacenar nar los los usuusuarioarios, s, paspasswosword, rd, ententre re otrotros, os, adademáemás s parpara a podpoder er integrar las redes de Linux con las de Microsoft.
integrar las redes de Linux con las de Microsoft. Primero debemos parar el servicio.
Primero debemos parar el servicio. #/etc/init.d/samba stop
#/etc/init.d/samba stop
Pa
Para ra inintetegrgrar ar el el seservrvididor or SaSambmba a cocon n el el LDLDAP AP dedebebemomos s cocopipiar ar el el ararchchivivoo
smb.conf
smb.conf del LDAP y pegarlo en directorio de Samba. Éste archivo es ofrecidodel LDAP y pegarlo en directorio de Samba. Éste archivo es ofrecido
ppoor r lalas s lilibbrreerrííaas s ddeell python-mmc-base python-mmc-base, , lalas s ccuaualeles s fufueeroron n ininststaalaladadass
anteriormente, dichas librerías se encuentran en la siguiente ruta ya que al anteriormente, dichas librerías se encuentran en la siguiente ruta ya que al momento de la inatalación se ubican
momento de la inatalación se ubican enen /usr/share/doc/ /usr/share/doc/ ..
#
#cp /usr/share/doc/python-mmc-base/contrib/samba/smb.conf /etc/samba/cp /usr/share/doc/python-mmc-base/contrib/samba/smb.conf /etc/samba/
De ésta forma, editar el archivo de configuración
De ésta forma, editar el archivo de configuración smb.conf smb.conf ..
#pico /etc/samba/smb.conf
#pico /etc/samba/smb.conf
En la sección
En la sección [Global] [Global] se deben modificar las siguientes líneas, de tal formase deben modificar las siguientes líneas, de tal forma
que se parezcan a éstas. que se parezcan a éstas. workgroup = GRUPO9
workgroup = GRUPO9
netbiosname
netbiosname = SRV= SRV-GRUPO9-GRUPO9
ldap admin dn
ldap admin dn = cn=admin,dc=grupo9,= cn=admin,dc=grupo9,dc=comdc=com
ldap suffix = dc=grupo9,dc=com
ldap suffix = dc=grupo9,dc=com
logon path = \\%N\profiles\%U
Adicionalmente, en la sección [Global], agregar las siguientes líneas, ya que no Adicionalmente, en la sección [Global], agregar las siguientes líneas, ya que no viene
vienen n por defecto en el por defecto en el archivarchivoo smb.conf smb.conf del LDAP. Estas líneas representandel LDAP. Estas líneas representan
el soporte y la integración que el Samba tendrá sobre el LDAP. el soporte y la integración que el Samba tendrá sobre el LDAP. preferred master = yes
preferred master = yes
os level = 65
os level = 65
wins support = yes
wins support = yes
timeserver = yes
timeserver = yes
socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
SO_RCVBUF=8192
SO_RCVBUF=8192
logon drive = H:
logon drive = H:
passwd program = /usr/sbin/smbldap-pas
passwd program = /usr/sbin/smbldap-passwd -u swd -u %u%u
passwd chat = "Changing password for*\nNew password*" %n\n "*Retype
passwd chat = "Changing password for*\nNew password*" %n\n "*Retype newnew
password*" %n\n
password*" %n\n
add user script
add user script = /usr/sbin/smbld= /usr/sbin/smbldap-useradd -m "%u"ap-useradd -m "%u"
add user to group script =
add user to group script = /usr/sbin//usr/sbin/smbldap-groupmosmbldap-groupmod -m "%u" d -m "%u" "%g""%g"
set primary group script = /usr/sbin/smbldap-us
set primary group script = /usr/sbin/smbldap-usermod -g "%g" ermod -g "%g" "%u""%u"
add group script =
add group script = /usr/sbin/am/usr/sbin/ambldap-groupadbldap-groupadd -p d -p "%g""%g"
delete user script
delete user script = /usr/sbin/smbldap-u= /usr/sbin/smbldap-userdel "%u"serdel "%u"
delete user from group
delete user from group script = /usr/sbin/smbldapscript = /usr/sbin/smbldap-groupmod -x "%u" -groupmod -x "%u" "%g""%g"
delete group script
delete group script = /usr/sbin/smbldap= /usr/sbin/smbldap-groupdel "%g"-groupdel "%g"
obey pam restrictions = no
obey pam restrictions = no
ldap idmap suffix = ou=Users
ldap idmap suffix = ou=Users
ldap delete dn = no
ldap delete dn = no
security = user
security = user
En la sección
En la sección [homes] [homes] , agregar la siguiente línea. Con ésta línea le estamos, agregar la siguiente línea. Con ésta línea le estamos
dando la opción al Samba que oculte el Maildir (Buzón) de cada usuario. dando la opción al Samba que oculte el Maildir (Buzón) de cada usuario. hide files = /Maildir/
hide files = /Maildir/
En la sección [profiles], agregar la siguiente línea, con el fin de que los archivos En la sección [profiles], agregar la siguiente línea, con el fin de que los archivos de Samba estén ocultos.
hide files = /desktop.ini/ntuser.ini/NTUSER.*/
hide files = /desktop.ini/ntuser.ini/NTUSER.*/
En la sección [archives], editar la siguiente línea, de ésta forma especificamos En la sección [archives], editar la siguiente línea, de ésta forma especificamos la ruta de los archivos del samba, los cuales estarán ocultos por la opción que la ruta de los archivos del samba, los cuales estarán ocultos por la opción que le dimos en el
le dimos en el paso anterior.paso anterior. path =
path = /home/samba//home/samba/archivesarchives
Además, agregar al final del archivo
Además, agregar al final del archivo smb.conf smb.conf el siguiente bloque [partage] queel siguiente bloque [partage] que
no viene por defecto. Esto es si queremos, ya que éste bloque no afecta para no viene por defecto. Esto es si queremos, ya que éste bloque no afecta para nada la configuración; simplemente se utiliza
nada la configuración; simplemente se utiliza para publicar algunos servicios.para publicar algunos servicios. [partage] [partage] comment = aucun comment = aucun path = /home/samba/partage path = /home/samba/partage browseable = yes browseable = yes public = no public = no writeable = yes writeable = yes El archivo de configuración
El archivo de configuración smb.conf smb.conf debe quedar de ésta forma.debe quedar de ésta forma.
[global]
[global]
preferred master = yes
preferred master = yes
os level = 65
os level = 65
wins support = yes
wins support = yes
timeserver = yes
timeserver = yes
socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
SO_RCVBUF=8192
SO_RCVBUF=8192
logon drive = H:
logon drive = H:
passwd program =
passwd program = /usr/sbin//usr/sbin/smbldap-passmbldap-passwd -u swd -u %u%u
passwd chat = "Cambiando clave para*\nNueva clave*" %n\n "*Confirme
passwd chat = "Cambiando clave para*\nNueva clave*" %n\n "*Confirme
nueva clave*" %n\n
nueva clave*" %n\n
add user script
add user script = /usr/sbin/smbld= /usr/sbin/smbldap-useradd -m "%u"ap-useradd -m "%u"
add user to group script =
add user to group script = /usr/sbin//usr/sbin/smbldap-groupmosmbldap-groupmod -m "%u" d -m "%u" "%g""%g"
set primary group script = /usr/sbin/smbldap-us
set primary group script = /usr/sbin/smbldap-usermod -g "%g" ermod -g "%g" "%u""%u"
add group script =
add group script = /usr/sbin/am/usr/sbin/ambldap-groupadbldap-groupadd -p d -p "%g""%g"
delete user script
delete user script = /usr/sbin/smbldap-u= /usr/sbin/smbldap-userdel "%u"serdel "%u"
delete user from
delete user from group script = /usr/sbin/smbldap-groupgroup script = /usr/sbin/smbldap-groupmod -x mod -x "%u" "%g""%u" "%g"
delete group script
delete group script = /usr/sbin/smbldap= /usr/sbin/smbldap-groupdel "%g"-groupdel "%g"
obey pam restrictions = no
workgroup =
workgroup = GRUPO9GRUPO9
netbiosname = SRV-
netbiosname = SRV-GRUPO9GRUPO9
server string = Mandriva Directory Server -
server string = Mandriva Directory Server - SAMBA %vSAMBA %v
log level = 3
log level = 3
null passwords = yes
null passwords = yes
# unix charset = ISO8859-1
# unix charset = ISO8859-1
name resolve order = bcast host
name resolve order = bcast host
domain logons = yes
domain logons = yes
domain master = yes
domain master = yes
printing = cups
printing = cups
printcap name = cups
printcap name = cups
logon path = \\%N\profiles\%u
logon path = \\%N\profiles\%u
logon script = logon.bat
logon script = logon.bat
map acl inherit = yes
map acl inherit = yes
nt acl support = yes
nt acl support = yes
force unknown acl user = Yes
force unknown acl user = Yes
passdb backend = ldapsam:ldap://127.0.0.1/
passdb backend = ldapsam:ldap://127.0.0.1/
ldap admin dn = cn=admin,dc=
ldap admin dn = cn=admin,dc=grupo9grupo9,dc=,dc=comcom
ldap suffix = dc=
ldap suffix = dc=grupo9grupo9,dc=,dc=comcom
ldap group suffix = ou=Groups
ldap group suffix = ou=Groups
ldap user suffix = ou=Users
ldap user suffix = ou=Users
ldap machine suffix = ou=Computers
ldap machine suffix = ou=Computers
ldap idmap suffix = ou=Idmap
ldap idmap suffix = ou=Idmap
idmap backend = ldap:ldap://127.0.0.1/
idmap backend = ldap:ldap://127.0.0.1/
idmap uid =
idmap uid = 20000-3000020000-30000
idmap gid =
idmap gid = 20000-3000020000-30000
enable privileges = yes
enable privileges = yes
add machine script = /usr/lib/mmc/add_machine_script '%u'
add machine script = /usr/lib/mmc/add_machine_script '%u'
add share
add share command = command = /usr/lib/mmc/usr/lib/mmc/add_chang/add_change_share_scripte_share_script
delete share command = /usr/lib/mmc/delete_share_script
delete share command = /usr/lib/mmc/delete_share_script
add printer
add printer command = command = /usr/lib/m/usr/lib/mmc/add_printemc/add_printer_scriptr_script
deleteprint
deleteprinter er command = command = /usr/lib/mmc/usr/lib/mmc/delete_p/delete_printer_scriptrinter_script
[homes]
[homes]
comment = Home directories
comment = Home directories
browseable = no browseable = no writeable = yes writeable = yes create mask = 0700 create mask = 0700 directory mask = 0700 directory mask = 0700
hide files = /Maildir/
hide files = /Maildir/ path =
path = /home/samba/ar/home/samba/archiveschives
[public]
[public]
comment = Public share
comment = Public share
path = /home/samba/shares/public path = /home/samba/shares/public browseable = yes browseable = yes public = yes public = yes writeable = yes writeable = yes
[archives]
[archives]
comment = Backup share
comment = Backup share
path =
path = /home/archiv/home/archiveses
browseable = yes browseable = yes public = no public = no writeable = no writeable = no [printers] [printers]
comment = All printers
comment = All printers
path =
path = /var/spool//var/spool/sambasamba
public = yes public = yes guest ok = yes guest ok = yes browseable = no browseable = no writeable = no writeable = no printable = yes printable = yes [print$] [print$]
comment = Printer Driver
comment = Printer Driver Download Download AreaArea
path =
path = /var/lib/sa/var/lib/samba/printersmba/printers
browseable = no
browseable = no
guest ok = yes
guest ok = yes
read only = yes
read only = yes
write list =
write list = Administrador,root,@lpadminAdministrador,root,@lpadmin
force group = "Print Operators"
force group = "Print Operators"
create mask = 0775 create mask = 0775 directory mask = 0775 directory mask = 0775 [netlogon] [netlogon] path =
path = /home/samba/home/samba/netlogon/netlogon
public = no public = no writeable = no writeable = no browseable = no browseable = no [profiles] [profiles] path =
path = /home/samba/home/samba/profiles/profiles
writeable = yes writeable = yes create mask = 0700 create mask = 0700 directory mask = 0700 directory mask = 0700 browseable = no browseable = no hide
hide files = files = /desktop.ini/ntuser/desktop.ini/ntuser.ini/NTUSER.*/.ini/NTUSER.*/
[partage]
[partage]
comment = aucun
comment = aucun
path =
path = /home/samba/par/home/samba/partagetage
browseable = yes
browseable = yes
public = no
D
Digigititaar r eel l ssigiguiuienente te cocomamandndo o ccon on eel l fifin n de de oobtbteenener r uun n ssumumaaririo o dde e llaa configuración de Samba. Al final del sumario no
configuración de Samba. Al final del sumario no debe presentar errores.debe presentar errores. #
#testparmtestparm
Se procede a darle las credenciales a Samba para que pueda escribir sobre Se procede a darle las credenciales a Samba para que pueda escribir sobre LDAP.
LDAP.
#smbpasswd -w sena2008
#smbpasswd -w sena2008
Debe aparecer algo como esto, lo cual indica que las credenciales fueron Debe aparecer algo como esto, lo cual indica que las credenciales fueron asignadas correctamente.
asignadas correctamente. Setting stored password
Setting stored password for "cn=admin,dc=grupo9,dc=for "cn=admin,dc=grupo9,dc=com" com" in secrets.tdbin secrets.tdb
Debemos genera un SID para el grupo de trabajo, con el fin de que el LDAP Debemos genera un SID para el grupo de trabajo, con el fin de que el LDAP reconozca y autorice al Samba con
reconozca y autorice al Samba con éste identificadoréste identificador.. #net getlocalsid GRUPO9
#net getlocalsid GRUPO9
Debe mostrarnos al final algo como esto. No perdamos éste SID, ya que más Debe mostrarnos al final algo como esto. No perdamos éste SID, ya que más adelante lo debemos utilizar.
adelante lo debemos utilizar. SID for
SID for domain GRUPO9 is: domain GRUPO9 is: S-9-5-21-315989982S-9-5-21-3159899829-923882392-549-923882392-54889933889933
Para comprobar que el SID fue registrado por el LDAP, digitamos el siguiente Para comprobar que el SID fue registrado por el LDAP, digitamos el siguiente comando.
comando.
#slapcat | grep sambaDomainName
#slapcat | grep sambaDomainName
Lo más probable es que aparezcan algunas líneas de error, lo cual es normal. Lo más probable es que aparezcan algunas líneas de error, lo cual es normal. Lo que nos debe interesar
dn:
dn: sambaDomainsambaDomainName=GRUPO9,dcName=GRUPO9,dc=grupo9,dc==grupo9,dc=comcom
sambaDomainName: GRUPO9
sambaDomainName: GRUPO9
Luego se procede a iniciar el
Luego se procede a iniciar el servicio Samba.servicio Samba. #/etc/init.d/samba start
#/etc/init.d/samba start
D
Deebbeemmoos s ccrreeaar r lloos s aarrcchhiivvoos s dde e ccoonnffiigguurraacciióón n ddee smbldap-toolssmbldap-tools (smbldap_bind.conf, smbldap.conf)
(smbldap_bind.conf, smbldap.conf), los cuales definen la , los cuales definen la forma de comunicarseforma de comunicarse
el Samba con el LDAP. el Samba con el LDAP.
#pico /etc/smbldap-tools/smbldap_bind.conf
#pico /etc/smbldap-tools/smbldap_bind.conf
El archivo debe llevar el
El archivo debe llevar el siguiente contenido.siguiente contenido. slaveDN="cn
slaveDN="cn=admin,dc=g=admin,dc=grupo9,dc=com"rupo9,dc=com"
slavePw="sena2008"
slavePw="sena2008"
masterDN="cn=
masterDN="cn=admin,dc=grupadmin,dc=grupo9,dc=com"o9,dc=com"
masterPw="sena2008"
masterPw="sena2008"
Ahora procedemos crear el archivo
Ahora procedemos crear el archivo smbldap.conf.smbldap.conf. El contenido de éste debeEl contenido de éste debe
llevar los siguiente (En la línea SID debemos poner nuestro SID, el cual llevar los siguiente (En la línea SID debemos poner nuestro SID, el cual generamos anteriormente).
generamos anteriormente). SID=
SID=" " S-9-5-21-31598998S-9-5-21-3159899829-923882392-5429-923882392-54889933"889933"
sambaDomain=
sambaDomain="GRUPO9""GRUPO9"
ldapTLS="0"
ldapTLS="0"
suffix="dc=
suffix="dc=grupo9grupo9,dc=com",dc=com"
usersdn="ou=Users,${suffix}" usersdn="ou=Users,${suffix}" computersdn="ou=Computers,${suffix}" computersdn="ou=Computers,${suffix}" groupsdn="ou=Groups,${suffix}" groupsdn="ou=Groups,${suffix}" idmapdn="ou=Idmap,${suffix}" idmapdn="ou=Idmap,${suffix}" sambaUnixIdPo
sambaUnixIdPooldn="sambaoldn="sambaDomainName=DomainName=GRUPO9GRUPO9,${suffix}",${suffix}"
scope="sub" scope="sub" hash_encrypt="SSHA" hash_encrypt="SSHA" userLoginShell="/bin/bash" userLoginShell="/bin/bash" userHome="/home/%U" userHome="/home/%U"
defaultComputerGid="515" defaultComputerGid="515" skeletonDir="/etc/skel" skeletonDir="/etc/skel" defaultMaxPasswordAge="45" defaultMaxPasswordAge="45" userSmbHome="\\PDC-SRV-
userSmbHome="\\PDC-SRV-GRUPO9GRUPO9\%U"\%U"
userProfile="\\PDC-SRV-
userProfile="\\PDC-SRV-GRUPO9GRUPO9\profiles\%U"\profiles\%U"
userHomeDrive="H:"
userHomeDrive="H:"
userScript="logon.bat"
userScript="logon.bat"
mailDomain=
mailDomain="grupo9.com""grupo9.com"
smbpasswd="/usr/bin/smbpasswd"
smbpasswd="/usr/bin/smbpasswd"
Pr
Prococeededemomos s a a popoblblaar r la la bbasase e dde e dadatotos s LLDADAP P y y a a crcreaear r lla a ccueuentnta a dede Administrator en el dominio Administrator. Al final no pedirá la contraseña del Administrator en el dominio Administrator. Al final no pedirá la contraseña del Administrator
Administrator, la , la cual serácual será “sena2008” “sena2008” ..
#smbldap-popu
#smbldap-populate -m late -m 512 -a Administrator 512 -a Administrator
Se
Se prprococedede e a a cacambmbiaiar r el el núnúmemero ro UIUID D de de la la cucuenentata, , de de lo lo cocontntrararirio o elel Administrator no podrá utilizar el servidor de correos con ésta cuenta, además Administrator no podrá utilizar el servidor de correos con ésta cuenta, además se debe agregar el usuario Administrador al grupo
se debe agregar el usuario Administrador al grupo “Domain Users” “Domain Users” ..
#smbldap-use
#smbldap-usermod -u rmod -u 3000 -G 3000 -G "Domain Users" Administrat"Domain Users" Administrator or
Editar el archivo
Editar el archivo nsswitch.conf nsswitch.conf , para luego poder visualizar los usuarios y, para luego poder visualizar los usuarios y
grupos del LDAP. grupos del LDAP. #pico /etc/nsswitch.conf
#pico /etc/nsswitch.conf
El archivo debe tener el
El archivo debe tener el siguiente contenido.siguiente contenido. # /etc/nsswitch.conf
# /etc/nsswitch.conf
#
#
# Example configuration of GNU Name Service Switch functionality.
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc' and `info' packages installed, try:
# If you have the `glibc-doc' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
# `info libc "Name Service Switch"' for information about this file.
p paasssswwdd:: ccoommppaatt ldapldap g grroouupp:: ccoommppaatt ldapldap s shhaaddooww:: ccoommppaatt ldapldap h hoossttss:: ffiillees s ddnnss n neettwwoorrkkss:: ffiilleess p prroottooccoollss:: ddb b ffiilleess
s seerrvviicceess:: ddb b ffiilleess e etthheerrss:: ddb b ffiilleess r rppcc:: ddb b ffiilleess n neettggrroouupp:: nniiss Pa
Para ra cocompmprorobabar r si si esestá tá en en bubuen en fufuncncioionanamimienentoto, , didigigitatamomos s el el sisiguguieientntee comando.
comando. #getent group
#getent group
Debemos cerciorarnos de que al final aparezca algo como esto, lo cual indica Debemos cerciorarnos de que al final aparezca algo como esto, lo cual indica que está visualizando la base de datos LDAP.
que está visualizando la base de datos LDAP. Domain Admins:*:512: Domain Admins:*:512: Domain Users:*:513:Administrator,mauro,fefe,jona Domain Users:*:513:Administrator,mauro,fefe,jona Domain Guests:*:514: Domain Guests:*:514: Domain Computers:*:515: Domain Computers:*:515: Administrators:*:544: Administrators:*:544: Account
Account Operators:*:5Operators:*:548:48:
Print Operators:*:5Operators:*:550:50:
Backup
Backup Operators:*:Operators:*:551:551:
Replicators:*:552:
Replicators:*:552: