En el anterior post explicaba cómo compartir impresoras con Samba. Como sé que os gustó, hoy os explico cómo compartir directorios con Samba.
Instrucciones
Voy a partir de qué tenemos la siguiente estructura de directorios que se quiere compartir:
drwxr-x--- user group dir01
drwxr-x--- user group dir02
drwxr-x--- user group dir03
Como se puede ver, a estos directorios sólo puede acceder el usuario user y los usuarios del grupo group, aunque estos últimos sólo con permisos de lectura sobre los directorios.
Lo primero que se debe hacer es añadir el usuario (o los usuarios) que podrán acceder a nuestros datos compartidos. Para ello se ejecuta:
# smbpasswd -a user
Nos pedirá una contraseña, ésta puede ser distinta a la que tenga el usuario para acceder a la máquina.
Una vez añadido el usuario (o los usuarios), se podrá configurar Samba para que comparta los directorios. Para ello se modifica el archivo /etc/samba/smb.conf y se añade un elemento del siguiente tipo por cada directorio a compartir:
[nombre_directorio_a_compartir]
comment = Comentario del directorio compartido
path = /ruta/al/directorio
read only = yes # Indica si el acceso será sólo lectura
write list = user # Indica los usuarios/grupos que tendrán acceso de escritura
create mask = 0640 # Máscara de los permisos al crear archivos
directory mask = 0750 # Máscara de los permisos al crear directorios
guest ok = no # Acceso sin autenticación
De este modo, para el ejemplo que he puesto se tendrían que añadir tres elementos de este tipo, quedando el archivo similar a este:
[global]
display charset = UTF-8
server string = NOMBRE-DE-LA-MAQUINA
workgroup = GRUPO-DE-TRABAJO
netbios name = NOMBRE-NETBIOS-MAQUINA
invalid users = root # Para que no se pueda acceder como root
[dir01]
comment = Directorio 01
path = /home/user/dir01
read only = yes
write list = user
create mask = 0640
directory mask = 0750
guest ok = no
[dir02]
comment = Directorio 02
path = /home/user/dir02
read only = yes
write list = user
create mask = 0640
directory mask = 0750
guest ok = no
[dir03]
comment = Directorio 03
path = /home/user/dir03
read only = yes
write list = user
create mask = 0640
directory mask = 0750
guest ok = no
Después de esto sólo hay que reiniciar Samba y listo, ya se podrá acceder a dichos directorios compartidos utilizando el usuario user.
# /etc/init.d/samba restart
Basado en Compartir directorios con Samba del blog de Iván López.