Samba 4.12.0 rilaxx

Introdott rilaxx Samba 4.12.0, li kompla l-iżvilupp tal-fergħa Samba 4 b'implimentazzjoni sħiħa ta' kontrollur tad-dominju u servizz ta' Active Directory, kompatibbli mal-implimentazzjoni ta' Windows 2000 u kapaċi jservi l-verżjonijiet kollha tal-klijenti Windows appoġġjati minn Microsoft, inkluż Windows 10. Samba 4 huwa prodott ta' server multifunzjonali li jipprovdi wkoll l-implimentazzjoni ta' server tal-fajls, servizz tal-istampar u server tal-identità (winbind).

Ewlenin bidliet f'Samba 4.12:

  • Из кодовой базы удалены встроенные реализации криптографических функций в пользу использования внешних библиотек. В качестве основной криптобиблиотеки решено использовать GnuTLS (требуется как минимум версия 3.4.7). Кроме снижения возможных угроз, связанных с выявлением уязвимостей во встроенных реализациях криптоалгоритмов, переход на GnuTLS также позволил добиться существенного повышения производительности при использовании шифрования в SMB3. При тестировании с реализацией клиента CIFS из ядра Linux 5.3 зафиксировано повышение скорости записи в 3 раза, а чтения в 2.5 раза.
  • Добавлен новый бэкенд для поиска на SMB-разделах с использованием протокола Spotlight, основанный на поисковом движке Elasticsearch (ранее предоставлялся бэкенд на базе GNOME Tracker). В состав также добавлена утилита «mdfind» с реализацией клиента, позволяющего отправлять поисковые запросы к любому SMB-серверу, на котором запущен RPC-сервис Spotlight. Значение настройки «spotlight backend» по умолчанию изменено на «noindex» (для Tracker или Elasticsearch следует явно выставить значения «tracker» или «elasticsearch»).
  • Изменено поведение операций ‘net ads kerberos pac save’ и ‘net eventlog export’, которые теперь не перезаписывают файл, а в случае попытки экспорта в существующий файл выводят ошибку.
  • В samba-tool улучшено добавление контактных записей для членов групп. Если раньше, при помощи команды ‘samba-tool group addmemers’ можно было просто добавить пользователей, группы и компьютеры в качестве новых членов груп, то теперь появилась поддержка добавления контактов как членов групп.
  • В samba-tool разрешена фильтрация по организационным подразделениям (OU, Organizational Unit) или поддереву. Добавлены новые флаги «—base-dn» и «—member-base-dn», дающие возможность выполнить операцию только с определённой частью дерева Active Directory, например, только в рамках одного подразделения OU.
  • Добавлен новый VFS-модуль ‘io_uring’, использующий новый интерфейс ядра Linux io_uring для асинхронного ввода/вывода. Io_uring поддерживает поллинг ввода/вывода и может работать с буферизацией (ранее предлагаемый механизм «aio» не поддерживал буферизированный ввод/вывод). При работе с включённым поллингом по производительности io_uring существенно опережает aio. В настоящее время на базе io_uring в Samba реализована поддержка SMB_VFS_{PREAD,PWRITE,FSYNC}_SEND/RECV и снижены накладные расходы на поддержание пула многопоточного выполнения (threadpool) в пространстве пользователя при применении предлагаемого по умолчанию бэкенда VFS. Для сборки VFS-модуля ‘io_uring’ требуется наличие библиотеки liburing и ядра Linux 5.1+.
  • В VFS обеспечена возможность указания специального значения времени UTIME_OMIT для пометки необходимости игнорирования времени в функции SMB_VFS_NTIMES().
  • B smb.conf прекращена поддержка параметра «write cache size», который потерял смысл после появления поддержки io_uring.
  • В Samba-DC и Kerberos прекращена поддержка шифрования с использованием алгоритма DES. В Heimdal-DC удалён код weak-crypto.
  • Удалён модуль vfs_netatalk, который остался без сопровождения и потерял актуальность.
  • Объявлен устаревшим бэкенд BIND9_FLATFILE, который будет удалён в одном из следующих выпусков.
  • Библиотека zlib включена в число сборочных зависимостей. Встроенная реализация zlib удалена из кодовой базы (код был основан на старой версии zlib, в которой нормально не работала поддержка шифрования).
  • Налажено fuzzing-тестирование кодовой базы, в том числе в сервисе
    oss-fuzz. В ходе fuzzing-тестирования выявлено и исправлено множество ошибок.

  • Требования к минимальной версии Python повышены с Python
    3.4 до Python 3.5. Возможность сборки файлового сервера с Python 2 пока сохранена (перед запуском ./configure’ и ‘make’ следует установить переменную окружения ‘PYTHON=python2’).

Sors: opennet.ru

Żid kumment