Cómo configurar una carpeta compartida de red en Ubuntu con Samba

Si alguna vez ha querido compartir fácilmente archivos en su red doméstica a través de múltiples sistemas operativos, entonces no busque más, Samba.

Esta guía le mostrará cómo configurar una carpeta compartida de red en Ubuntu Linux usando Samba. Con el servidor Samba, puede compartir archivos fácilmente en su red, independientemente de si está usando Windows, macOS o Linux.

¿Qué es la samba?

Samba es un servicio de intercambio de archivos que implementa versiones de código abierto del conjunto de protocolos SMB, que fue desarrollado originalmente por Microsoft e IBM. Samba contiene programas que le permiten interoperar con los protocolos de intercambio de archivos de Microsoft Windows.

Samba también le permite comunicarse fácilmente con otros clientes utilizando una red TCP / IP estándar.

Paso 1: Instalar Samba

Esta guía usará Ubuntu Linux 20.04 LTS, pero los pasos deberían funcionar incluso si está usando Ubuntu 16.04 o posterior. Empiece por actualizar la información de origen de su paquete.

 sudo apt update

Luego, instale Samba usando el siguiente comando:

 sudo apt install samba

Para comprobar si Samba se ha instalado correctamente, ejecute el siguiente comando:

 smbd --version

La salida debe ser similar a la siguiente.

Paso 2: configurar Samba

Para poder compartir archivos de forma segura con otros dispositivos de red, debe configurar el servidor Samba. El archivo de configuración principal de Samba se encuentra en /etc/samba/smb.conf en su PC. Esta guía usa el editor de texto Vim para editar el archivo de configuración de Samba, pero no dude en usar cualquier otro editor de texto de su elección.

Nota: Necesita tener privilegios administrativos para editar el archivo de configuración.

 sudo vim /etc/samba/smb.conf

Agregue las siguientes líneas al final del archivo de configuración.

 [sambashare]
comment= Network Shared Folder by Samba Server on Ubuntu
path = /home/your_username/sambashare
force user = smbuser
force group = smbgroup
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
public = yes
read only = no

Recuerde actualizar el parámetro de ruta con su nombre de usuario. Puede obtener su nombre de usuario ejecutando el siguiente comando:

 echo $USER

Para salir del editor de Vim después de realizar los cambios, simplemente escriba : wq y presione la tecla Intro .

Comprensión de las configuraciones

Aquí hay una breve descripción de las líneas de configuración que acaba de agregar.

  • Sección : Una nueva sección en el archivo de configuración está representada por corchetes ( [] ). En este caso, la sección es [sambashare] .
  • Comentario : Esta línea de código proporciona un breve resumen de lo que trata esta sección. Especialmente, es útil si tiene varias secciones de directorio compartido en el archivo de configuración.
  • Ruta : esta es la ruta al directorio de su carpeta compartida de red designada.
  • Forzar usuario : el usuario del sistema que utilizará el servidor Samba para compartir archivos.
  • Force group : El nombre del grupo al que pertenecerá el usuario del sistema Samba.
  • Crear máscara : este parámetro establecerá permisos para los archivos recién creados en la carpeta compartida. En este caso, el valor es 0664, lo que significa que el propietario del archivo y el grupo tendrán permisos de lectura y escritura, mientras que otros usuarios solo tendrán permisos de lectura.
  • Forzar modo de creación : funciona junto con el parámetro de máscara de creación para establecer los permisos de archivo correctos.
  • Máscara de directorio : este parámetro determina los permisos para las carpetas en la carpeta compartida. Los permisos de 0775 significa que el propietario y el grupo tienen permisos de lectura, escritura y ejecución, mientras que otros solo tienen permisos de lectura y ejecución.
  • Forzar modo de directorio : este parámetro funciona en colaboración con la máscara de directorio para asegurarse de que se establezca el permiso de directorio correcto.
  • Pública : este parámetro especifica que esta es una carpeta pública en su red y que otros dispositivos pueden acceder a ella.
  • Solo lectura : especifica los permisos para modificar los archivos dentro de la carpeta compartida.

