Compartir archivos es una parte esencial de la administración del servidor. Permite compartir los recursos a través de la red que necesitan los usuarios para llevar a cabo sus tareas. El servidor Samba generalmente se instala en el servidor Linux central donde la información se almacena en una variedad de medios y se accede mediante el cliente de Windows o Linux mediante el cliente Samba.
En este artículo, aprenderemos cómo instalar y configurar el uso compartido de archivos samba en Ubuntu 20.04. Ubuntu 20.04 se configurará como servidor Samba y luego podremos acceder a los archivos con clientes Windows o Linux.
Contenido relacionado:
- Cómo instalar y configurar el uso compartido de archivos Samba en Rocky Linux/Alma Linux 8
Tabla de contenido
- Asegurarse de que el servidor esté actualizado
- Instalar paquetes de samba
- Configurar recursos compartidos de Samba
- Habilite el servicio Samba a través del firewall
- Iniciar y habilitar el servicio Samba
- Acceda a los recursos compartidos de Samba con Linux Client
- Acceda a los recursos compartidos de Samba con el cliente de Windows
- Configuración compartida segura de Samba
1. Asegurarse de que el servidor esté actualizado
Antes de continuar, asegurémonos de que nuestro servidor esté actualizado y que todos los paquetes tengan la última versión. Use estos comandos para lograr esto:
sudo apt update
sudo apt upgrade -y
Si hay paquetes para actualizar, el comando anterior puede tardar un par de minutos.
2. Instalar paquetes de Samba
Los paquetes de samba están disponibles en los repositorios predeterminados de Ubuntu. Instálelos con este comando:
sudo apt install samba
Cuando se le solicite que confirme el proceso de instalación, escriba y luego ingrese para continuar.
Podemos verificar si la instalación fue exitosa ejecutando:
$ whereis samba
samba: /usr/sbin/samba /usr/lib/x86_64-linux-gnu/samba /etc/samba /usr/share/samba /usr/share/man/man8/samba.8.gz /usr/share/man/man7/samba.7.gz
Confirme la versión del paquete de software instalado con este comando:
$ apt-cache policy samba
samba:
Installed: 2:4.13.14+dfsg-0ubuntu0.20.04.4
Candidate: 2:4.13.14+dfsg-0ubuntu0.20.04.4
Version table:
*** 2:4.13.14+dfsg-0ubuntu0.20.04.4 500
500 http://eu-west-3.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
100 /var/lib/dpkg/status
3. Configuración de recursos compartidos de Samba
El archivo de configuración de samba se encuentra en esta ruta /etc/samba/smb.conf
. Antes de hacer cualquier modificación, vamos a crear una copia de seguridad para que, si nos equivocamos, tengamos una copia. Utilice este comando en la terminal para crear un archivo de copia de seguridad:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bk
A continuación, vamos a crear un directorio para compartir.
sudo mkdir -p /home/sambapublicshare
Ahora editemos la configuración de samba para definir la exportación para el directorio que creamos.
Abra el archivo de configuración:
sudo vim /etc/samba/smb.conf
Actualice la configuración en el archivo para reflejar lo siguiente:
[Public]
path = /home/sambapublicshare
comment = Citizix Samba Shares
browsable =yes
writable = yes
guest ok = yes
read only = no
Guarde y cierre el archivo.
Verifique la configuración usando este comando:
sudo testparm
Debería ver algo similar a esto si todo está bien.
$ sudo testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
...
4. Habilite el servicio Samba a través de Firewall
Si tiene un firewall ufw instalado y habilitado, debe habilitar el servicio samba a través del firewall. Usa este comando para lograrlo:
sudo ufw allow samba
5. Inicie y habilite el servicio Samba
El servicio no se iniciará de forma predeterminada. Inicie el servicio usando este comando:
sudo systemctl start smbd
Confirme el estado del servicio usando esto:
$ sudo systemctl status smbd
● smbd.service - Samba SMB Daemon
Loaded: loaded (/lib/systemd/system/smbd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-01-21 13:27:31 UTC; 5s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Process: 617106 ExecStartPre=/usr/share/samba/update-apparmor-samba-profile (code=exited, status=0/SUCCESS)
Main PID: 617118 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 4624)
Memory: 7.0M
CGroup: /system.slice/smbd.service
├─617118 /usr/sbin/smbd --foreground --no-process-group
├─617123 /usr/sbin/smbd --foreground --no-process-group
├─617124 /usr/sbin/smbd --foreground --no-process-group
└─617125 /usr/sbin/smbd --foreground --no-process-group
Jan 21 13:27:30 ubuntusrv.citizix.com systemd[1]: Starting Samba SMB Daemon...
Jan 21 13:27:31 ubuntusrv.citizix.com update-apparmor-samba-profile[617106]: Reloading updated AppArmor profile for Samba...
Jan 21 13:27:31 ubuntusrv.citizix.com systemd[1]: Started Samba SMB Daemon.
El resultado anterior muestra que el servicio se ha iniciado correctamente. Para habilitar el servicio en el arranque, use este comando:
sudo systemctl enable smb
6. Acceda a los recursos compartidos de Samba con el cliente Linux
Para acceder al sistema de archivos desde un cliente Linux, necesitamos tener instalado el software del cliente Samba.
En Ubuntu Linux, instale el software usando este comando:
sudo apt install -y samba-client
Para acceder al recurso compartido, este es el formato:
smbclient //server-IP/Public
En nuestro cliente:
$ smbclient //10.2.11.10/Public
Enter WORKGROUP\ubuntu's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Fri Jan 21 13:23:25 2022
.. D 0 Fri Jan 21 13:23:25 2022
50758604 blocks of size 1024. 41160968 blocks available
smb: \>
Dado que no tenemos una contraseña configurada, simplemente presione Intro cuando se le solicite.
7. Acceda a recursos compartidos de Samba con Windows Client
En el inicio de Windows ejecutar diálogo en Windows presionando Windows Key + R .
Introduzca nombre de host o Dirección IP del servidor y luego presione Enter Clave.
\\hostname
or
\\server-IP-address
En mi caso
\\35.180.123.111
Esto abrirá las acciones. Puede agregar un archivo o directorio desde el servidor Samba o desde la máquina cliente de Windows al repositorio.
8. Configuración segura de recursos compartidos de Samba
Samba permite el acceso público sin verificación y también el uso compartido privado donde uno debe autenticarse para acceder a los recursos compartidos. En esta sección, vamos a configurar un directorio privado para compartir con samba y acceder mediante nombre de usuario y contraseña.
Creemos un grupo de usuarios de Samba en nuestro servidor.
sudo groupadd sambagrp
Cree un nuevo usuario y agréguelo al grupo de samba que acaba de crear.
sudo useradd -g sambagrp sambausr
Cree una carpeta segura y luego concédale permisos y propiedad relativos.
sudo mkdir -p /home/sambaprivateshare
Cree una contraseña para el usuario de Samba que acabamos de crear que se utilizará para la autenticación al acceder al directorio.
sudo smbpasswd -a sambausr
Escriba y vuelva a escribir la contraseña:
$ sudo smbpasswd -a sambausr
New SMB password:
Retype new SMB password:
Added user sambausr.
Edite el archivo de configuración de samba para agregar configuraciones de uso compartido seguro.
sudo vim /etc/samba/smb.conf
Agregue líneas debajo del comando y edítelo para que coincida con sus configuraciones.
[Private]
path = /home/sambaprivateshare
valid users = @private
guest ok = no
writable = yes
browsable = yes
Reinicie o vuelva a cargar los servicios de samba para aplicar configuraciones
sudo systemctl restart smbd
Acceso a archivos Samba Secure utilizando sistemas Windows
Presiona la tecla de Windows + R , ingrese el servidor nombre de host o dirección IP para acceder a las carpetas compartidas.
Cuando abres un privado la carpeta solicitará el nombre de usuario y la contraseña para otorgar acceso a los archivos.
Acceda al directorio seguro de Samba con Linux
Para acceder a la carpeta segura, debe proporcionar un usuario al comando usando este formato:
smbclient //server-IP/Private -U user
Introduzca la contraseña de usuario de Samba cuando se le solicite.
$ smbclient //10.2.11.10/Private -U sambausr
Enter SAMBA\sambausr's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jan 15 09:02:33 2022
.. D 0 Sat Jan 15 09:02:33 2022
52417516 blocks of size 1024. 48489312 blocks available
smb: \>
¡Eso es! Logramos instalar y configurar Samba para compartir archivos de forma anónima y segura entre nuestro servidor Ubuntu 20.04 y otros clientes Linux o Windows de escritorio.