Cómo instalar y configurar Samba en CentOS 8 Linux

1 mar 2021 8 min di lettura
Cómo instalar y configurar Samba en CentOS 8 Linux
Indice dei contenuti

Introducción

Samba es una reimplementación gratuita y de código abierto del protocolo de intercambio de archivos de red SMB /CIFS que permite a los usuarios finales acceder a archivos, impresoras y otros recursos compartidos.

En este tutorial, mostraremos cómo instalar Samba en CentOS 8 y configurarlo como un servidor independiente para permitir el intercambio de archivos entre diferentes sistemas operativos en una red.

Crearemos los siguientes recursos compartidos de Sambe y de usuarios.

Usuarios:

  • sadmin: un usuario administrativo con acceso de lectura y escritura a todos los recursos compartidos.
  • alice: un usuario habitual con su propio recurso compartido de archivos privados.

Comparte:

  • usuarios: este recurso compartido será accesible con permisos de lectura /escritura de todos los usuarios.
  • alice: solo los usuarios de alice y sadmin podrán acceder a este recurso compartido con permisos de lectura /escritura.

Se podrá acceder a los recursos compartidos de archivos desde todos los dispositivos de la red. Más adelante en el tutorial, también proporcionaremos instrucciones detalladas sobre cómo conectarse al servidor Samba desde clientes Linux, Windows y macOS.

Prerrequisitos

Antes de comenzar, asegúrese de haber iniciado sesión en el sistema CentOS 8 como usuario con privilegios de sudo.

Si desea instalar Samba en un servidor remoto, continúe leyendo, de lo contrario, omita el primer párrafo "Conectando al servidor" y lea el siguiente.

Conexión al servidor

Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:

ssh root@IP_DEL_SERVER

A continuación, deberá ingresar la contraseña del usuario root.

Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie root a su nombre de usuario:

ssh nome_utente@IP_DEL_SERVER

Luego se le pedirá que ingrese su contraseña de usuario.

El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Instalar Samba en CentOS 8

Samba está disponible en los repositorios estándar de CentOS. Para instalarlo en su sistema CentOS, ejecute el siguiente comando:

sudo yum install samba samba-client

Una vez que se complete la instalación, inicie los servicios de Samba y habilite el inicio automático al iniciar el sistema:

sudo systemctl start smb.service
sudo systemctl start nmb.service
sudo systemctl enable smb.service
sudo systemctl enable nmb.service

El smbd proporciona servicios de impresión y uso compartido de archivos y escucha en los puertos TCP 139 y 445. El nmbd proporciona servicios de nombres NetBIOS sobre IP a los clientes y escucha en el puerto 137 UDP.

Configurar el firewall

Ahora que Samba está instalado y ejecutándose en su computadora CentOS, deberá configurar el firewall y abrir los puertos necesarios. Para hacer esto, ejecute los siguientes comandos:

firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --zone=public --add-service=samba

Crear usuarios de Samba y estructura de directorios

Para facilitar el mantenimiento y la flexibilidad en lugar de utilizar directorios de inicio estándar ( /home/user ), todos los directorios y datos de Samba se colocarán en el directorio /samba

Empiece creando el directorio /samba

sudo mkdir /samba

Crea un nuevo grupo llamado sambashare. Luego agregaremos todos los usuarios de Samba a este grupo.

sudo groupadd sambashare

Establezca la propiedad del grupo del /samba en el grupo sambashare

sudo chgrp sambashare /samba

Samba utiliza un sistema de permisos de grupo y usuarios de Linux, pero tiene su propio mecanismo de autenticación separado de la autenticación estándar de Linux. Crearemos los usuarios usando el useradd y luego estableceremos la contraseña del usuario con la utilidad smbpasswd

Como se mencionó en la introducción, crearemos un usuario regular que tendrá acceso a su recurso compartido de archivos privados y una cuenta administrativa con acceso de lectura y escritura a todos los recursos compartidos en el servidor Samba.

Crea el usuario de Samba

Para crear un nuevo usuario llamado alice, use el siguiente comando:

sudo useradd -M -d /samba/alice -s /usr/sbin/nologin -G sambashare alice

useradd opciones del comando useradd tienen los siguientes significados:

  • -M: no crea el directorio de inicio del usuario. Crearemos manualmente este directorio.
  • -d /samba/alice: establece el directorio de inicio del usuario en /samba/alice.
  • -s /usr/sbin/nologin: deshabilita el acceso al shell para este usuario.
  • -G sambashare: agrega el usuario al grupo sambashare

