Este artículo explica cómo agregar un nuevo share (carpeta compartida en jerga Windows) y usuario a un servidor Samba ya configurado y funcionando.



Agregar un nuevo usuario a un servidor Samba

En los sistemas operativos de la familia Unix, Samba utiliza los usuarios del sistema para la autenticación. Aunque cada usuario posee una contraseña específica para Samba. De esta forma, no todos los usuarios de un sistema Unix tienen acceso al servidor de archivos Samba, sino sólo aquellos que además poseen su correspondiente contraseña de Samba.

Para agregar un nuevo usuario a un servidor Samba, primero es necesario crear el usuario Unix. Por ejemplo, si se necesita agregar al usuario "Cosme Fulanito", cuyo nombre de usuario será "cfulanito", ejecutar:

# useradd -c "Cosme Fulanito" -s /sbin/nologin cfulanito

Se observa que se ha creado el usuario "cfulanito" sin acceso a una shell (/sbin/nologin). Si se requiere que el usuario tenga acceso a una terminal en el servidor Unix, será necesario cambiar la shell por /bin/sh u otra, y luego asignarle un password Unix:

# passwd cfulanito

Se ha creado el usuario Unix, pero éste aún no posee una contraseña para Samba, por ende no figura al listar los usuarios de Samba:

# pdbedit -L
nobody:32767:Unprivileged user
linuxito:1000:Linuxito

El siguiente paso entonces consiste en crear la contraseña de Samba para el nuevo usuario:

# smbpasswd -a cfulanito

Ahora, al listar los usuarios de Samba, aparece el nuevo usuario:

# pdbedit -L
nobody:32767:Unprivileged user
linuxito:1000:Linuxito
cfulanito:1002:Cosme Fulanito

Crear un nuevo share de Samba

Para comenzar se debe crear un directorio en una ruta conveniente (por ejemplo, /var/samba):

# cd /var/samba/
# mkdir compartido

Suponiendo que sólo se desea que el usuario "Cosme Fulanito" tenga privilegios sobre este nuevo share, modificar los permisos adecuadamente:

# chown cfulanito:cfulanito compartido/
# chmod 750 compartido/

Luego de pasar el filtro de permisos de Samba, se debe pasar el filtro de permisos a nivel sistema de archivos. Por más que se dé permiso para escritura sobre el nuevo share en la configuración del servidor Samba, si el directorio no tiene permisos de escritura a nivel sistema de archivos, las escrituras fallarán.

En este caso se desea que el usuario "Cosme Fulanito" tenga permisos de escritura sobre el nuevo share "compartido":

# ll -d compartido
drwxr-x---  2 cfulanito  cfulanito   512B Dec 19 10:19 compartido

Por último, se debe definir el share en la configuración del servidor Samba:

# nano /etc/samba/smb.conf

Agregar la siguiente configuración:

[Compartido]
   comment = Nuevo share
   path = /var/samba/compartido
   guest ok = no
   browseable = no
   writable = yes
   write list = cfulanito
   create mask = 0777
   directory mask = 0777

No es necesario que el nombre del share (encerrado entre corchetes) coincida con el directorio (variable path).

Guardar los cambios y reiniciar el servidor Samba. Por ejemplo en OpenBSD:

/etc/rc.d/samba restart

Verificar el funcionamiento del nuevo share y usuario accediendo al mismo. Desde sistemas Unix a través de la URL:

smb://servidor.samba.com/Compartido

Desde sistemas Windows a través de la URL:

\\servidor.samba.com\Compartido

En ambos casos, hacerlo desde un navegador de archivos.

Referencias

man useradd
man pdbedit
man smbpasswd
man samba
man smb.conf


Tal vez pueda interesarte


Compartí este artículo