Instale Samba4 en RHEL 8 para compartir archivos en Windows
Samba es un sistema de archivos de red de código abierto, rápido, seguro, estable y ampliamente utilizado que proporciona servicios de impresión y uso compartido de archivos para todos los clientes que utilizan el protocolo SMB/CIFS, como como Linux, todas las versiones de DOS y Windows, OS/2 y muchos otros sistemas operativos.
En nuestro artículo anterior, explicamos cómo instalar Samba4 en CentOS/RHEL 7 para compartir archivos básicos entre sistemas CentOS/RHEL y máquinas Windows. Donde aprendimos cómo configurar Samba para compartir archivos de forma anónima y segura entre máquinas.
En este artículo, describiremos cómo instalar y configurar Samba4 en RHEL 8 para compartir archivos básicos con máquinas Windows.
Instalar Samba4 en RHEL 8
1. Para instalar Samba 4 junto con sus dependencias, utilice el administrador de paquetes DNF como se muestra.
dnf install samba samba-client samba-common
2. Una vez que se complete la instalación, inicie el servicio Sambe, habilítelo para que se inicie automáticamente en el momento del inicio del sistema y verifique ese servicio usando los comandos systemctl de la siguiente manera.
systemctl start smb
systemctl enable smb
systemctl status smb
3. A continuación, si tiene un firewall configurado, debe agregar el servicio Samba en la configuración del firewall para permitir el acceso a directorios y archivos compartidos a través del sistema.
sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload
Configurar Samba4 en RHEL 8
4. Para configurar Samba para compartir archivos, necesita crear una copia de seguridad del archivo de configuración predeterminado de Samba que viene con ajustes previos a la configuración y varias directivas de configuración.
cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
Ahora, continúe para configurar samba para servicios de intercambio de archivos anónimos y seguros como se explica a continuación.
Configuración del uso compartido anónimo de archivos Samba4 en RHEL 8
5. En esta sección, el primer paso es crear el directorio compartido que almacenará los archivos en el servidor. Luego defina los permisos apropiados en el directorio como se muestra.
mkdir -p /srv/samba/anonymous
chmod -R 0777 /srv/samba/anonymous
chown -R nobody:nobody /srv/samba/anonymous
6. A continuación, utilizando la utilidad chcon, cambie el contexto de seguridad de SELinux para el directorio compartido de samba creado.
chcon -t samba_share_t /srv/samba/anonymous
7. Ahora abra el archivo de configuración utilizando su editor de archivos de texto favorito para configurar el uso compartido anónimo y no seguro de archivos en un directorio compartido.
vim /etc/samba/smb.conf
Modifique los siguientes parámetros globales y agregue una sección para el recurso compartido Anónimo. Tenga en cuenta que puede establecer sus propios valores cuando sea necesario (lea man smb.conf para obtener más información).
[global]
workgroup = WORKGROUP
netbios name = rhel
security = user
...
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody
Guarde los cambios en el archivo y ciérrelo.
8. Luego ejecute el siguiente comando para verificar si la configuración es correcta.
testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Unknown parameter encountered: "netbios"
Ignoring unknown parameter "netbios"
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Anonymous]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Global parameters
[global]
printcap name = cups
security = USER
idmap config * : backend = tdb
cups options = raw
[homes]
browseable = No
comment = Home Directories
inherit acls = Yes
read only = No
valid users = %S %D%w%S
[printers]
browseable = No
comment = All Printers
create mask = 0600
path = /var/tmp
printable = Yes
[print$]
comment = Printer Drivers
create mask = 0664
directory mask = 0775
force group = @printadmin
path = /var/lib/samba/drivers
write list = @printadmin root
[Anonymous]
comment = Anonymous File Server Share
force user = nobody
guest ok = Yes
path = /srv/samba/anonymous
read only = No
9. Si la configuración de Samba está OK, continúe y reinicie el servicio samba para que los cambios recientes surtan efecto.
systemctl restart smb
10. Finalmente, pruebe si el recurso compartido anónimo funciona bien, inicie sesión en su máquina Windows, abra el Explorador de Windows, haga clic en Red y luego haga clic en el host RHEL o utilice la dirección IP del servidor para acceder a él (ejecutar el comando ip add en el servidor puede ayudarle a ver la dirección IP).
e.g. 2.168.43.198
11. A continuación, abra el directorio Anónimo e intente agregar archivos allí para compartirlos con otros usuarios.
Configuración del uso compartido seguro de archivos Samba4 en RHEL 8
12. Para crear un directorio compartido de forma segura, necesita crear un grupo de sistema Samba. Todos los usuarios del recurso compartido seguro se agregarán a este grupo. Puede utilizar el comando groupadd para crear el grupo de la siguiente manera.
groupadd smbgrp
Luego use el comando usermod para agregar todos los usuarios, por ejemplo, tecmint al grupo y establezca una contraseña para cada usuario como se muestra.
usermod tecmint -aG smbgrp
smbpasswd -a tecmint
13. A continuación, cree el directorio seguro que almacenará de forma segura los archivos compartidos y luego establezca los permisos adecuados en el directorio. Además, cambie el contexto de seguridad de SELinux para el directorio de la siguiente manera.
mkdir -p /srv/samba/secure
chmod -R 0770 /srv/samba/secure
chown -R root:smbgrp /srv/samba/secure
chcon -t samba_share_t /srv/samba/secure
14. A continuación, abra el archivo de configuración para editarlo.
vim /etc/samba/smb.conf
Y agregue la siguiente sección al final del archivo.
[Secure]
comment = Secure File Server Share
path = /srv/samba/secure
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
Guarde los cambios y cierre el archivo.
15. A continuación, verifique la configuración de samba nuevamente ejecutando el comando testparm.
testparm
16. Reinicie los servicios de Samba para aplicar los cambios.
systemctl restart smb.service
systemctl restart nmb.service
Prueba del uso compartido seguro de archivos Samba
17. Por último, pruebe si el recurso compartido seguro funciona bien. Desde su máquina Windows, abra el Explorador de Windows, haga clic en Red, luego haga clic en el host RHEL o intente acceder al servidor usando su dirección IP como se explicó anteriormente.
e.g. 2.168.43.198
Se le pedirá que ingrese su nombre de usuario y contraseña para iniciar sesión en el servidor RHEL 8.
18. Una vez que inicie sesión, obtendrá una lista de todos los directorios compartidos de samba. Ahora puede compartir de forma segura algunos archivos con otros usuarios permitidos en la red agregando archivos en el directorio seguro.
¡Eso es todo! En este artículo, hemos mostrado cómo instalar y configurar Samba 4 en RHEL 8 para compartir archivos de forma anónima y segura con máquinas Windows. ¿Tiene alguna pregunta o comentario sobre esta guía? Utilice el formulario de comentarios a continuación para comunicarse con nosotros.