10 formas de proteger su servidor Samba en Linux

Conclusiones clave

  • Habilite el cifrado para el tráfico SMB para evitar el acceso no autorizado y los ataques cibernéticos. Utilice Transport Layer Security (TLS) para proteger el tráfico de su servidor Linux Samba.
  • Implemente estrictos controles de acceso y permisos para los recursos compartidos mediante el archivo de configuración /etc/samba/smb.conf. Defina reglas de acceso, permisos y restricciones para garantizar que solo los usuarios autorizados puedan acceder a los recursos.
  • Aplique contraseñas seguras y únicas para las cuentas de usuario de SMB para mejorar la seguridad. Actualice regularmente Linux y Samba para protegerse contra vulnerabilidades y ataques cibernéticos, y evite usar el protocolo SMBv1 inseguro.
  • Configure reglas de firewall para restringir el acceso a los puertos SMB y considere la segmentación de la red para aislar el tráfico SMB de las redes que no son de confianza. Supervise los registros de SMB en busca de actividades sospechosas e incidentes de seguridad, y limite el acceso de invitados y las conexiones anónimas.
  • Implemente restricciones basadas en host para controlar el acceso a hosts específicos y denegar el acceso a otros. Tome medidas de seguridad adicionales para fortalecer su red y fortalecer sus servidores Linux.

El protocolo SMB (Server Message Block) es la piedra angular del uso compartido de archivos e impresoras en entornos conectados. Sin embargo, la configuración predeterminada de Samba puede presentar importantes riesgos de seguridad, dejando su red vulnerable a accesos no autorizados y ataques cibernéticos.

Si está alojando un servidor Samba, debe tener mucho cuidado con las configuraciones que ha establecido. Aquí hay 10 pasos críticos para garantizar que su servidor SMB permanezca seguro y protegido.

  Cómo instalar Deepin Desktop en Linux

1. Habilite el cifrado para tráfico SMB

De forma predeterminada, el tráfico SMB no está cifrado. Puede verificar esto capturando paquetes de red con tcpdump o Wireshark. Es fundamental que cifre todo el tráfico para evitar que un atacante intercepte y analice el tráfico.

Se recomienda que configure Transport Layer Security (TLS) para cifrar y proteger el tráfico de su servidor Linux Samba.

2. Implementar controles de acceso y permisos estrictos para los recursos compartidos

Debe implementar controles de acceso y permisos estrictos para garantizar que los usuarios conectados no puedan acceder a recursos no solicitados. Samba usa un archivo de configuración central /etc/samba/smb.conf que le permite definir reglas de acceso y permisos.

Usando una sintaxis especial, puede definir recursos para compartir, usuarios/grupos para dar acceso a esos recursos y si los recursos se pueden explorar, escribir o leer. Esta es la sintaxis de muestra para declarar un recurso e implementar controles de acceso en él:

 [sambashare]
comment= Samba Example
path = /home/your_username/sambashare
browseable = yes
writable = yes
valid users = @groupname

En las líneas anteriores, agregamos una nueva ubicación compartida con una ruta y con usuarios válidos, restringimos el acceso al recurso compartido a un solo grupo. Hay muchas otras formas de definir controles y acceder a un recurso compartido. Puede obtener más información al respecto en nuestra guía dedicada sobre cómo configurar una carpeta compartida en red en Linux con Samba.

3. Use contraseñas seguras y únicas para cuentas de usuario de SMB

Hacer cumplir políticas de contraseña sólidas para las cuentas de usuario de SMB es una práctica recomendada de seguridad fundamental. Como administrador del sistema, debe crear o instar a todos los usuarios a que creen contraseñas seguras y únicas para sus cuentas.

También puede acelerar este proceso generando automáticamente contraseñas seguras utilizando herramientas. Opcionalmente, también puede rotar regularmente las contraseñas para mitigar el riesgo de fugas de datos y acceso no autorizado.

4. Actualice regularmente Linux y Samba

La forma más simple de defensa pasiva contra todo tipo de ataques cibernéticos es asegurarse de que está ejecutando versiones actualizadas de software crítico. SMB es propenso a vulnerabilidades. Siempre es un objetivo lucrativo para los atacantes.

Ha habido múltiples vulnerabilidades críticas para SMB en el pasado que llevaron a la toma completa del sistema o la pérdida de datos confidenciales. Debe mantener actualizados tanto su sistema operativo como los servicios críticos que contiene.

5. Evite el uso del protocolo SMBv1

SMBv1 es un protocolo inseguro. Siempre se recomienda que siempre que use SMB, ya sea en Windows o Linux, evite usar SMBv1 y solo use SMBv2 y superior. Para deshabilitar el protocolo SMBv1, agregue esta línea al archivo de configuración:

 min protocol = SMB2 

Esto garantiza que el nivel de protocolo mínimo en uso sea SMBv2.

  Cómo montar recursos compartidos de red automáticamente en Linux

