Проблема совместимости Windows 11 (22H2) и сервера Ubuntu (Samba)

Вопрос или проблема

В феврале некоторые работники в моем офисе получили новые компьютеры с Windows 11 версии 22H2. После присоединения их к домену (контроллер домена – Ubuntu 18.04.6 LTS) никто не смог войти на эти новые компьютеры.

Я нашел решение – отметить “Использовать только Kerberos DES-шифрование для этой учетной записи” в AD Users and Computers. Я включил эту опцию для пользователей с новыми компьютерами. После этого они смогли войти, но не смогли изменить свои пароли. Я оставил такую ситуацию как временное решение, чтобы они могли работать, но искал хорошее решение – чтобы исправить эту проблему.

Я обнаружил, что эта проблема возникла, потому что в обновлении Windows 11 22H2 Microsoft изменила некоторые методы шифрования, чтобы избежать проблемы с годом 2038, но в результате Windows 11 22H2 стал несовместим с сервером Samba на Ubuntu.

После многих исследований я пришел к выводу, что единственное решение – обновить Samba до 4.16. Я сделал это 3 дня назад, просто выполнив sudo apt-get update, sudo apt-get upgrade и sudo reboot. Позже я проверил, есть ли у меня еще доступ к общим папкам сервера на моем компьютере с Windows 10, и он был. Но после выполнения команды samba –version на сервере я вижу версию 4.7.6… Я не знаю, почему. (В ADUC я вижу операционную систему контроллера домена как Samba 4.10.16 (как и раньше)).

Теперь все работники в офисе не имеют доступа к共享ным папкам (я тоже) за исключением тех 3 человек, у которых Windows 11 22H2 и включено DES Kerberos. Более того, когда я запускаю AD Users and Computers, я получаю ошибку: Информация о наименовании не может быть определена, поскольку: Система не может связаться с контроллером домена для разрешения запроса на аутентификацию. Попробуйте позже. Обратитесь к вашему системному администратору, чтобы убедиться, что ваш домен правильно настроен и в настоящее время онлайн. Когда я нажимаю ОК, затем меняю контроллер домена и ввожу IP-адрес сервера, я могу видеть все данные домена, но когда я пытаюсь изменить настройки любого пользователя, я получаю ошибки Домен не существует или не может быть обработан. и Не удается отобразить имя домена для пользователя в системе старше Windows 2000. Когда я нажимаю ОК, я вижу все настройки пользователя – я могу их изменить, затем после повторного открытия программы я все еще вижу изменения, но я не уверен, работают ли они (например, я пытался создать нового пользователя и затем войти под ним – не работает).

Я могу получить доступ к серверу через Putty.

Пожалуйста, помогите! Что мне делать? Есть ли какое-то решение? Обновление samba прошло неудачно?

!!!ОБНОВЛЕНИЕ!!!

Я решил указанную выше проблему – не знаю, как… Вдруг, она просто начала работать. Но основная проблема – несовместимость Windows 11 22H2 с Samba все еще сохраняется.

Мой ADUC все еще показывает операционную систему контроллера домена как Samba 4.10.16, а samba --version на сервере Ubuntu возвращает “Version 4.7.6-Ubuntu”. Я не знаю, почему есть различие и что более важно:

Почему нет версии Samba 4.16 и как обновить ее до версии 4.16?

Описание ошибки
Обновленная система Windows 11 22H2 не может получить тикеты kerberos от затронутого сервера Samba AD DC. Это влияет на присоединение таких машин с Windows к серверу Samba Active Directory или даже на продолжение использования уже присоединенных машин с Windows 11 22H2. Обратите внимание, что исправление находится в коде Heimdal Kerberos, который встроен в Samba.
[ План тестирования ]
Тест включает присоединение обновленной системы Windows 11 22H2 к установке Samba AD DC на затронутом тестируемом выпуске Ubuntu. И аналогично, присоединить другую систему Windows (например, Windows 10) к тому же домену samba, чтобы убедиться, что он продолжает работать без влияния исправления.
Для всех случаев этого теста вам нужен сервер samba AD DC. Установите сервер samba AD DC на тестируемом выпуске Ubuntu, в виртуальной машине или на “голом” оборудовании (не lxc/lxd).

Полное описание смотрите здесь:

Проблема с входом Windows 11 22H2 и Samba-AD

Станьте суперпользователем:

apt update
apt install -y samba winbind smbclient
systemctl stop smbd nmbd winbind
systemctl disable smbd nmbd winbind
systemctl mask smbd nmbd winbind
systemctl unmask samba-ad-dc
systemctl enable samba-ad-dc
mv /etc/samba/smb.conf{,orig}

samba-tool domain provision \
--domain=EXAMPLE --realm=EXAMPLE.SAMBA --adminpass=Passw0rd \
--server-role=dc --use-rfc2307 --dns-backend=SAMBA_INTERNAL