Paso 3: creación de recursos de Samba

Una vez configurado el servidor Samba, ahora debe crear los recursos necesarios, como el usuario de Samba y el directorio para compartir. Estos recursos facilitarán el proceso de compartir una carpeta en la red.

1. Carpeta compartida

Debe crear la carpeta compartida en la ruta especificada en el archivo de configuración de Samba anterior. Esta guía utiliza una carpeta compartida llamada sambashare ubicada en su directorio personal.

Navegue a su directorio de inicio usando el comando cd .

 cd ~

Luego crea el directorio compartido usando el siguiente comando:

 mkdir -p sambashare

2. Usuario y grupo de Samba

El siguiente paso es crear el usuario y el grupo del sistema Samba especificado en el archivo de configuración.

Puede crear el grupo del sistema Samba usando el siguiente comando:

 sudo groupadd --system smbgroup

A continuación, cree el usuario del sistema Samba usando useradd .

 sudo useradd --system --no-create-home --group smbgroup -s /bin/false smbuser

El comando anterior crea un usuario del sistema y agrega el usuario al grupo Samba creado anteriormente. Además, dado que se trata de un usuario del sistema, no se creará ningún directorio de inicio.

3. Cambio del propietario de la carpeta compartida

Una vez que el usuario y el grupo de Samba están en su lugar, ahora puede cambiar el propietario de la carpeta compartida al nuevo usuario smbuser y el grupo a smbgroup . Puede lograr esto usando el siguiente comando:

 sudo chown -R smbuser:smbgroup ~/sambashare

Finalmente, emita el comando a continuación para otorgar al grupo acceso de escritura a la carpeta compartida y al contenido dentro de ella.

 sudo chmod -R g+w ~/sambashare

Paso 4: reiniciar el servicio Samba

Debe reiniciar el servicio Samba para que los cambios en el archivo de configuración de Samba surtan efecto.

 sudo systemctl restart smbd

Una vez que se reinicia el servicio, puede verificar su estado con el siguiente comando:

 sudo systemctl status smbd

Nota : Si tiene su firewall habilitado, también debe agregar Samba a sus reglas habilitadas usando el comando ufw .

 sudo ufw enable samba

Paso 5: acceder a la carpeta compartida

Los dispositivos de su red ahora pueden acceder a su carpeta compartida.

En Windows

En Windows, puede acceder a la carpeta compartida utilizando el Explorador de Windows. Puede iniciar el explorador de archivos con el método abreviado de teclado de Windows + E.

En la barra de direcciones, escriba ip_address_of_pc_with_shared_folder sambashare .

Recuerde reemplazar con la dirección IP correcta y el nombre de la carpeta compartida.

El sistema también le pedirá que ingrese el nombre de usuario y la contraseña del usuario en la PC con Linux.

En Ubuntu

En Ubuntu Linux, abra el administrador de archivos predeterminado y haga clic en el botón Otras ubicaciones . Luego, en la entrada Conectar al servidor , ingrese una dirección IP en el siguiente formato:

 smb://ip_adresss_of_pc_with_shared_folder/sambashare

Puede conectarse como usuario registrado o anónimo. Tenga en cuenta que si selecciona Usuario registrado en el menú desplegable, deberá especificar las credenciales del usuario.

En macOS

Los usuarios de Mac también pueden acceder fácilmente a la carpeta compartida. En el menú del Finder, haga clic en la pestaña Red y aparecerá la computadora con la carpeta pública compartida. Selecciónelo y debería poder acceder a los archivos.

Compartir archivos entre varios dispositivos de forma eficiente

Esta guía ha analizado cómo compartir archivos en una red usando Samba. Con Samba, puede compartir archivos en una red independientemente del sistema operativo que esté ejecutando en los dispositivos.

No solo Linux, sino que también puede configurar una carpeta de red compartida en su máquina Windows.