6. Hacer cumplir las reglas del cortafuegos para restringir el acceso a los puertos SMB

Configure el firewall de su red para permitir el acceso a los puertos SMB, generalmente el puerto 139 y el puerto 445 solo desde fuentes confiables. Esto ayuda a evitar el acceso no autorizado y reduce el riesgo de ataques basados ​​en SMB por parte de amenazas externas.

También debe considerar instalar una solución IDS junto con un firewall dedicado para tener un mejor control y registro del tráfico. ¿No está seguro de qué cortafuegos usar? Puede encontrar uno que se adapte a sus necesidades en la lista de los mejores cortafuegos de Linux gratuitos para usar.

7. Implemente la segmentación de la red para aislar el tráfico SMB de las redes que no son de confianza

La segmentación de red es la técnica de dividir un único modelo monolítico de una red informática en varias subredes, cada una de ellas denominada segmento de red. Esto se hace para mejorar la seguridad, el rendimiento y la capacidad de administración de la red.

Para aislar el tráfico de SMB de las redes que no son de confianza, puede crear un segmento de red separado para el tráfico de SMB y configurar reglas de firewall para permitir solo el tráfico de SMB hacia y desde este segmento. Esto le permite administrar y monitorear el tráfico SMB de manera enfocada.

En Linux, puede usar iptables o una herramienta de red similar para configurar reglas de firewall para controlar el flujo de tráfico entre los segmentos de la red. Puede crear reglas para permitir el tráfico SMB hacia y desde el segmento de red SMB mientras bloquea el resto del tráfico. Esto aislará efectivamente el tráfico SMB de las redes que no son de confianza.

8. Supervise los registros de SMB en busca de actividades sospechosas e incidentes de seguridad

Supervisar los registros de SMB en busca de actividades sospechosas e incidentes de seguridad es una parte importante para mantener la seguridad de su red. Los registros de SMB contienen información sobre el tráfico de SMB, incluido el acceso a archivos, la autenticación y otros eventos. Al monitorear regularmente estos registros, puede identificar posibles amenazas de seguridad y mitigarlas.

  Cómo instalar Geary 3.32 en Linux

En Linux, puede usar el comando journalctl y canalizar su salida al comando grep para ver y analizar los registros de SMB.

 journalctl -u smbd.service 

Esto mostrará los registros de la unidad smbd.service que es responsable de administrar el tráfico SMB. Puede usar la opción -f para seguir los registros en tiempo real o usar la opción -r para ver primero las entradas más recientes.

Para buscar eventos o patrones específicos en los registros, canalice la salida del comando journalctl a grep. Por ejemplo, para buscar intentos de autenticación fallidos, ejecute:

 journalctl -u smbd.service | grep -i "authentication failure" 

Esto mostrará todas las entradas de registro que contengan el texto «fallo de autenticación», lo que le permitirá identificar rápidamente cualquier actividad sospechosa o intentos de fuerza bruta.

9. Limite el uso del acceso de invitados y las conexiones anónimas

Habilitar el acceso de invitados permite a los usuarios conectarse al servidor Samba sin proporcionar un nombre de usuario o contraseña, mientras que las conexiones anónimas permiten a los usuarios conectarse sin proporcionar ninguna información de autenticación.

Ambas opciones pueden representar un riesgo de seguridad si no se gestionan adecuadamente. Se recomienda que desactive ambos. Para hacerlo, debe agregar o modificar un par de líneas en el archivo de configuración de Samba. Esto es lo que necesita agregar/modificar en la sección global del archivo smb.conf:

 map to guest = never
restrict anonymous = 2

10. Implementar restricciones basadas en host

De forma predeterminada, cualquier host (dirección IP) puede acceder a un servidor Samba expuesto sin restricciones. Por acceso, se pretende establecer una conexión y no, literalmente, acceder a los recursos.

Para permitir el acceso a hosts específicos y denegar el descanso, puede utilizar las opciones de hosts allow y hosts deny. Aquí está la sintaxis para agregar al archivo de configuración para permitir/denegar hosts:

 hosts allow = 127.0.0.1 192.168.1.0/24
hosts deny = 0.0.0.0/0

Aquí está ordenando a Samba que niegue todas las conexiones excepto las del host local y la red 192.168.1.0/24. Esta es también una de las formas fundamentales de asegurar su servidor SSH.

Ahora ya sabe cómo proteger su servidor Samba Linux

Linux es ideal para alojar servidores. Sin embargo, cada vez que se trata de servidores, debe andar con cuidado y ser más consciente, ya que los servidores Linux son siempre un objetivo lucrativo para los actores de amenazas.

Es primordial que haga un esfuerzo sincero para fortalecer su red y fortalecer sus servidores Linux. Además de configurar correctamente Samba, hay algunas otras medidas que debe tomar para asegurarse de que su servidor Linux esté a salvo de la mira de los adversarios.