dns=$(resolvectl status | grep -E "^[[:blank:]]*Current DNS Server:" | awk '{print $4}')

[ -n "$dns" ] && \
sed -r -i "s,dns forwarder = .*,dns forwarder = ${dns}," \
/etc/samba/smb.conf

unlink /etc/resolv.conf
echo "nameserver 127.0.0.1" > /etc/resolv.conf
echo "search example.samba" >> /etc/resolv.conf
systemctl stop systemd-resolved
systemctl disable systemd-resolved
mv /var/lib/samba/private/krb5.conf /etc/
systemctl start samba-ad-dc

# ослабьте настройки пароля, чтобы упростить тестирование
samba-tool domain passwordsettings set --min-pwd-age=0 --complexity=off

# Создайте пользователя samba в домене:
samba-tool user create ubuntu

# установите krb5-user, для тестирования с kinit. Не должно быть запросов debconf, поскольку у нас уже есть /etc/krb5.conf, заполненный данными

apt install krb5-user -y

Ответ или решение

Проблема совместимости между Windows 11 (22H2) и сервером Ubuntu с Samba

Ваша ситуация, связанная с проблемами совместимости между Windows 11 версии 22H2 и сервером на базе Ubuntu с пакетом Samba, является актуальной для многих организаций, переходящих на новые версии операционных систем. Давайте детально разберёмся в сложившейся ситуации и возможных решениях.

Общее описание проблемы

После обновления Windows 11 до версии 22H2 у сотрудников вашей организации возникли проблемы с входом в домен, управляемый контроллером домена, установленным на базе Ubuntu 18.04.6 LTS. Как вы правильно заметили, причины этого кроются в изменениях, внесённых Microsoft в механизмы шифрования, направленных на устранение проблемы с годом 2038, которые, к сожалению, привели к несовместимости с более старыми версиями Samba.

Временное решение

Вы правильно нашли временное решение, активировав параметр "Использовать только шифрование Kerberos DES для этой учетной записи". Однако использование DES в качестве метода шифрования считается устаревшим и менее безопасным, что в долгосрочной перспективе может поставить под угрозу безопасность вашей сети.

Основные проблемы и их причины

  1. Несоответствие версий Samba: Вы обнаружили, что после выполнения команд обновления система по-прежнему использует Samba версии 4.7.6 вместо ожидаемой 4.16. Это связано с тем, что репозиторий вашей версии Ubuntu может не содержать последних версий пакета Samba, так как в стандартных репозиториях часто содержатся стабильные, но не самые последние версии программного обеспечения.

  2. Ошибка в ADUC: Ошибки, с которыми вы сталкиваетесь в Active Directory Users and Computers (ADUC), указывают на то, что система не может правильно связываться с контроллером домена, что может быть следствием проблем с конфигурацией Samba или с сетью.

Решения и рекомендации

  1. Обновление Samba до версии 4.16:

    • Чтобы получить Samba 4.16 на вашей системе, вам потребуется добавить PPA-репозиторий, в котором содержится последняя версия. Используйте следующие команды:
      sudo add-apt-repository ppa:andrewski/samba
      sudo apt update
      sudo apt install samba
    • После этого проверьте версию Samba:
      samba --version
  2. Проверка конфигурации Samba:

    • Убедитесь, что ваши настройки в /etc/samba/smb.conf корректны и соответствуют рекомендациям по включению поддержки новых версий Kerberos и совместимости с Windows 11. Вы можете использовать примеры конфигурации, которые предлагаются в документации Samba.
  3. Устранение конфликта с Kerberos:

    • Убедитесь, что Kerberos настроен правильно. Проверьте файл /etc/krb5.conf на предмет корректных параметров DNS и секций, относящихся к вашей доменной зоне.
  4. Устранение сети:

    • Проверьте, нет ли проблем с сетевой конфигурацией, которые могут препятствовать связи между клиентами Windows 11 и сервером Samba. Убедитесь, что все необходимые порты открыты и что нет блокировок (например, фаерволами).
  5. Тестирование и мониторинг:

    • После внесения изменений следите за логами Samba и системными логами, чтобы получать информацию о любых возникающих ошибках. Используйте команды:
      tail -f /var/log/samba/log.smbd
      tail -f /var/log/syslog

Заключение

Применение вышеуказанных шагов должно помочь вам исправить имеющиеся проблемы с совместимостью между Windows 11 (22H2) и Samba на Ubuntu. Обновление до более новой версии Samba, корректная настройка конфигурации и проверка соединения между клиентами и сервером — это ключевые шаги для успешного развертывания доменной структуры. Не забудьте также поддерживать вашу систему в актуальном состоянии, чтобы избежать подобных защемлений в будущем.

Оцените материал
Добавить комментарий

Капча загружается...