Cree el directorio de inicio del usuario y establezca la propiedad del directorio para el alice y el grupo sambashare

sudo mkdir /samba/alice
sudo chown alice:sambashare /samba/alice

El siguiente comando agregará el bit setgid al /samba/alice para que los archivos recién creados en este directorio hereden el grupo del directorio principal. De esta forma, independientemente del usuario que cree un nuevo archivo, el archivo tendrá el propietario del grupo sambashare Por ejemplo, si no establece los permisos de directorio en 2770 y el usuario sadmin crea un nuevo archivo, el usuario alice no podrá leer /escribir en este archivo.

sudo chmod 2770 /samba/alice

alice la cuenta de usuario de Alice a la base de datos de Samba configurando la contraseña de usuario:

sudo smbpasswd -a alice

Se le pedirá que ingrese y confirme la contraseña del usuario.

New SMB password:
 Retype new SMB password:
 Added user alice.

Una vez que se establece la contraseña, habilite la cuenta de Samba escribiendo:

sudo smbpasswd -e alice
Enabled user alice.

Para crear otro usuario, repita el mismo procedimiento utilizado para crear el usuario de alice

A continuación, sadmin un usuario y un grupo sadmin. Todos los miembros de este grupo tendrán permisos administrativos. Más tarde, si desea otorgar permisos administrativos a otro usuario, simplemente agregue ese usuario al grupo sadmin

Cree el usuario administrativo escribiendo:

sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin

El comando anterior también creará un sadmin y agregará al usuario a los grupos sadmin y sambashare

Establezca una contraseña y habilite al usuario:

sudo smbpasswd -a sadmin
sudo smbpasswd -e sadmin

Luego, cree el Users

sudo mkdir /samba/users

Conjunto propiedad directorio para sadmin de usuario y sambashare grupo:

sudo chown sadmin:sambashare /samba/users

Este directorio será accesible para todos los usuarios autenticados. El siguiente comando configura el acceso de escritura /lectura a los miembros del sambashare en el /samba/users:

sudo chmod 2770 /samba/users

Configurar recursos compartidos de Samba

Abra el archivo de configuración de Samba y agregue las secciones necesarias para su correcto funcionamiento.

En este tutorial usaremos el editor nano. Puede usar cualquier otro editor, como Vim, instalado por defecto en CentOS.

sudo yum install nano

Abra el siguiente archivo de configuración:

sudo nano /etc/samba/smb.conf

Agregue las siguientes secciones:

[users]
 path = /samba/users
 browseable = yes
 read only = no
 force create mode = 0660
 force directory mode = 2770
 valid users = @sambashare @sadmin

 [alice]
 path = /samba/alice
 browseable = no
 read only = no
 force create mode = 0660
 force directory mode = 2770
 valid users = alice @sadmin

Las opciones tienen los siguientes significados:

  • [users] y [alice]: los nombres de los recursos compartidos que utilizará al iniciar sesión.
  • path: la ruta para compartir.
  • browseable: si el recurso compartido debe incluirse en la lista de recursos compartidos disponibles. Si lo configura como no otros usuarios no podrán ver el recurso compartido.
  • read only: establezca si los usuarios especificados en la valid users pueden escribir en este recurso compartido.
  • force create mode: establezca permisos para los archivos recién creados en este recurso compartido.
  • force directory mode: establece los permisos para los directorios recién creados en este recurso compartido.
  • valid users: una lista de usuarios y grupos que pueden acceder al recurso compartido. Los grupos están precedidos por el símbolo @

Para obtener más información sobre las opciones disponibles, consulte la página de documentación del archivo de configuración de Samba.

Una vez hecho esto, reinicie los servicios de Samba con:

sudo systemctl restart smb.service
sudo systemctl restart nmb.service

En las siguientes secciones, le mostraremos cómo conectarse a un recurso compartido de Samba desde clientes de Linux, macOS y Windows.

Conéctese a un recurso compartido de Samba desde Linux

Los usuarios de Linux pueden acceder al recurso compartido de Samba desde la línea de comandos, utilizando el administrador de archivos o montando el recurso compartido de Samba.

Usando el cliente smbclient

smbclient es una herramienta que le permite acceder a Samba desde la línea de comandos. El smbclient no está preinstalado en la mayoría de las distribuciones de Linux, por lo que deberá instalarlo con el administrador de paquetes de distribución.

Para instalar smbclient en Ubuntu y Debian, ejecute:

