Издание Samba 4.24.0

След 6 месеца разработка е представен релиз Samba 4.24.0, който продължава развитието на клона Samba 4 с пълна реализация на контролера на домейн и услуга Active Directory, съвместими с реализацията на Windows Server и способен да обслужва всички поддържани версии на Windows-клиентите от Microsoft, включително Windows 11. Samba 4 е многофункционален сървърен продукт, предлагайки също реализиране на файлов сървър, услуга за печат и сървър за идентификация (winbind). Кодът на проекта е написан на C и се разпространява под лиценз GPLv3.

Ключови промени в Samba 4.24:

  • Добавен е нов VFS модул vfs_aio_ratelimit за ограничаване на интензивността (rate-limit) на операции за асинхронен вход/изход (AIO). Ограниченията могат да бъдат задавани в байтове в секунда или операции в секунда. При достигане на зададения лимит модулът започва да въвежда изкуствени забавяния в асинхронните операции, за да поддържа зададения горен праг.
  • В VFS модул vfs_ceph_new е добавена поддръжка на RPC протокола Keybridge и режим FSCrypt за криптиране на данни и имената на файлове в файловата система CephFS. Възможно е включване на криптиране на ниво отделни директории.
  • В VFS модул vfs_streams_xattr, позволяващ запазване на алтернативни набори данни NTFS (NTFS alternate data stream) в разширените атрибути на файловете (xattr) в Linux, е добавена настройката «streams_xattr:max xattrs per stream», определяща допустимото число xattr, прилагани за съхранение на данни. В Linux размерът на xattr е ограничен до 65536 байта, но файловата система XFS дава възможност да се свържат повече от един xattr към един файл, което позволява използването на няколко xattr за съхранение на до 1 MB алтернативни данни.
  • Реализирана е поддръжка за одит на информация, свързана с автентикацията. Добавени са отладъчни класове «dsdb_password_audit» и «dsdb_password_json_audit» за отразяване в логовете на промените на атрибутите на Active Directory: altSecurityIdentities, dNSHostName, msDS-AdditionalDnsHostName, msDS-KeyCredentialLink и servicePrincipalName.
  • Добавена е поддръжка за външни системи за управление на пароли Microsoft Entra ID и Keycloak, използващи операция за нулиране на паролата (SSPR, password reset) при промяна на паролата без предаване на старата парола на контролера. домейн. За спазване на политиките, контролиращи времетраенето на паролите, при нулиране на паролата се предават допълнителни параметри ("password policy hints"), позволяващи обработването на операцията като обикновена смяна на паролата. Сега Samba взема предвид подобни параметри при прилагане на свързаните с паролите локални политики.
  • Добавена е поддръжка на механизма за удостоверяване Kerberos PKINIT KeyTrust, даващ възможност в контролерите на домейна на базата на Samba и Heimdal KDC да се използва методът "Windows Hello for Business Key-Trust logons" за прилагане на механизма за удостоверяване PKINIT с самоподписани ключове. За добавяне и преглед на публичния ключ в утилита samba-tool е добавена команда "user|computer keytrust". Информацията за публичния ключ се съхранява в записа с помощта на атрибута msDS-KeyCredentialLink.
  • В контролерите на домейна на базата на Samba и Heimdal KDC е добавена поддръжка на разширението на протокола Kerberos PKINIT за мапинг на ключове ("Windows Strong and Flexible key mappings"), използвано при удостоверяване с публични ключове. По подразбиране се допуска само точно съвпадение на сертификатите ("strong certificate binding enforcement = full"), но е възможно и гъвкаво съвпадение ("strong certificate binding enforcement = compatibility"), допускащо сертификати, по-нови от записа на потребителя. Данните за мапинга на сертификатите за записа се съхраняват в атрибута altSecurityIdentities.
  • Добавена е поддръжка на разширението на протокола "Kerberos PKINIT SID", позволяващо използването на сертификати с идентификатор Object SID при удостоверяването. За подписване на сертификатите в утилита samba-tool е добавена команда "user|computer generate-csr".
  • В реализацията на KDC (Key Distribution Center) по подразбиране е осигурено връщането на структура PAC (Privilege Attribute Certificate), съдържаща данни за правата на потребителя, независимо дали полето PA-PAC-REQUEST е посочено в заявката на клиента. За връщане на старото поведение е предвидена настройка "kdc always generate pac = no".
  • В KDC е добавена настройка "kdc require canonicalization", при задаване на "yes" клиентът е длъжен да иска изпълнение на канонизация на името на потребителя при обращение към сървъра удостоверяването (AS_REQ). Ако не е поискана канонизация, сървърът ще върне грешка "потребителят е неизвестен". В мрежи с потребители, използващи ОС Windows, активирането на новата настройка не трябва да предизвиква проблеми, тъй като клиентите на Windows по подразбиране винаги искат канонизация.

    Задължителната канонизация позволява защита от атаки от клас „dollar ticket“, манипулиращи факта, че имената на потребителите могат да се задават по различен начин („user“ и „user$“) и да се обработват по различен начин в канонизираното и обикновеното представяне. Същността на атаката е, че злонамеренец, например, може да създаде в AD учетна запис на компютър с име „root$“ и да я използва за получаване на мандат от KDC, подавайки в заявката име на потребител „root“ вместо „root$“. KDC, не откривайки потребител „root“, би обработил заявката в контекста на потребител „root$“ и би издал мандат, който може да се използва за свързване под потребител root през SSH или NFS към Linux-сървър с SSSD.

  • В KDC е добавен обходен вариант за защита от атаки „dollar ticket“ за конфигурации с деактивирани задължителни заявки за канонизация на имена („kdc require canonicalization = no“, прилага се по подразбиране). По подразбиране, ако клиентът не е поискал извършването на канонизация и проверяваното име не е открито, сървърът извършва допълнителна проверка, прикрепяйки символа „$“ към името. С новата настройка „kdc name match implicit dollar without canonicalization = no“ може да се деактивира това поведение и да се извършват само точни проверки (в контекста на споменатата атака, сървърът няма да провери името „root$“ при заявка „root“).
  • В Heimdal KDC по подразбиране се изпращат на услугите Kerberos само канонизирани имена (sAMAccountName от PAC) вместо оригиналната стойност cname. За възстановяване на старото поведение е предвидена настройка „krb5 acceptor report canonical client name = no“.
  • За пълна защита от атаки „dollar ticket“ се препоръчва да се настроят следните параметри: strong certificate binding enforcement full, kdc always include pac yes, kdc require canonicalization yes.
  • За блокиране на уязвимостта CVE-2026-20833 методът на криптиране на домейна в настройките на KDC по подразбиране е променен на AES (настройката „kdc default domain supported enctypes“ е зададена на „aes128-cts-hmac-sha1-96 aes256-cts-hmac-sha1-96“).

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster