- Ubuntu в домене Windows: боль, танцы с бубном и немного магии
- С чего вообще начинается праздник
- DNS, hostname и прочие радости конфигов
- Синхронизация времени: мелочь, без которой ничего не работает
- Настройка Kerberos: строго по рецепту
- Samba и Winbind — шаг за шагом
- Финальный штрих — NSS и PAM
- Ну и что в итоге?
Ubuntu в домене Windows: боль, танцы с бубном и немного магии
Подключить Ubuntu к домену Windows — это как вытащить кролика из шляпы, только без шляпы, без кролика и без уверенности, что в конце вообще кто-то будет аплодировать. На бумаге вроде всё просто: ставим нужные пакеты, правим пару конфигов — и вуаля. А на практике? Ну как сказать… это скорее похоже на «победи босса, пройди квест, не сломай ничего важного».
Сценарий такой: есть старенький, но бодрый сервер на Windows Server 2008 R2, он у нас главный, контроллер домена, DNS-сервер и вообще царь и бог локальной сети. Имя у него — Server2008R2, домен — myserver.com, IP — 172.17.1.3. Есть ещё вторичный контроллер на той же винде, зовётся FileServer. Ну и наш герой — ноутбук на Ubuntu 11.04 (да, древний, но живой), который надо как-то впихнуть в этот виндовый рай.

С чего вообще начинается праздник
Первым делом нужно установить четыре важнейших пакета:
sudo apt-get install krb5-user ntp samba winbind
- krb5-user — для работы с Kerberos, потому что Windows аутентифицируется именно через него.
- ntp — без точного времени ничего не заработает, Kerberos обидится.
- samba — основной мостик в мир SMB и доменов.
- winbind — вот он и позволяет логиниться под пользователями из домена.
Казалось бы, ну установили — и всё. Но, спойлер: нет.
DNS, hostname и прочие радости конфигов
Вот тут начинается настройка вручную. Как по нотам, надо отредактировать:
/etc/resolv.conf
Впишем туда:
domain myserver.com search myserver.com nameserver 172.17.1.3
Затем в /etc/hostname
пишем имя машины — LaptopUbuntu. И обязательно редактируем /etc/hosts
, чтобы прописать IP и FQDN:
127.0.0.1 localhost 172.17.1.2 LaptopUbuntu.myserver.com LaptopUbuntu
Но есть подвох — DHCP. После ребута все правки могут банально слететь. Поэтому DHCP — в сад, ставим ручную настройку через Network Manager. Это реально важно.
Синхронизация времени: мелочь, без которой ничего не работает
Kerberos критично зависит от времени. Разница даже в пару минут — и вы не войдёте. Поэтому в /etc/ntp.conf
прописываем:
server Server2008R2.myserver.com
И запускаем:
sudo /etc/init.d/ntp restart
Всё, теперь Ubuntu знает, какое сейчас время на сервере, и больше не ссорится с Kerberos.
Настройка Kerberos: строго по рецепту
Открываем /etc/krb5.conf
и делаем красиво. Главное — соблюсти все отступы и регистр. Конфиг выглядит примерно так:
[libdefaults] default_realm = MYSERVER.COM ... [realms] MYSERVER.COM = { kdc = SERVER2008R2 kdc = FILESERVER ... } [domain_realm] .domain.com = MYSERVER.COM domain.com = MYSERVER.COM
Это и есть та магия, которая позволит вам получить Kerberos-токен. Кстати, проверить всё можно командой:
kinit имя_пользователя
Если всё хорошо — ничего не вылетит с ошибкой. Если плохо — будет ныть про тикеты, время, DNS или вообще непонятное.
Samba и Winbind — шаг за шагом
Теперь очередь /etc/samba/smb.conf
. Тут надо навести порядок в секции [global]
:
workgroup = MYSERVER.COM realm = MYSERVER.COM security = ADS encrypt passwords = true ...и так далее
Проверяем через:
testparm
Если не ругается — идём дальше. Добавляем параметры Winbind:
idmap uid = 10000 - 40000 idmap gid = 10000 - 40000 winbind enum users = yes winbind use default domain = yes ...и остальные
Перезапускаем всё подряд:
sudo /etc/init.d/winbind stop sudo smbd restart sudo /etc/init.d/winbind start
Финальный штрих — NSS и PAM
В /etc/nsswitch.conf
дописываем в строки:
passwd: compat winbind group: compat winbind
И ещё один штрих — в /etc/pam.d/common-session
добавляем строку:
session optional pam_mkhomedir.so skel=/etc/skel/ umask=0077
Она нужна, чтобы при логине доменного пользователя автоматически создавалась домашняя директория.
Ну и что в итоге?
Ubuntu теперь часть домена Windows. Пользователи с Windows-сервера могут логиниться на ноутбуке под своими учетками, всё синхронизируется, доступы есть. Но путь к этому далёк от «в один клик». Это скорее «настройка на слабо», особенно если сталкиваешься с этим впервые.
Вывод: подключение Ubuntu к домену Windows — это не квантовая физика, но и не прогулка. Всё делается вручную, конфиги капризные, чуть что — и всё ломается. Но работает. А главное — после всей этой эпопеи появляется чувство, что победил систему. Потому что так и есть.