sudo apt install smbclient

Para instalar smbclient en CentOS y Fedora, ejecute:

sudo yum install samba-client

La sintaxis para acceder a un recurso compartido de Samba es la siguiente:

mbclient //samba_hostname_or_server_ip/share_name -U username

Por ejemplo, para conectarse a un alice compartido llamado alice en un servidor Samba con la dirección IP 192.168.222.222 alice usuario de alice, debe ejecutar:

smbclient //192.168.222.222/alice -U alice

Se le pedirá que ingrese la contraseña del usuario.

Enter WORKGROUP\alice's password:

Después de ingresar la contraseña, será llevado a la interfaz de línea de comandos de Samba.

Try "help" to get a list of possible commands.
 smb: \>

Monte la acción de Samba

Para montar un recurso compartido de Samba en Linux, primero debe instalar el paquete cifs-utils

En Ubuntu y Debian ejecute:

sudo apt install cifs-utils

Ejecutando CentOS y Fedora:

sudo yum install cifs-utils

Luego, crea un punto de montaje:

sudo mkdir /mnt/smbmount

Monte el recurso compartido con el siguiente comando:

sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount

Por ejemplo, para montar un alice compartido llamado alice en un servidor Samba con la dirección IP 192.168.222.222 como usuario alice en el punto de montaje /mnt/smbmount, debe ejecutar:

sudo mount -t cifs -o username=alice //192.168.222.222/alice /mnt/smbmount

Se le pedirá que ingrese la contraseña del usuario.

Password for alice@//192.168.222.222/alice: ********

Usando la GUI

Archivo, el administrador de archivos predeterminado en Gnome tiene una opción incorporada para acceder a los recursos compartidos de Samba.

  1. Abra el archivo y haga clic en " Otras ubicaciones " en la barra lateral.
  2. En " Conectarse al servidor ", ingrese la dirección del recurso compartido de Samba en el siguiente formato smb://samba_hostname_or_server_ip/sharename.
  3. Haga clic en " Conectar " y aparecerá la siguiente pantalla:
  4. Seleccione " Usuario registrado ", introduzca su nombre de usuario y contraseña de Samba y haga clic en " Conectar ".
  5. Se mostrarán los archivos del servidor Samba.

Conéctese a un recurso compartido de Samba desde macOS

En macOS, puede acceder a los recursos compartidos de Samba desde la línea de comandos o utilizando el buscador predeterminado del administrador de archivos de macOS. Los siguientes pasos le muestran cómo acceder al recurso compartido usando Finder.

  1. Abra " Finder ", seleccione "Ir" y haga clic en "Conectar a".
  2. En " Conectar a ", ingrese la dirección del recurso compartido de Samba en el siguiente formato smb://samba_hostname_or_server_ip/sharename.
  3. Haga clic en " Conectar " y aparecerá la siguiente pantalla:
  4. Seleccione " Usuario registrado ", introduzca su nombre de usuario y contraseña de Samba y haga clic en " Conectar ".
  5. Se mostrarán los archivos del servidor Samba.

Conéctese a un recurso compartido de Samba desde Windows

Los usuarios de Windows también tienen la opción de conectarse al recurso compartido de Samba desde la línea de comandos y la GUI. Los siguientes pasos muestran cómo acceder al recurso compartido utilizando el Explorador de archivos de Windows.

  1. Abra el Explorador de archivos y, en el panel izquierdo, haga clic con el botón derecho en " Esta PC ".
  2. Seleccione " Elegir una ubicación de red personalizada ", luego haga clic en "Siguiente".
  3. En " Internet o dirección de red ", ingrese la dirección del recurso compartido de Samba en el siguiente formato \\samba_hostname_or_server_ip\sharename.
  4. Haga clic en " Siguiente " y se le pedirá que ingrese sus credenciales de inicio de sesión como se muestra a continuación:
  5. En la siguiente ventana, puede escribir un nombre personalizado para la ruta de la red. El predeterminado se tomará del servidor Samba.
  6. Haga clic en " Siguiente " para pasar a la última pantalla del asistente de configuración de la conexión.
  7. Haga clic en " Finalizar " para ver los archivos en el servidor Samba.

Conclusión

En este tutorial, aprendió cómo instalar un servidor Samba en CentOS 8 y cómo crear diferentes tipos de usuarios y recursos compartidos. También le mostramos cómo conectarse al servidor Samba desde dispositivos Linux, macOS y Windows.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.