Configurar Samba en Ubuntu 22.04



Con el lanzamiento de Ubuntu 22.04, se produjeron varios cambios  para hacer de este último lanzamiento LTS uno de los mas seguros. Pero hay un cambio que ha causado un poco de revuelo. Ese problema son los permisos predeterminados de los directorios de inicio (/home) de los usuarios.

Anteriormente, el permiso del directorio de inicio del usuario se establecía en 755, lo que permitía a otros usuarios ver el directorio, así como los archivos y subdirectorios que lo contenían. Para evitar este problema de seguridad, los desarrolladores establecieron el permiso para los directorios de inicio como 750, lo que significa que solo el propietario del directorio de inicio puede ver el contenido.

Si quieres compartir tu carpeta ~/Público, esto causa un gran problema con Samba, ya que el propietario del directorio de inicio es el único que puede acceder o atravesar la carpeta ya sea localmente o a través de su LAN. Este cambio se realizó únicamente por razones de seguridad, y creo que fue el camino correcto, ya que no hay ninguna razón por la que otros usuarios puedan ver el contenido del directorio de inicio de los demás.

Con Samba, incluso si usas public = yes, solo el propietario de ese directorio de inicio puede ver el recurso compartido. Eso significa que incluso si permites específicamente que otros creen y eliminen archivos en esta carpeta a través de la ventana "Compartición de carpetas" de Nautilus ( Figura A ), no funcionará.


Figura A

Imagen: Configuración de permisos de modo que cualquier persona con una cuenta pueda acceder a la carpeta Pública.

La Instalacion de Samba

Antes de empezar a configurar samba ¿lo tienes instado?. Para instalar Samba tenemos que escribir en consola el siguiente comando:

sudo apt install samba

Una vez instalado veremos las diferentes soluciones posibles para esto. 

La solución más fácil pero menos segura

Esta solución particular es el método más fácil de solucionar el problema. Sin embargo, esto conlleva que, al usar esta opción, estás eludiendo la seguridad que se agregó al despojar a otros del derecho a ver tu directorio de inicio.

Si estás de acuerdo con eso, puedes sortear la actualización cambiando el permiso de tu directorio de /home a 755 con el comando:

chmod o+rx /home/USUARIO

Donde USUARIO es tu nombre de usuario.

Esto debería resolver el problema, pero no es exactamente la solución más segura.

La solución menos fácil pero más segura

Si esa no es una opción, siempre puedes usar la directiva de usuario forzado de Samba, que obliga al usuario invitado a hacerse pasar por ti. Esto conserva la medida de seguridad pero permite que otros usuarios naveguen por el contenido de tu directorio ~/Público.

Para usar este método, abre el archivo de configuración de Samba con:

sudo nano /etc/samba/smb.conf

En la parte inferior de ese archivo, pega lo siguiente:

[Público]

path = /home/usuario/Público

public = yes

guest only = yes

browsable = yes

writable = no

read only = no

force create mode = 0666

force directory mode = 0777

En la parte inferior de esa sección, agrega la siguiente línea:

force user = USUARIO

Donde USUARIO es tu nombre de usuario. Guarda y cierra el archivo. Reinicia Samba con:

sudo systemctl restart smbd

En este punto, cualquier usuario de su sistema Linux podrá ver el contenido del recurso compartido ~/Público utilizando sus credenciales de inicio de sesión cuando se conecte a Samba.

La solución desafiante pero más segura

La mejor opción sería compartir un directorio fuera de su home porque evita todo el problema de los permisos. Vamos a crear un nuevo directorio con el comando:

sudo mkdir /datos

Cambia el permiso de ese directorio con:

sudo chmod -R ugo+rw /datos

Ahora, vamos a crear el recurso compartido. Abre la configuración de Samba con:

sudo nano /etc/samba/smbd.conf

En la parte inferior de ese archivo, pega lo siguiente:

[datos]

path = /datos

guest only = yes

browsable = yes

writable = no

read only = no

force create mode = 0666

force directory mode = 0777

Guarda y cierra el archivo. Reinicia Samba con:

sudo systemctl restart smbd

Ahora, deberías ver el nuevo recurso compartido de datos, al que cualquier usuario con una cuenta en el sistema debería poder acceder. También puedes agregar public = yes para dar acceso anónimo al recurso compartido.

Y eso es todo lo que hay que hacer para ayudar a Samba a sortear los nuevos permisos del directorio de inicio en Ubuntu 22.04. Si no estás seguro de qué solución usar, elige la opción final, ya que es más segura. De cualquier manera podrás dar a esos usuarios acceso al contenido de sus recursos compartidos de Samba, ya sea que estén en su directorio de inicio o no.


Visto en https://www.techrepublic.com/article/big-change-samba-ubuntu/

Comentarios

Entradas populares de este blog

TP-Link WR841ND repetidor WIFI

Instalar y Configurar aMule en Ubuntu

II. Vodafone Technicolor Tc7230 modo bridge.