Cómo instalar el servidor Samba en CentOS 8

Accede a SAMBA desde Gnome

Samba es un software gratuito y de código abierto que se puede utilizar para compartir archivos, carpetas e impresoras entre sistemas Linux y Windows. También se utiliza para autenticación y autorización, resolución de nombres y anuncio de servicio. Se puede ejecutar en diferentes sistemas operativos, incluidos Linux, Unix, OpenVMS y muchos más.

En este tutorial, aprenderemos c√≥mo instalar Samba y configurarlo como un servidor compartido independiente en CentOS 8, tambi√©n conocido como ¬ęcentos 8 samba¬Ľ o ¬ęcentos samba¬Ľ.

Requisitos Previos

  • Un servidor que ejecute CentOS 8.
  • Una contrase√Īa de root est√° configurada en su servidor.

Instalar servidor Samba en CentOS 8

De forma predeterminada, el paquete Samba está disponible en el repositorio predeterminado de CentOS. Puedes realizar la instalación con el siguiente comando:

dnf install samba samba-common samba-client -y

Después de instalar Samba, inicie el servicio SMB y habilitelo para que se inicie después del reinicio del sistema con el siguiente comando:

systemctl start smb
systemctl enable smb

Ahora puede comprobar el servicio Samba con el siguiente comando:

systemctl status smb

Deberías obtener el siguiente resultado:

? smb.service - Samba SMB Daemon
   Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-03-02 23:03:30 EST; 8s ago
     Docs: man:smbd(8)
           man:samba(7)
           man:smb.conf(5)
 Main PID: 2072 (smbd)
   Status: "smbd: ready to serve connections..."
    Tasks: 4 (limit: 25028)
   Memory: 33.8M
   CGroup: /system.slice/smb.service
           ??2072 /usr/sbin/smbd --foreground --no-process-group
           ??2074 /usr/sbin/smbd --foreground --no-process-group
           ??2075 /usr/sbin/smbd --foreground --no-process-group
           ??2076 /usr/sbin/smbd --foreground --no-process-group

Crear un recurso compartido p√ļblico con Samba

En esta secci√≥n, crearemos un recurso compartido p√ļblico con Samba para que todos puedan acceder al directorio compartido p√ļblico sin contrase√Īa.

Crear un directorio compartido p√ļblico

Primero, cree una carpeta compartida llamada public y también cree dos archivos dentro del directorio public:

mkdir -p /samba/share/public
touch /samba/share/public/file1.txt
touch /samba/share/public/file2.txt

A continuación, asigne los permisos y la propiedad necesarios con el siguiente comando:

chmod -R 0755 /samba/share/
chmod -R 0755 /samba/share/public
chown -R nobody:nobody /samba/share
chown -R nobody:nobody /samba/share/public

Configurar Samba

A continuaci√≥n, deber√° configurar Samba para compartir un directorio p√ļblico.

Primero, cree una copia de seguridad del archivo /etc/samba/smb.conf con el siguiente comando:

mv /etc/samba/smb.conf /etc/samba/smb.bak

A continuación, cree un nuevo archivo de configuración de Samba:

nano /etc/samba/smb.conf

Agregue las siguientes líneas:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = samba-server
security = user
map to guest = bad user
dns proxy = no

[Public]
path = /samba/share/public
browsable =yes
writable = yes
guest ok = yes
read only = no

Guarde y cierre el archivo. Luego, reinicie el servicio Samba para aplicar los cambios:

systemctl restart smb

A continuación, pruebe la configuración de Samba con el siguiente comando:

testparm

Debería ver el siguiente resultado:

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
	dns proxy = No
	map to guest = Bad User
	netbios name = SAMBA-SERVER
	security = USER
	server string = Samba Server %v
	idmap config * : backend = tdb


[Public]
	guest ok = Yes
	path = /samba/share/public
	read only = No

Configurar SELinux y Firewall

A continuación, configure los valores de contexto de seguridad y booleanos de SELinux adecuados en el directorio compartido con el siguiente comando:

setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
semanage fcontext -a -t samba_share_t "/samba/share/public(/.*)?"
restorecon /samba/share/public

A continuación, permita el servicio de Samba a través de firewalld con el siguiente comando:

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

Acceder a Samba Share desde Ubuntu Gnome

Para acceder al recurso compartido de Samba desde una m√°quina con ¬ęinstalar samba ubuntu¬Ľ, vaya al administrador de archivos Gnome y haga clic en Conectar a Servidor como se muestra a continuaci√≥n:

Accede a SAMBA desde Gnome

Proporcione la dirección IP de su servidor Samba y haga clic en el botón Conectar. Después de una conexión exitosa, debería ver el recurso compartido de Samba en la siguiente pantalla:

Compartir Samba en el Explorador de archivos

Ahora, haga clic en el directorio P√ļblico, deber√≠a ver sus archivos en la siguiente pantalla:

lista de archivos

Acceder a Samba Share desde la línea de comandos de Ubuntu

Tambi√©n puede acceder al recurso compartido de Samba desde la l√≠nea de comandos de un sistema con ¬ęinstalar samba en linux¬Ľ.

Primero, enumere todos los recursos compartidos de Samba disponibles con el siguiente comando:

smbclient -L //45.58.38.51

Debería ver el siguiente resultado:

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

	Sharename       Type      Comment
	---------       ----      -------
	Public          Disk      
	IPC$            IPC       IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

	Server               Comment
	---------            -------

	Workgroup            Master
	---------            -------

También puede montar el recurso compartido de Samba utilizando el protocolo cifs. Para hacerlo, instale el paquete cifs-utils con el siguiente comando:

