Configurar Samba

manuales - Linux

Cuando compartimos carpetas en, Ubuntu, por ejemplo y... joder nos pide usu y pass ¿?¿?¿?¿? metemos el del usuario del Linux y... ¿?¿¿?¿?¿?¿?¿?¿?¿? y es que hay que, además de configurar el samba, añadir esos usuarios como usuarios samba...

Samba es el software que implementa en Linux el protocolo Netbios, usado nativamente por los sistemas Windows para comunicarse en red. Al instalar y activar Samba en un equipo Linux, este puede integrarse en una red Windows y compartir recursos.
Samba, al igual que Apache, es todo un clásico. Lleva muchos años como referencia, de ahí su solidez y popularidad.
En el capítulo anterior vimos cómo configurar Samba de la forma más sencilla posible, apenas unas líneas en el archivo /etc/samba/smb.conf, con las que el equipo Linux ya podía compartir carpetas y archivos en una red Windows de forma anónima.
Para proteger o restringir el acceso, basta una pequeña modificación en el archivo de configuración anterior, así como dar de alta usuarios Samba con sus correspondientes contraseñas.
Recuperando el archivo smb.conf inicial, destaco los cambios en negrita:

[global]
workgroup = INICIOMS
netbios name = Linux
server string = Servidor anonimo
security = share // línea modificada
encrypt passwords = yes // línea añadida
browseable = yes
hosts allow = 192.168.2.
[compartido]
path = /compartido
commnent = Archivos compartidos en Linux
read only = No
guest ok = Yes // línea eliminada

Para crear los usuarios y sus contraseñas de Samba, usamos el programa smbpasswd. Recuerda que deben ser usuarios del sistema, es decir del ordenador Linux donde corre Samba. Tecleamos en consola:

# smbpasswd -a fulano

El shell nos pedirá dos veces que escribamos la contraseña para el usuario fulano:

New SMB password:
Retype new SMB password:

Y si no ha habido problema nos informa que el nuevo usuario ha sido dado de alta en Samba:

Added user fulano

Ahora ya podrá ingresar con estos datos en la carpeta compartida de Linux, desde un PC Windows en red. Si no se autentifica, la carpeta de Linux será inaccesible.
Si la cantidad de usuarios Samba va a ser muy grande, existe un script llamado mksmbpasswd que convierte las entradas de /etc/passwd al formato de smbpasswd, aunque igualmente las contraseñas Samba hay que asignarlas a mano.

ACT 22/03/2011 --------------------------------------------------------------------------------------------------------------

Sin continuamos con problemas, esta es una config reciente que funciona correctamente

[global]

log file = /var/log/samba/log.%m
load printers = yes
cups options = raw
netbios name = MAQUINA
server string = MAQUINA
default = global
workgroup = GRUPO_TRABAJO
os level = 20
security = share
passdb backend = tdbsam
max log size = 50

[COMPARTIDO]

comment = pa ti y pa mi
writeable = yes
public = yes
path = /opt/compartido