Samba 4.12, llega con GnuTLS, un motor de búsqueda basado en Elasticsearch y más
Ya fue liberada la nueva versión de Samba 4.12.0, que continua con el desarrollo de la rama de Samba 4.x con una implementación completa de un controlador de dominio y servicio de Active Directory, compatible con la implementación de Windows 2000 y capaz de atender todas las versiones de clientes de Windows compatibles con Microsoft, incluido Windows 10.
Samba 4, es un producto de servidor multifuncional, que también proporciona la implementación de un servidor de archivos, servicio de impresión y servidor de autenticación (winbind).
¿Qué hay de nuevo en Samba 4.12?
En esta nueva versión de Samba 4.12, se destaca el cambio de las implementaciones integradas de funciones criptográficas, las cuales se han eliminado de la base del código a favor del uso de bibliotecas externas.
Con ello se decidió usar GnuTLS como la biblioteca criptográfica principal y que además de reducir las posibles amenazas asociadas con la identificación de vulnerabilidades en implementaciones integradas de algoritmos criptográficos, la transición a GnuTLS también permitió lograr un aumento significativo en el rendimiento cuando se usa el cifrado en SMB3.
Ante esto se realizaron pruebas con la implementación del cliente CIFS desde el Kernel de Linux 5.3, en el cual se registró un aumento de 3 veces en la velocidad de escritura y la velocidad de lectura de 2.5 veces.
También se destaca que se ha agregado un nuevo back-end para buscar secciones SMB usando el protocolo Spotlight, basado en el motor de búsqueda Elasticsearch.
La composición también incluye la utilidad mdfind con una implementación de cliente que permite enviar consultas de búsqueda a cualquier servidor SMB que ejecute el servicio Spotlight RPC. El valor de configuración “backend de Spotlight” se ha cambiado a “noindex” de forma predeterminada (para Tracker o Elasticsearch, debe establecer explícitamente los valores para “tracker” o “elasticsearch”).
En Samba 4.12, podremos encontrar que se ha cambiado el comportamiento de las operaciones ‘net ads kerberos pac save‘ y ‘net eventlog export‘, que ahora no sobrescriben el archivo, y si se intenta exportar a un archivo existente, se genera un error.
La herramienta samba ha mejorado la adición de entradas de contacto para los miembros del grupo. Si antes, usando el comando ‘samba-tool group addmemers‘, simplemente podría agregar usuarios, grupos y computadoras como nuevos miembros del grupo, ahora se ha agregado soporte para agregar contactos como miembros del grupo.
La herramienta samba permite el filtrado por unidad organizativa (UO, Unidad organizativa) o subárbol. Se han agregado las nuevas banderas “–base-dn” y “–member-base-dn”, que hacen posible realizar una operación solo con una cierta parte del árbol de Active Directory, por ejemplo, solo dentro de una unidad OU.
Ademas, se agregó un nuevo módulo VFS ‘io_uring’ utilizando la nueva interfaz io_uring del kernel de Linux para I/O asíncrona.
Io_uring admite el sondeo de I/O y puede funcionar con almacenamiento en búfer (el mecanismo “aio” propuesto anteriormente no admitía I/O en búfer).
Cuando se trabaja con encuestas habilitadas, io_uring está significativamente por delante de aio en rendimiento.
Samba ha implementado el soporte para SMB_VFS_ {PREAD, PWRITE, FSYNC} _SEND / RECV y ha reducido la sobrecarga de mantener un grupo de subprocesos en el espacio del usuario cuando se utiliza el backend VFS predeterminado. La construcción de un módulo VFS io_uring requiere la biblioteca liburing y el kernel de Linux 5.1+.
De los demás cambios que se destacan:
- VFS proporciona la capacidad de especificar un valor de tiempo especial, UTIME_OMIT, para marcar la necesidad de ignorar el tiempo en la función SMB_VFS_NTIMES ().
- B smb.conf suspendió el soporte para el parámetro “tamaño de caché de escritura”, que perdió su significado después de que apareciera el soporte io_uring.
- Samba-DC y Kerberos descontinuaron el cifrado utilizando el algoritmo DES. Heimdal-DC eliminó el código de cifrado débil.
- Se eliminó el módulo vfs_netatalk, que no se acompañó y perdió su relevancia.
- La biblioteca zlib se incluye con las dependencias de compilación. La implementación de zlib incrustada se ha eliminado de la base del código (el código se basó en la versión anterior de zlib, en la que el soporte de cifrado no funcionaba normalmente).