Configuración avanzada de Samba en Ubuntu 18.04 LTS
En SomeBooks.es, ya hemos aprendido a utilizar Ubuntu 18.04 LTS para acceder a los datos compartidos por los miembros de un grupo de trabajo Windows (si lo necesitas, puedes consultar el artículo Usar recursos de un grupo trabajo desde Ubuntu 18.04 LTS).
También hemos aprendido el método básico que nos ofrece la interfaz gráfica para que sea el equipo con Ubuntu 18.04 LTS el que comparta sus datos con el grupo de trabajo (En este caso, puedes consultar el artículo Compartir archivos con un grupo de trabajo desde Ubuntu 18.04 LTS).
Sin embargo, existen ocasiones donde tenemos que realizar una configuración más precisa del comportamiento de Samba. Por ejemplo, cuando necesitamos cambiar el nombre del grupo de trabajo predeterminado, o indicar, de un modo preciso, las características de los recursos compartidos. En estos casos, deberemos recurrir al archivo smb.conf, que es donde se guardan los parámetros por los que se rige Samba para su funcionamiento.
Si aún no has compartido ningún recurso con el grupo de trabajo, puede que el archivo smb.conf ni siquiera exista. Esto es porque aún no se habrán instalado los componentes que nos permiten realizar dicha tarea.
En ese caso, bastará con realizar la instalación a mano, abriendo una nueva ventana de terminal (recuerda que puedes obtenerla con la combinación de teclas Alt + Control + T) y ejecutando una orden como esta:
sudo apt install samba
El archivo smb.conf está formado por texto plano, por lo que podremos modificarlo con cualquier editor de textos (por ejemplo, gEdit). Sin embargo, para poder guardar los cambios, necesitaremos que el editor se esté ejecutando con privilegios de administración.
Probablemente la forma más sencilla de conseguirlo es abrir una ventana de terminal y escribir una orden como esta:
sudo gedit /etc/samba/smb.conf.
Cambiar el nombre del grupo de trabajo
Uno de los ajustes más evidentes que podremos hacer en el archivo de configuración, será cambiar el nombre del grupo de trabajo predeterminado.
Para lograrlo, una vez que nos encontremos en la ventana del editor, localizaremos la línea que comienza con la palabra workgroup.
Una vez localizada, sustituimos el nombre predeterminado del grupo de trabajo por el que se esté usando en nuestra red local.
Cuando terminemos, estaremos listos para guardar los cambios y cerrar el editor.
Y para que esos cambios comiencen a estar vigentes, bastará con reiniciar el servicio. Algo que podemos lograr fácilmente con una orden como esta:
sudo systemctl restart smbd
Algunos detalles más sobre el archivo smb.conf
Como hemos dicho antes, el archivo smb.conf contiene la información de configuración que necesita Samba para funcionar. Antes de la versión 4, se encontraba en la ruta /etc/samba/, pero a partir de ésta, se ha movido a /usr/local/samba/etc/.
Según las necesidades de nuestra instalación el archivo smb.conf puede constar sólo de unas cuantas líneas o puede ser tremendamente complejo. Sin embargo, siempre tiene una estructura similar.
La forma en la que smb.conf organiza la información es mediante secciones, siendo estas las tres más importantes:
-
[global]: Contiene las opciones de configuración globales de Samba.
-
[homes]: Permite compartir la Carpeta personal de los usuarios, indicando además los permisos que se aplicarán.
-
[printers]: Permite definir las impresoras que se comparten y los permisos que se tendrán sobre ellas.
Además, deberemos tener una sección por cada recurso compartido. Por ejemplo, para compartir la unidad óptica del equipo con otros usuarios de la red, deberemos disponer de una sección parecida a esta:
[cdrom] path = /cdrom read only = yes
Samba no distingue entre mayúsculas y minúsculas, ni en los nombres de sección, ni en los parámetros, ni en sus valores.
Como podemos apreciar, bajo el nombre de la sección aparecen diferentes parámetros que indican los valores de configuración del recurso compartido. Lógicamente, los parámetros incluidos y sus valores dependerán de la configuración que estemos especificando.
Si un mismo parámetro aparece en la sección global (que se aplicará a todos los recursos) y en una sección en particular, y sus valores son diferentes, en dicha sección predominará el valor propio sobre el global.
Además de los parámetros, en Samba disponemos de un amplio conjunto de variables que podemos utilizar como parte del valor de un parámetro y que determinan diferentes aspectos del sistema. Cada variable comienza por un carácter % seguido de una sola letra.
Por ejemplo, la variable %a representa la arquitectura del equipo cliente. Algunos posibles valores de la variable %a son: WinXP, Win2K3, Samba, etc. Así, podemos usar la variable %a para compartir una subcarpeta única para cada tipo de cliente. La sección del recurso compartido podría tener un aspecto parecido a este:
[datos] path = /home/datos/%a writeable= true
En cualquier caso, debemos indicar que el objetivo de este documento no es enumerar todos los parámetros y sus posibles valores, ni todas las variables disponibles en Samba. En su lugar, iremos explicando los que vayamos utilizando, a medida que sean necesarios. Se recomienda una consulta del manual oficial para obtener una información más completa de este aspecto, cuando se estime necesario.
Además de todo lo dicho anteriormente, en el documento smb.conf podemos incluir comentarios que nos ayuden a documentar la configuración que estamos realizando. Para lograrlo, sólo tenemos que comenzar la línea con una almohadilla (#) o un punto y coma (;). Los comentarios también se utilizan habitualmente para anular algún parámetro sin tener que borrarlo (de esta forma, lo podremos recuperar más tarde sólo con quitar el comentario).
Ahora que conoces un poco más sobre la estructura del archivo smb.conf, es fundamental que apliques una regla de precaución básica:
Realizar una copia de seguridad del archivo en una ubicación diferente antes de realizar cambios. De esta forma, siempre podrás recuperar la versión anterior si las cosas no funcionan como esperabas.
Y esto es todo por el momento. Espero que te resulte útil.