Pull to refresh

Linux в AD, подводный камень

Здравствуйте.

Пишу небольшую статью-заметку по решению конкретной ситуации, сложившейся в процессе переведения компьютеров одной конторы на Linux, введении их в домен AD и организации работы с терминальными серверами на этих рабочих местах.

Водные данные следующие. Основная работа пользователей происходит на терминальной ферме RDS, соответственно домен у нас от Microsoft. Можно было бы остановится на решении типа WTware, но подразумевается, что пользователи изредка или в экстренных случаях могут работать локально. Поэтому выбран стандартный дистрибутив Ubuntu 20.04 LTS + некоторый набор стандартного ПО. В качестве клиента rdp используем remmina.

Итак ввели мы компьютер в домен, аутентификация пользователей работает, сетевые папки монтируются, rdp работает, а компьютер регистрируется в доменной DNS и обновляет свою запись. Однако принтеры подключенные к компьютеру в терминальную сессию не пробрасываются. В частности у нас это этикеточные принтеры. После недолгих раздумий выяснили причину подобного поведения системы. Дело в том, что перед вводом компьютера в домен ему назначается FQDN имя, командой вида:

sudo hostnamectl set-hostname ws01.mydomen.com 

Как результат это имя прописывается в файл /etc/hostname. Это нарушение рекомендаций, которые приведены в инструкциях Debian. В них настаивают, что в этом файле должно содержатся short имя. Применительно к нашему примеру, это ws01.

Изменили процедуру настройки компьютера и перед вводом в домен задали short имя. Проверили, вроде все нормально, аутентификация, сетевые папки, rdp и даже проброс принтеров заработал. И тут сюрприз компьютер перестал регистрироваться в DNS и обновлять свою запись.

Повезло нашли две проблемы, и для каждой из этих проблем есть решение.

Хочешь проброс принтера в терминальную сессию - задай компьютеру short имя.

Хочешь корректную работу DNS внутри домена - задай компьютеру FQDN имя.

Решение одной проблемы исключает решение другой. Поискали решение в интернете, не нашли. Попытались выбрать что нам важнее, не решили. И наконец сделали то, с чего надо было начинать, почитали man на конфиг файл службы sssd.

И вот решение, ради которого и затевалась вся статья.

# Задаем FQDN имя компьютеру
sudo hostnamectl set-hostname ws01.mydomen.com
# Вводим компьютер в домен
realm join mydomen.com
# Меняем имя компьютера на short
sudo hostnamectl set-hostname ws01
# Добавляем в /etc/sssd/sssd.conf в раздел [domain/mydomen.com] строку 
# ad_hostname = ws01.mydomen.com

Теперь работают обе службы.

Вся эта ситуация это следствие различие подходов конфигурации компьютера в дистрибутивах групп DEB и RPM. Поскольку настройка у нас автоматизирована через Ansible, то костыль виде дополнительного переименования компьютера особо на трудоемкость процесса перехода не влияет. Пара строк в плейбуке и проблема решена.

Кстати заранее прописать ad_hostname не получится, поскольку файл конфигурации создается как раз во время ввода компьютера в домен.

Надеюсь я не утомил читателей своим словоблудием, будет приятно, если моя статья поможет кому разрубить "Гордиев узел" и не выбирать что ему важнее.

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.
Change theme settings