Compartir archivos con #Samba de forma segura

Cierre económico a final de mes, una total locura en las empresas cubanas[en otros lados no sé].

Problemática:

Se necesita un servidor de archivos compartidos[un lugar de almacenamiento rápido] donde se puedan almacenar los «excel», los «word» y cuanto formato de documento que se necesite para que se puedan pasar entre las económicas/financistas, el jefe de departamento y director de UEB para que los revisen. Sólo eso, documentos.

Solución: Samba!!!

Pero la OSRI golpea, y sin piedad cada carpeta compartida que encuentra, por las múltiples vulnerabilidades que presentan[en sistemas Windows].

Nota: Cabe destacar acá, que Samba emula el comportamiento de la compartición de archivos y carpetas, pero no emula las vulnerabilidades. Así que ya saben OSRI-seños.

Tomaremos para este tutorial, un CT de Proxmox con base Debian/Ubuntu, y por ejemplo, con 2GB de RAM y 4 núcleos. Estas prestaciones son necesarias si vamos a compilar Samba, pero si instalamos desde el repositorio, con la mitad resolvemos el asunto. De todas formas, explicaré las dos maneras acá.

Samba desde el repositorio

Asumo que ya hayan updateado/upgradeado el sistema, y si no lo han hecho ¿Qué esperan?:

Lo primero que haremos será detener y deshabilitar NETBIOS, no lo necesitaremos[y de paso nos evitamos problemas con posibles escaners de red]:

Ahora, smbd. Estado del servicio:

Para reiniciar el servicio ante cualquier cambio, existen tres maneras, use la que usted considere mejor:

o:

o:

Entonces… Editamos según nuestras necesidades, pero primero hacemos un backup:

Un ejemplo de configuración pudiera ser:

nano /etc/samba/smb.conf

Y reiniciamos el servicio. Ya vimos como hacerlo. Para comprobar que todo está OK, ejecutamos:

Es decir, para este ejemplo, creamos un recurso compartido[Economia] que apunta a una carpeta llamada «economia» dentro de /mnt/samba donde pondremos las cosas[documentos] del Departamento. En /mnt/samba tendremos un punto de montaje de nuestro Proxmox, con espacio suficiente para las operaciones que requieren nuestros compañeros de Economía. También debemos notar que los usuarios válidos a usar este recurso, deben pertenecer al grupo «sambashare».

Samba crea, en la instalación, un grupo por defecto en sistemas Debian/Ubuntu llamado: «sambashare», el cual usaremos para agregar usuarios en el próximo paso. A esta carpeta que creamos, debemos aplicarle estos permisos. Procedemos:

Ahora crearemos un usuario que podrá trabajar en esta carpeta. Samba usa el sistema de usuarios y permisos pero tiene su propio mecanismo de autenticado, separado del que normalmente usa linux[el sistema], por lo que para que todo funcione correctamente, crearemos el usuario con el sistema de autenticado normal de linux y le pondremos la contraseña con la utilidad smbpasswd que trae samba. Una de las económicas se llama Yadira y para tomarla como ejemplo le crearemos el usuario de la siguiente forma:

Y para asignarle un password a Yadira:

Ahora sólo debemos ir al Explorador de Windows y crear una unidad mapeada en red, cosa trivial:

Configuración de la unidad:

Autenticándonos:

Y listo:

Como pudieron ver, algo ligero de configurar y llevar a cabo. Ahora veamos como hacer lo mismo, pero compilando samba.

Compilando Samba

Lo primero es obtener samba.

A día de hoy[en estoy escribiendo este tutorial 28-8-2020], la última versión estable de Samba, es la 4.12.6.

¿Updatearon/upgradearon el sistema?

Instalar las dependencias necesarias para compilar:

Extraer y compilar:

Nota: En un futuro, si quieren actualizar Samba a la última versión, descargen y compilen con las mismas opciones de configuración que lo hicieron en el primer momento, sino, les dará error. Si desean ver cómo fue compilado samba anteriormente sólo debemos ejecutar:

Archivo de configuración[puede usar el anterior, o generar uno de base]:

Habilitar el inicio Samba con systemd:

Creamos el grupo para los usuarios que deben trabajar con el recurso compartido:

Y a partir de acá es lo mismo, que si lo instalaras del repositorio, crear la carpeta:

Y crear los usuarios:

Esto es todo. Adjunto la configuración usada la cual recomiento estudiarse pues tiene opciones muy interesantes, como son:

0- Evitar que los usuarios invitados vean los recursos compartidos.

1- Habilitar autenticación de usuarios obligatoria

2- Habilitar sólo los recursos para IPs específicos

3- Mejorar el tratamiento del tráfico de red

4- Deshabilitar el uso de impresoras por Samba

5- Deshabilitar NETBIOS a nivel de configuración

6- En caso de ser necesario deshabilitar SMB1

7- Evitar que se suban archivos no permitidos al recurso compartido y de haberlos que no los muestre.

Entre otras.

[Referencias]
http://www.linuxfromscratch.org/blfs/view/svn/basicnet/samba.html
https://docs.microsoft.com/en-us/windows/desktop/FileIO/microsoft-smb-protocol-and-cifs-protocol-overview

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 4.3 / 5. Recuento de votos: 4

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Please follow and like us:

3 comentarios

  1. Hola Leslie. Te puedo hacer llegar mi tuto para que agregues la parte de fileserver usando usuarios virtuales por LDAP.
    Tengo una variante usando OpenMediaVault y otra que es Debian puro (este último lo hizo Ariel Alvarez @Mutantix)
    SL2

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*