Ключевые изменения в Samba 4.11:
- По умолчанию задействована модель запуска процессов "prefork", позволяющая поддерживать пул заранее запущенных процессов-обработчиков. При запуске Samba опция '--model' теперь принимает значение 'prefork' вместо 'standard'. Раньше для каждого соединения клиента LDAP и NETLOGON запускался отдельный дочерний процесс, что при большом числе постоянных соединений приводило к значительному потреблению памяти. При использовании модели 'prefork' для сервисов LDAP, NETLOGON и KDC запускается фиксированное число процессов, совместно обрабатывающих соединения клиентов и распределяющих их по обработчикам (по умолчанию запускается 4 обработчика);
- В Winbind обеспечено сохранение событий аутентификации PAM_AUTH и NTLM_AUTH в логе, а также добавлено отражение в записях аутентификации и передача в SamLogon атрибута "logonId", содержащего идентификатор входа, генерируемый для запросов PAM_AUTH и NTLM_AUTH;
- Схема возвращаемых LDAP-ссылок (referral) теперь отражает схему из оригинального запроса, например, ссылки полученные через ldap снабжаются префиксом "ldap://", а через ldaps - "ldaps://";
- Добавлена возможность сохранения в логе продолжительности операций с DNS, выполняемых Bind 9. Вывод включается через указание уровня лога "dns:10" в smb.conf;
- Применяемая по умолчанию схема Active Directory обновлена до версии 2012_R2. Старая схема может быть выбрана при помощи аргумента '--base-schema'. Для обновления существующих установок можно использовать команду samba-tool "domain schemaupgrade".
- В число обязательных зависимостей включена криптографическая библиотека GnuTLS 3.2, которая заменила собой встроенные в Samba криптографические функции;
- Добавлена команда "samba-tool contact" для поиска и редактирования записей в адресной книге, хранимой в LDAP;
- В команде "samba-tool [user|group|computer|group|contact] edit" улучшена поддержка работы с национальными кодировками;
- Проведена оптимизация Samba для работы в очень больших организациях, насчитывающих до 100 тысяч пользователей и 120 тысяч объектов;
- Увеличена производительность переиндексации ("samba-tool dbcheck --reindex") и операций присоединения к домену ("samba-tool domain join") для крупных доменов AD;
- В сервере LDAP повышена эффективность расходования памяти при формировании крупных LDAP-ответов (например, при поиске всех объектов) за счёт исключения дублирования копий данных в памяти;
- В "samba-tool" добавлена опция "--backend-store-size" для определения максимально допустимого размера БД (lmdb map);
- В LDB добавлена опция "batch_mode", позволяющая оптимизировать выполнение пакетных операций за счёт их выполнения в рамках одной транзакции. Также улучшена производительность поиска в больших базах LDB и увеличена производительность переименования поддеревьев;
- Добавлен VFS-модуль ceph_snapshots, реализующий поддержку снапшотов CephFS для работы с прошлыми версиями файлов;
- Изменён метод хранения БД Active Directory на диске. Новый формат будет автоматически применён после обновления до выпуска 4.11, но в случае обратного отката с Samba 4.11 на старые выпуски потребуется преобразование формата вручную;
- По умолчанию отключена поддержка протокола SMB1 (настройки 'client min protocol' и 'server min protocol' выставлены в значение SMB2_02), который объявлен устаревшим и больше не используется Microsoft;
- В большинство утилит командной строки, таких как smbclient и smbcacls, добавлен новый параметр '--option', позволяющий переопределить настройки smb.conf. Например, для изменения минимально поддерживаемой версии протокола можно указать "--option='client min protocol=NT1'" для возвращения SMB1;
- Объявлены устаревшими методы аутентификации LanMan и plaintext. Поддержка методов NTLM, NTLMv2 и Kerberos оставлена без изменений;
- Объявлен устаревшим DNS-бэкенд BIND9_FLATFILE, который будет удалён в одном из будущих выпусков. Также переведена в разряд устаревших опция "rndc command" в smb.conf;
- Удалён код встроенного http-сервера (Python WSGI), который раньше применялся для обеспечения работы web-интерфейса SWAT;
- По умолчанию отключена поддержка Python 2 и задействован Python 3 (для возвращения поддержки Python 2 нужно установить переменную окружения 'PYTHON=python2' перед запуском ./configure' и 'make' в процессе сборки samba.
Источник: https://www.opennet.ru/opennews/art.shtml?num=51522
(opennet.ru, основная лента)