Androide

Cómo instalar y configurar samba en centos 7

Cómo instalar y configurar Samba en CentOS 7 [Parte 1]

Cómo instalar y configurar Samba en CentOS 7 [Parte 1]

Tabla de contenido:

Anonim

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 7 y configurarlo como un servidor independiente para proporcionar el intercambio de archivos en diferentes sistemas operativos a través de una red.

Crearemos los siguientes recursos compartidos y usuarios de Samba.

Usuarios:

  • sadmin: usuario administrativo con acceso de lectura y escritura a todos los recursos compartidos. josh: un usuario normal con su propio recurso compartido de archivos privado.

Comparte:

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

Se podrá acceder a los archivos compartidos desde todos los dispositivos en su 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 su sistema CentOS 7 como usuario con privilegios de sudo.

Instalando Samba en CentOS

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 permita que se inicien automáticamente 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 servicio smbd proporciona servicios de impresión y uso compartido de archivos y escucha en los puertos TCP 139 y 445. El servicio nmbd proporciona servicios de nombres NetBIOS sobre IP a clientes y escucha en el puerto UDP 137.

Configurar firewall

Ahora que Samba está instalado y ejecutándose en su máquina CentOS, deberá configurar su firewall y abrir los puertos necesarios. Para hacerlo, ejecute los siguientes comandos:

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

Creación de usuarios de Samba y estructura de directorios

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

Comience creando el directorio /samba :

sudo mkdir /samba

Cree un nuevo grupo llamado sambashare . Más adelante agregaremos todos los usuarios de Samba a este grupo.

sudo groupadd sambashare

Establezca la propiedad del grupo de directorios /samba en sambashare :

sudo chgrp sambashare /samba

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

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

Crear usuarios de samba

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

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

Las opciones de useradd tienen los siguientes significados:

  • -M -no cree el directorio de inicio del usuario. Crearemos manualmente este directorio. -d /samba/josh : establece el directorio de inicio del usuario en /samba/josh . -s /usr/sbin/nologin : deshabilita el acceso de 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 en usuario josh y group sambashare :

sudo mkdir /samba/josh sudo chown josh:sambashare /samba/josh

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

sudo chmod 2770 /samba/josh

Agregue la cuenta de usuario josh a la base de datos de Samba configurando la contraseña de usuario:

sudo smbpasswd -a josh

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

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

Una vez establecida la contraseña, habilite la cuenta Samba escribiendo:

sudo smbpasswd -e josh

Enabled user josh.

Para crear otro usuario, repita el mismo proceso que al crear el usuario josh .

A continuación, sadmin un usuario y grupo sadmin . Todos los miembros de este grupo tendrán permisos administrativos. Más adelante, 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 grupo 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

A continuación, cree el directorio compartido de Users :

sudo mkdir /samba/users

Establezca la propiedad del directorio para el usuario sadmin y group sambashare :

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 grupo sambashare en el directorio /samba/users :

sudo chmod 2770 /samba/users

Configurar acciones de Samba

Abra el archivo de configuración de Samba y agregue las secciones:

sudo nano /etc/samba/smb.conf /etc/samba/smb.conf

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

Las opciones tienen los siguientes significados:

  • y - Los nombres de los recursos compartidos que utilizará al iniciar sesión. path - La ruta al recurso compartido. browseable : si el browseable compartido debe figurar en la lista de recursos compartidos disponibles. Al configurarlo, no otro usuario no podrá ver el recurso compartido. read only : si los usuarios especificados en la lista de valid users pueden escribir en este recurso compartido. force create mode : establece los 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 a los que se les permite acceder al recurso compartido. Los grupos tienen el prefijo @ .

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 Samba desde clientes Linux, macOS y Windows.

Conexión a un recurso compartido Samba desde Linux

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

Usando el cliente smbclient

smbclient es una herramienta que le permite acceder a Samba desde la línea de comandos. El paquete smbclient no está preinstalado en la mayoría de las distribuciones de Linux, por lo que deberá instalarlo con su 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 josh compartido llamado josh en un servidor Samba con la dirección IP 192.168.121.118 como usuario josh , ejecutaría:

smbclient //192.168.121.118/josh -U josh

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

Enter WORKGROUP\josh's password:

Una vez que ingrese la contraseña, iniciará sesión en la interfaz de línea de comandos de Samba.

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

Montaje de la parte de Samba

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

En Ubuntu y Debian ejecute:

sudo apt install cifs-utils

En CentOS y Fedora ejecute:

sudo yum install cifs-utils

A continuación, cree un punto de montaje:

sudo mkdir /mnt/smbmount

Monta el recurso compartido usando el siguiente comando:

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

Por ejemplo, para montar un josh compartido llamado josh en un servidor Samba con la dirección IP 192.168.121.118 como usuario josh en el punto de montaje /mnt/smbmount que ejecutaría:

sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount

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

Password for josh@//192.168.121.118/josh: ********

Usando GUI

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

  1. Abra Archivos y haga clic en "Otras ubicaciones" en la barra lateral. En "Conectarse al servidor", ingrese la dirección del recurso compartido Samba en el siguiente formato smb://samba_hostname_or_server_ip/sharename Haga clic en "Conectar" y aparecerá la siguiente pantalla:

Conclusión

En este tutorial, ha aprendido cómo instalar un servidor Samba en CentOS 7 y crear diferentes tipos de usuarios compartidos. También le hemos mostrado cómo conectarse al servidor Samba desde dispositivos Linux, macOS y Windows.

centos de samba