Для корректного отображения сайта вам необходима поддержка Javascript и Cookies.

Настройка Fedora 15 для работы в домене Windows Server 2003

Опубликовал Dematron в чт, 01/12/2011 - 11:07

Обновлено в вт, 06/12/2011 - 18:02

Долгое перелопачивание интернета в поисках ответа на вопрос "почему это у меня не работает так как надо" выливается в эту статью.

Задача не тривиальная, но как мне кажется с ней вскоре будут сталкиваться многие кто имеют нелегальные Windows у себя в сети, и кто планирует как-то этот момент решать. Для себя я решил, что буду  устанавливать везде где это возможно Linux. Но ко времени этого решения база Active Directory была уже достаточно велика, и просто устанавливать Linux без ввода в домен было нецелесообразно.

Соответственно были поставлены следующие задачи реализовать следующее:

  1. Вход в систему под доменным пользователем
  2. Возможность доступа к сетевым шарам без повторного ввода логина и пароля по билетику Kerberos

Чтож, начнем потихоньку их решать.

Немного предисловия...

Для работы была выбрана версия Linux Fedora 15, а точнее российский вариант - RFRemix 15. С момента выхода версии 12 и первоначалных проб ввода Linux в домен и работе в нем очень многое изменилось. Несомненно в лучшую сторону. Если с 12 версией требовалось провести очень большое количество манипуляций пока машина просто введется в домен, то в 15 это можно сделать минут за 5, через встроенный графический интерфейс, и пару комманд в консоли.

С предисловием закончили. Теперь стоит описать с чем мы ринемся в бой - Fedora (RFRemix) 15.1, интерфейс KDE (хотя будь это GNOME особой разницы не было бы, и в нем все работает на ура). К моменту написания статьи, 16 версия уже вышла, но после нескольких проб было принято решение отложить ее использования до лучших времен, ибо плюсы по сравнению с 15 версией перевешивались минусами в работе и просто багами. Интерфейс KDE был выбран потому что для пользователей он ближе к ХР, а GNOME, в частности 3-ей версии очень от него далек.

Устанавливаем Fedora как нам угодно, в конце выбираем интерфейс KDE (обычная или минимальная версия будит установлена для нас в данном случае не имеет значения).

После установки нам нужно будит установить нужные нам пакеты. Выполняем с правами root:

yum install samba-windind krb5-workstation samba-client

После установки пакетов и зависимостей, запускаем из меню в нижнем левом углу

Администрирование - Аутентификация

В появившемся окошке выбираем базу данных Winbind и вбиваем по порядку:

  • Имя группы: BEO (здесь и далее мои параметры, вы вбиваете свои)
  • Модель защиты: ads
  • Область ADS Winbind: BEO.IMP (это ваше имя домена)
  • Контроллеры домена Winbind: 192.168.1.1
  • Оболочка шаблона: /bin/bash

Во вкладке дополнительные параметры отмечаем галочкой - Создавать домашний каталог при первом входе. Жмем применить.

После этого заходим в консоль под root и правим файлик smb.conf. Я для этого использую редактор nano, если он не установлен то установите его через yum.

nano /etc/samba/smb.conf

В этом файлике нам нужно поменять параметр - winbind use default domain = false на true. Делается это для того, чтобы при входе под доменным пользователем не приходилось вбивать имя домена перед именем пользователя - например BEO\master. Можно еще поменять параметр - server string, но это уже по желанию.

Далее редактируем файл /etc/hosts и вписываем там в строке с адресом 127.0.0.1 имя своего ПК. Должно получится что-то типа такого

127.0.0.1   fedora15.beo.imp fedora15 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

В данном примере fedora15 это имя которое было присвоено машине при установке и с которым она войдет в домен.

Правим файлик pam_winbind.conf

nano /etc/security/pam_winbind.conf

Устанавливаем в нем параметры - krb5_auth = yes и krb5_ccache_type = FILE. Делается это для того, чтобы билетик Kerberos мог кэшироваться, и чтобы можно было ходить по сетевым шарам с этим билетиком.

Последние изменения вносим в файлик krb5.conf

nano /etc/krb5.conf 

В разделе [domain_realm] дописываем по аналогии с примером. Должно получится нечто подобное

 beo.imp = BEO.IMP
 .beo.imp = BEO.IMP

Вырубаем iptables и selinux или настраиваем так чтобы работало как нам надо. Я пока просто отключаю.

/etc/init.d/iptables stop
chkconfig iptables off
setenforce 0

Теперь обязательно перестартовываем winbind

/etc/init.d/winbind restart

а лучше перезагрузится всю систему чтобы наверняка.

Теперь все готово для ввода нашей машинки в домен. Выполняем в коммандной строке

net ads join -U master

master в данном случае имя администратора домена.

После этого запроса должно появится нечто подобное

Using short domain name -- BEO
Joined 'FEDORA15' to realm 'BEO.IMP'

Это будит означать что ваша машина в домене. Это можно легко проверить зайдя на локальный хост по ssh

ssh master@127.0.0.1

В данном примере master это имя доменного пользователя, не локального. Проверим получили ли мы билетик

klist

Если ответ вида

[master@fedora15 ~]$ klist
Ticket cache: FILE:/tmp/krb5cc_16777216
Default principal: master@BEO.IMP

Valid starting     Expires            Service principal
12/06/11 16:34:56  12/07/11 02:34:56  krbtgt/BEO.IMP@BEO.IMP
        renew until 12/13/11 16:34:56
12/06/11 16:34:56  12/07/11 02:34:56  FEDORA15$@BEO.IMP
        renew until 12/13/11 16:34:56
12/06/11 16:34:56  12/07/11 02:34:56  FEDORA15$@BEO.IMP
        renew until 12/13/11 16:34:56

то все у вас нормально.

Можно пробовать логинится в системе под доменным пользователем, гулять по сети и т.д. и т.п.

Все поставленные задачи решены.

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