apt-get install cifs-utils -y

A continuación, monte el recurso compartido de Samba en el directorio /mnt con el siguiente comando:

mount -t cifs //45.58.38.51/public /mnt/

Se le pedir√° que proporcione la contrase√Īa como se muestra a continuaci√≥n:

Password for [email protected]//45.58.38.51/public: 

Solo presione Enter sin ingresar ninguna contrase√Īa para montar el recurso compartido de Samba:

Ahora puede acceder al recurso compartido de Samba en el directorio /mnt:

ls /mnt/

Debería ver el siguiente resultado:

file1.txt  file2.txt

Crear un recurso compartido privado con Samba

En esta sección, crearemos un recurso compartido privado con Samba para que solo el usuario autenticado pueda acceder al directorio compartido privado.

Crear usuario y grupo

Primero, cree un grupo llamado privado con el siguiente comando:

groupadd private

A continuación, cree un nuevo usuario llamado privateuser y agréguelo al grupo privado:

useradd -g private privateuser

A continuaci√≥n, establezca la contrase√Īa para el usuario con el siguiente comando:

smbpasswd -a privateuser

Producción:

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

Crear un directorio compartido privado

A continuación, cree una carpeta compartida llamada privada y también cree dos archivos dentro del directorio privado:

mkdir -p /samba/share/private
touch /samba/share/private/private1.txt
touch /samba/share/private/private2.txt

A continuación, asigne el permiso y la propiedad adecuados con el siguiente comando:

chmod -R 0770 /samba/share/private
chown -R root:private /samba/share/private

A continuación, configure el contexto de SELinux para el directorio privado con el siguiente comando:

semanage fcontext ‚Äďat samba_share_t "/samba/share/private(/.*)?"
restorecon /samba/share/private

Configurar Samba

A continuación, abra el archivo de configuración de Samba y defina el recurso compartido privado:

nano /etc/samba/smb.conf

Agregue las siguientes líneas al final del archivo:

[Private]
path = /samba/share/private
valid users = @private     
guest ok = no
writable = yes
browsable = yes

Guarde y cierre el archivo, luego reinicie el servicio Samba para aplicar los cambios:

systemctl restart smb

A continuación, verifique la configuración de Samba con el siguiente comando:

testparm

Debería ver el siguiente resultado:

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
	dns proxy = No
	map to guest = Bad User
	netbios name = SAMBA-SERVER
	security = USER
	server string = Samba Server %v
	idmap config * : backend = tdb


[Public]
	guest ok = Yes
	path = /samba/share/public
	read only = No


[Private]
	path = /samba/share/private
	read only = No
	valid users = @private

Acceder a Samba Share desde la línea de comandos de Ubuntu

Primero, acceda al recurso compartido disponible con el siguiente comando:

smbclient -L //45.58.38.51

Debería ver el siguiente resultado:

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

	Sharename       Type      Comment
	---------       ----      -------
	Public          Disk      
	Private         Disk      
	IPC$            IPC       IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

	Server               Comment
	---------            -------

	Workgroup            Master
	---------            -------

A continuación, conéctese al servidor Samba y enumere el recurso compartido disponible con el siguiente comando:

smbclient //45.58.38.51/private -U privateuser

Se le pedir√° que proporcione una contrase√Īa como se muestra a continuaci√≥n:

Enter privateuser's password: 

Escriba su contrase√Īa y presione Entrar para acceder al shell de Samba como se muestra a continuaci√≥n:

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
smb: >

Ahora, enumere el recurso compartido disponible con el siguiente comando:

smb: > ls

Debería ver el siguiente resultado:

  
.                                   D        0  Tue Mar  3 10:03:22 2020
  ..                                  D        0  Tue Mar  3 10:01:56 2020
  private1.txt                        N        0  Tue Mar  3 10:03:17 2020
  private2.txt                        N        0  Tue Mar  3 10:03:22 2020

		51194 blocks of size 2097152. 49358 blocks available

Ahora, salga del shell de Samba con el siguiente comando:

smb: >exit

También puede montar el recurso compartido de Samba en el directorio /opt:

mount -t cifs -o user=privateuser //45.58.38.51/private /opt

Se le pedir√° que proporcione una contrase√Īa como se muestra a continuaci√≥n:

Password for [email protected]//45.58.38.51/private:  *********

Proporcione su contrase√Īa y presione Entrar para montar el recurso compartido de Samba.

Ahora puede verificar su recurso compartido de Samba en el directorio /opt como se muestra a continuación:

ls /opt/

Producción:

private1.txt  private2.txt

Acceder a Samba Share desde Ubuntu Gnome

Para acceder al recurso compartido de Samba, vaya a la máquina remota, abra el administrador de archivos Gnome y haga clic en Conectar a Servidor como se muestra a continuación:

Acceder a recursos compartidos privados en Gnome

Proporcione la dirección IP de su servidor Samba y haga clic en el botón Conectar. Después de una conexión exitosa, debería ver el recurso compartido de Samba en la siguiente pantalla:

Participaci√≥n p√ļblica y privada

Ahora, haga clic en el directorio Privado, proporcione su nombre de usuario y contrase√Īa, luego haga clic en el bot√≥n Conectar. Deber√≠a ver sus archivos en la siguiente pantalla:

Iniciar sesi√≥n con usuario y contrase√Īa

archivos

¬°Felicidades! Ha instalado y configurado con √©xito el servidor Samba en CentOS 8 y ahora est√° listo para manejar tanto comparticiones p√ļblicas como privadas en su red. Si est√° interesado en c√≥mo ¬ęinstalar samba en linux¬Ľ en otras distrib

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *