Este documento proporciona instrucciones para configurar Samba como un controlador de dominio de Windows en Ubuntu 11.10/12.04. Explica cómo instalar Samba, respaldar el archivo de configuración smb.conf, agregar usuarios y grupos, configurar smb.conf, y reiniciar el servicio Samba. El objetivo es establecer un servidor Samba que pueda administrar cuentas de usuario y otros recursos de red para clientes Windows.
1. Samba en Ubuntu 11.10/12.04
Configuración de samba en un red Windows xp/Seven
2. La idea?
Montar Samba como PDC es una buena alternativa frente a
utilizar widows 2000 o superior para manejar cuentas de
usuario y otras cosas más. Evidentemente, este pequeño
howto no busca hacerlos expertos en el tema, sólo ofrece
unos humildes cimientos de los cuales su imaginación e
investigación jugarán un rol fundamental en su
aprendizaje referente a ciertas tareas que como
informáticos, se nos suele pedir al menos en alguna
oportunidad.
3. La instalación
Como cualquier package que se necesite instalar en alguna
distro como ubuntu (siendo Superusuario):
#apt-get install samba samba-doc
Con esto, se instalará el package de samba y su
documentación para extraer el schema que se utilizará
más adelante.
4. Respaldemos!
No es una obligación, pero nunca es un paso que esté de
más... antes de seguir, en caso de que se necesite
restaurar el smb.conf en alguna oportunidad.
#cp -p /etc/samba/smb.conf /etc/samba/smb[date].conf
Este comando creará un archivo en el directorio /etc/samba,
donde [date] es la fecha del dia en que realizamos el
respaldo. (puede ser otro número – es sólo una
sugerencia)
5. Manos a la obra!
Una vez que los pasos anteriores estén realizados,
comencemos con la travesia.
El primer paso será crear un usuario de sistema:
#adduser usamba
En éste caso utilizo 'usamba', pero uds. pueden utilizar el
nombre que deseen... será mientras solo una cuenta mas
en tu /home. Puedes comprobar la existencia del usuario
con un grep al archivo /etc/passwd.
6. Smb.conf ahi vamos!
La verdad es que no es un archivo muy complejo de
modificar (no es tan extenso como otros), pero tratare de
que quede ordenado (si no es asi, pidelo a
gcuello.info@gmail.com - y con gusto lo envio)
Las directivas que deben ser modificadas serían:
workgroup = [elnombredetudominio].cl
server string = %h server
dns proxy = no (si es que tienes uno, pone su ip)
max log size = 10000 (al menos yo lo amplie)
syslog = 0
security = domain
8. Smb.conf ahi vamos!
logon drive = H: (O la unidad que quieras)
logon home = %N%U
; logon script = logon.cmd
local master = yes
os level = 64
preferred master = yes
add user script = /usr/sbin/adduser --quiet --disabled-
password --gecos "" %u
add machine script = /usr/sbin/useradd -g machines -c
"%u machine account" -d /var/lib/samba -s /bin/false
%u
add group script = /usr/sbin/addgroup --force-badname %g
9. Smb.conf ahi vamos!
printing = cups (por si se interesan en servidor de
impresora)
printcap name = cups
; include = /home/samba/etc/smb.conf.%m
domain master = yes (si es que tu dominio sera master)
[homes]
comment = Home Directories
browseable = no
; read only = yes
create mask = 0700
directory mask = 0700
valid users = %S
10. Smb.conf ahi vamos!
[netlogon]
comment = Network Logon Service
path = /home/samba/netlogon
guest ok = yes
read only = yes
share modes = no
[profiles]
comment = Users profiles
path = /home/samba/profiles
avalaible = yes
guest ok = no
printable = no
browseable = no
11. Smb.conf ahi vamos!
create mask = 0600
directory mask = 0700
locking = no
strict locking = no
profile acls = yes
force user = %U
valid user = %U @"Domain Admins"
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
12. Smb.conf ahi vamos!
[print$] (en caso de impresoras)
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
;[cdrom] (en caso de compartir unidades ópticas)
; comment = Samba server's CD-ROM
; read only = yes
; locking = no
; path = /cdrom
; guest ok = yes
13. Ya llevamos buena parte!
Con esa configuración (De verdad espero que se
comprenda) Debieramos estar listos con smb.conf – hay
cosas que quizá no se necesitará, como las opcionales
que especifiqué, como impresoras, cd-rom...
personalmente es secundario en este momento, pero por
seguridad, seria bueno activarlas/restringuirlas
posteriormente probado el funcionamiento.
Al igual que al principio, yo que ustedes, respaldaría de la
forma que les mostré.
14. Sigamos con nuestro PDC
Agregaremos un grupo de usuario al que llamaremos
'equipos' (nombre a tu elección). Lo importante es que en
este grupo irá nuestros clientes.
#groupadd –g 201 equipos
Si quieren verificar su creación, un grep al archivo
/etc/group, tal como #grep equipos /etc/group
15. Sigamos con nuestro PDC
A continuación, crearemos los directorios que expresamos
en smb.conf con referencia a netlogon y profiles:
#mkdir –m 0775 /home/netlogon
#mkdir /home/samba /home/samba/profiles
Aprovechemos de agregar el usuario de tu dominio (el que
aparece en las primeras lineas de smb.conf:
#useradd –m [elnombredetudominio].cl
16. Sigamos con nuestro PDC
Le ingresas una contraseña de sistema:
#passwd [elnombredetudominio].cl
Le ingresas una contraseña de samba:
#smbpasswd –a [elnombredetudominio].cl
Y también a el usuario creado al principio (usamba)
#smbpasswd –a usamba
17. Sigamos con nuestro PDC
Ahora, agregarás el nombre de maquina como un usuario al
grupo “equipos”:
#useradd –g machines –d /dev/null –s /dev/null –c
“Cliente Windows” [nombreMaquinaAUnir]
Le ingresas una contraseña de samba:
#smbpasswd –a –m [nombreMaquinaAUnir]
18. Sigamos con nuestro PDC
Y al usuario usamba:
#smbpasswd –e usamba
Para conocer el nombre de máquina de windows, es sencillo
… seguro ya lo sabes.
Para ir finalizando, reinicias el servicio de samba:
#/etc/init.d/samba restart
También puede ser con 'services'
19. Finalizando...
Al fin!, ya tienes todo listo como para ir a tu cliente windows
y agregarlo al dominio creado. Puedes usar la cuenta de
usamba para iniciar sesión.
Evidentemente, tanto servidor como cliente deben estar en
la misma red para que no haya problemas.
Este howto, no aplica roaming profiles ni nada más
elaborado que lo básico. Obviamente puedes ir probando
con tus propios comandos los distintos intereses, pero al
menos a mi me quedo funcional.
20. A considerar
Puedes ir mezclando más cosas respecto a tus
necesidades. Para una red pequeña funciona muy bien;
quizá si se requiere algo mayor, no dudaria en utilizar
OpenLdap para manejar más políticas y directivas.
Para llevar acabo éste howto, se debe contar con cierto
conocimiento previo de lo que se quiere hacer y la
utilización de comandos básicos.
La solución fue probada con Win xp y windows 7, pero para
que éste ultimo detecte el dominio tuve que instalar una
especie de parche que lo puedes encontrar en:
http://www.gulic.org/node/1256 - Lo instalas en tus win7 y
a disfrutar y experimentar :)
22. Manos a la obra!
Una vez que los pasos anteriores estén realizados,
comencemos con la travesia.
El primer paso será crear un usuario de sistema:
#adduser usamba
En éste caso utilizo 'usamba', pero uds. pueden utilizar el
nombre que deseen... será mientras solo una cuenta mas
en tu /home. Puedes comprobar su creación haciendo un
grep al archivo /etc/passwd.