Аутентификация Samba в домене Windows

Мы продолжаем серию статей про взаимодействие Linux и Windows. Прошлые статьи можно поглядеть на веб-сайте Центра интероперабельности Microsoftпо ссылке: http://technet.microsoft.com/ru-ru/jj131749. Эти статьи были посвящены настройкам разных дистрибутивов Linuxи главным методам интеграции серверов Samba в домен Windows 2008 R2 (cм. http://technet.microsoft.com/ru-ru/jj134045 http://technet.microsoft.com/ru-ru/Jj134046, http://technet.microsoft.com/ru-ru/jj590164 и http://technet.microsoft.com/ru-ru/jj680665). Сейчас мы разглядим задачку введения в домен Windows 2008R2 сервера с операционной системой CentOS Linux(версия 6.3). Как и в последних статьях, будем воспользоваться штатными средствами, поставляемыми в составе дистрибутива операционной системы. Но, в отличие от наших прошлых статей, мы расширим задачку. Требуется организовать не только лишь файловое хранилище на сервере под управлением CentOSLinux, да и обеспечить доступ доменных юзеров к командной и графической оболочке.

На веб-сайте проекта CentOS можно отыскать информацию о настройке Samba, но эта информация касается, в главном, старенькых версий (CentOS5) и обхватывает маленькое количество примеров конфигурации.

Есть и другие материалы, посвященные настройке Samba для дистрибутива CentOS. В процессе написания статьи и тестирования очень понадобилось выборка статей, размещенных на веб-сайте http://www.linuxmail.info/. В особенности полезными оказались последующие статьи (невзирая на то, что они размещены в марте–апреле 2007 года):

Active Directory Integration with Samba for RHEL/CentOS 5
Troubleshooting Active Directory and Winbind
Active Directory Single Sign On

Для организации испытательной сети мы будем использовать виртуальную среду VMware VSphere 5, реализованную на базе архитектуры гипервизора ESXi. Эта среда интенсивно употребляется в информационно-вычислительной сети МЭИ для размещения серверов и исследований. Но можно было бы пользоваться и отлично себя зарекомендовавшим Microsoft Hyper-V, также хоть каким другим аналогичным решением, в том числе и на базе свободного ПО, такового как гипервизор Xen ( www.xen.org) либо KVM ( www.linux-kvm.org).

Тестовая среда представляет собой доменную сеть на базе Active Directory (Active Directory Domain Services — AD DS), которая состоит из 2-ух серверов инфраструктуры, работающих под управлением MS Windows Server2008 R2 EE, и одной клиентской машины — MS Windows 7 Professional. Употребляются Айпишники из сабсети 192.168.7.0/24.

Наименование домена — LAB.LOCAL
Сервер ForefrontThreat Management Gateway (TMG) 2010 — LAB-TMG.lab.local
Клиент — LAB-CL1.lab.local

На контроллере домена LAB-DC1 установлены роли:

cлужбы сертификации Active Directory (Active Directory Certificate Services — AD CS);
доменные службы Active Directory (Active Directory Domain Services — AD DS);
DHCP-сервер (Scope name: LAB.LOCAL; Address pool: 192.168.7.20–192.168.7.70);
DNS-сервер (Type: AD-Integrated; Dynamic updates: Secure only);
веб-службы (IIS).

Тестовая сеть и описания протоколов взаимодействия описаны в статье http://technet.microsoft.com/ru-ru/jj134045.

Требуемые пакеты

Мы устанавливаем мало нужный набор пакетов: десктоп Gnome(либо другой оконный менеджер по выбору), базисный сервер и Samba. Нам потребуются:

пакет krb5-workstation (версия не ниже 1.9), содержащий нужные клиентские приложения для аутентификации на базе Kerberos;
пакет oddjobmkhomedir (версия не ниже 0.30-5), созданный для автоматического сотворения каталогов юзера при первом входе в систему;
сам пакет Samba(версия не ниже 3.5-10), содержащий главные программки и пакет samba-winbind, отвечающий за соединение нашего сервера с контроллером домена.

НастройкаDNS

Поначалу нужно настроить службу DNS. Это очень принципиально, так как от корректного разрешения имен в сети зависит надежная работа нашей сети и сервисов Samba. Наш контроллер домена сразу является и сервером DNS. Потому выберем в разделе AdministrativeTools программку управления DNSи вручную введем имя и адресок нового сервера. На рис. 1 уже представлен итог.

Аутентификация Samba в домене Windows

Рис. 1. Задание имени и адреса вDNS.

Наш сервер DNS интегрирован с ActiveDirectory. Можно проверить правильность прямого и оборотного разрешения имен с внедрением утилиты nslookup либо host. Уточним: это необходимо сделать непременно, даже невзирая на то, что нужная запись уже появилась на сервере DNS. Необходимо это сделать поэтому, что такая проверка — излишний тест работоспособности сети и правильности опций. Проверка при помощи утилиты hostвыглядит так:

host192.168.7.10 — определение имени по адресу, и

hosttest-centos.lab.local— определение адреса по имени.

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

Настройка сетевого адаптера

Сейчас этот Айпишник (192.168.7.10) нужно присвоить сетевому адаптеру вновь установленного сервера CentOS Linux. Воспользуемся пт меню System на десктопе и выберем пункт NetworkConnections (рис. 2).

Аутентификация Samba в домене Windows
Прирастить

Рис. 2. Настройка сетевого соединения.

В показавшемся окне опций зададим подходящий Айпишник. В итоге мы должны получить последующее — см. рис. 3.

Аутентификация Samba в домене Windows
Прирастить

Рис. 3. Настройка сетевого соединения. ЗаданиеАйпишника.

Наш сервер настроен с внедрением менеджера соединений (NetworkManager). Потому необходимо непременно отметить несколько опций:

? Connectautomatically, что позволяет автоматом подключать сетевой адаптер.

? Availableto all users, что разрешает воспользоваться этим адаптером всем юзерам.

Можно настроить сетевое соединение вручную, отредактировав файл /etc/sysconfig/networking/devices/ifcfg-eth0, приведя его к виду, показанному на рис. 4.

Аутентификация Samba в домене Windows
Прирастить

Рис. 4. Настройка сетевого соединения. Файл опций.

Ключевое слово NM_CONTROLLEDразрешает либо воспрещает управлять соединением с внедрением NetworkManager.

При любом методе опций, следует установить Айпишник сервера DNS. Это наш контроллер домена с Айпишником 192.168.7.2.

Для внедрения опций сетевого адаптера следует выполнить команду перезапуска:

/etc/init.d/network restart

Настройка времени

Как уже говорилось в прошлых статьях, корректная настройка времени очень принципиальна для работы Active Directory. Настроить время можно с внедрением штатных средств системы (см. рис. 5).

Аутентификация Samba в домене Windows
Прирастить

Рис. 5. Настройка времени.

Но для того, чтоб на сто процентов избежать заморочек с рассинхронизацией часов, следует настроить службу времени (бес ntpd) на синхронизацию времени с контроллером домена (см. рис. 6).

Аутентификация Samba в домене Windows
Прирастить

Рис. 6. Настройка службы времени.

Для этого необходимо отредактировать файл /etc/ntp.conf, указав в качестве сервера времени контроллер домена. Не забудьте настроить пуск беса ntpd при помощи команды chkconfigntpdon и перезапустить его командой /etc/init.d/ntpdrestart.

Проверка опций

Произведя обозначенные опции, следует проверить их правильность. Необходимо протестировать соединение с контроллером домена, настройку времени, корректность прямого и оборотного разрешения имен (см. рис. 7).

Аутентификация Samba в домене Windows
Прирастить

Рис. 7. Проверка опций.

Настройка авторизации в домене

Сейчас установилась пора настроить членство нашего сервера в домене Windows. В отличие от прошлых примеров, не будем раздельно настраивать LDAPи Kerberos. Попытаемся настроить все сходу, используя утилиту командной строчки authconfig, поставляемую в составе дистрибутива CentOS.

Authconfig позволяет настроить сходу все требуемые службы. При всем этом настраивать можно не только лишь авторизацию в домене Windows2008, да и внедрение LDAP, NIS и других методов аутентификации.

Более подробную информацию об утилите authconfig можно получить из встроенного управления (manauthconfig, онлайн-версия http://www.opennet.ru/man.shtml?topic=authconfig&category=8&russian=2), или из встроенного управления, набрав в командной строке authconfig-help. Довольно будет сказать, что authconfig имеет около 50 опций опции — представляете его способности и, сразу, трудности в настройке? Проще пользоваться графическим интерфейсом к authconfig — утилитой system-config-authentication (рис. 8). Эту утилиту можно вызвать из интерфейса администрирования системы, а можно и командной строчкой. При этом 2-ой вариант представляется желаемым, так как вывод исследовательских сообщений будет происходить в окно терминала, что упростит поиск дефектов.

Аутентификация Samba в домене Windows
Прирастить

Рис. 8.Вызовsystem-config-authentication.

В меню User Account Databaseможно избрать место хранения списков юзеров и паролей. Вероятными вариациями являются:

локальная база данных паролей (файлы /etc/passwdи /etc/shadow);
подключение к серверу LDAP;
подключение к серверу NIS;
внедрение Winbind— подключение к контроллеру домена Windows;
внедрение IPAv2 — интегрированное решение, объединяющее LDAP, Kerberos, NTP, DNS и службу сертификатов.

IPAv2 позволяет авторизовать юзеров, рабочие станции, группы и вести политику управления сетевым доступом. IPAv2 позиционируется как решение, заменяющее NSSWITCH и PAM. Более подробная информация представлена на http://www.freeipa.org/page/Main_Page.

Так как нашей задачей является авторизация в домене Windows, то в качестве User Account Databaseмы избираем Winbind (рис. 9).

Аутентификация Samba в домене Windows
Прирастить

Рис. 9.ВыборUser Account Database.

Нужно указать главные характеристики для authconfig. WindowsDomain — это короткое наименование домена Windows2008R2, то, которое употребляется в параметре workgroupфайла конфигурации Samba (/etc/samba/smb.conf). О файле конфигурации Samba мы уже ведали в прошлых статьях ( http://technet.microsoft.com/ru-ru/jj134046).

Security modelустанавливается в ads, что соответствует значению параметра securityв файле конфигурации Samba/etc/samba/smb.conf). Выбор security model = adsозначает, что употребляются протоколы, совместимые со службами ADSWindows 2008R2. Другие вероятные значения security model:

Domain — централизованная авторизация с внедрением домена Windows 2000/2003;
Server — употребляется в тех случаях, когда Sambaне является членом домена, но употребляет централизованное хранение пользовательских аккаунтов и паролей на сервере;
User — употребляется локальная база аккаунтов и паролей юзеров. При всем этом требуется не только лишь пользовательский акк, да и акк рабочей станции.

Параметр Winbind ADS Realmаналогичен параметру REALM в файле конфигурации Sambaи относится к настройкам безопасности Kerberos. Аналогичный параметр REALM указывается в файле опций /etc/krb5.conf.

Поле Winbind Domain Controllers можно бросить пустым — имя контроллера домена обусловится из DNS. Заполнять это поле следует, если по каким-то причинам служба DNS не может найти имя и Айпишник контроллера домена.

Очень увлекателен параметр Template Shell, указывающий, какая командная оболочка будет применена при регистрации доменного юзера на нашем сервере CentOS Linux. Вероятные значения командных оболочек перечислены в файле /etc/shells. К этим значениям утилита system-config-authenticationдобавляет еще /bin/false, которое употребляется как значение по дефлоту. Если в качестве командной оболочки указать /bin/false, то доменным юзерам будет запрещен вход в систему. Параметр TemplateShell аналогичен полю shellфайла /etc/passwd в Linux. Чтоб разрешить юзерам интерактивную работу в системе с внедрением командной строчки, этот параметр необходимо установить в /bin/shили /bin/bash.

Параметр Allow Offline Loginпозволяет нашему серверу CentOS Linux кэшировать пароли и, соответственно, авторизовать юзеров в случае недоступности контроллера домена.

Перейдем на вкладку Advanced Options, так как там есть некие интересующие нас характеристики (см. рис. 10).

Аутентификация Samba в домене Windows
Прирастить

Рис. 10.ВкладкаAdvanced Options system-config-authentication.

На этой вкладке нас заинтересовывают два параметра: Create home directories on the first login и Enable local access control.

Enable local accesscontrol позволяет нам указать правила регистрации юзеров на нашем сервере. Можно разрешить либо запретить определенным юзерам региться с внедрением терминалов либо удаленных рабочих столов. Это очень комфортно, если мы желаем, к примеру, запретить юзерам подключаться через консольный терминал. Правила регистрации и их короткое описание содержатся в файле /etc/security/access.conf.

Параметр Create home directorieson the firstlogin позволяет снять с админа обязанность создавать домашние сборники для юзеров. При указании этого параметра домашний каталог создается автоматом при первом входе юзера в систему. Но нужно проверить правильность наличия этой функции. В CentOS Linux за это отвечает модуль pam_oddjob_mkhomedir.so, который должен быть упомянут в файле /etc/pam.d/system-auth в строке session required pam_oddjob_mkhomedir.so skel=/etc/skel/ umask=0022. Не считая того, домашний каталог для регистрации доменных юзеров на сервере Sambaпо умолчанию задается как /home/%D/%U. Это указывается параметром template homedir в файле опций Samba. Если использовать значение по дефлоту, то админу нужно сделать каталог /home/, где является коротким именованием домена. В нашем случае нужен каталог /home/LAB, в каком будут автоматом создаваться домашние директории юзеров.

Сейчас вернемся на вкладку Identity& Authentication утилиты system-config-authentication и включим наш сервер в домен Windows 2008 R2.

Для этого необходимо избрать действие Join Domainи ввести имя админа домена и пароль (рис. 11). По нажатию кнопки OK, мы должны включить наш сервер в домен LAB.

Аутентификация Samba в домене Windows
Прирастить

Рис. 11. Указание имени и пароля админа при вводе в домен.

Как лицезреем, наш сервер Samba удачно включен в домен (рис. 12). Сообщение об этом появилось в окне терминала. Фактически, для этого сообщения мы и запускали system-config-authentication через командную строчку в окне терминала. Если запускать через вкладку System, то сообщение о включении либо невключении сервера в домен придется находить в файлах системных журналов.

Аутентификация Samba в домене Windows
Прирастить

Рис. 12. Включение в доменLAB.

После включения в домен в окне Authentication Configurationнажимаем кнопку Apply, и в окне терминала возникают сообщения о перезапуске Winbind и oddjobd.

Проверим включение нашего сервера в домен на контроллере (см. рис. 13).

Аутентификация Samba в домене Windows
Прирастить

Рис. 13. Проверка наличия в домене.

Мы лицезреем, что наш сервер включен в домен под именованием test-centos.

Сейчас проверим возможность регистрации доменных юзеров на нашем сервере. Укажем доменного юзера в ответ на приглашение о вводе имени на консоли сервера (рис. 14).

Аутентификация Samba в домене Windows
Прирастить

Рис. 14. Ввод имени доменного юзера.

Как видно, имя юзера указывается совместно с именованием домена. По дефлоту разделителем является оборотная косая «». Это значение можно поменять параметром winbind separator в файле опций Samba. Выбрав кнопку LogIn, получим приглашение ввести пароль. После ввода пароля получаем десктоп юзера usertest(рис. 15).

Аутентификация Samba в домене Windows
Прирастить

Рис. 15. Десктоп доменного юзера вCentOSLinux.

Таким макаром, мы удачно решили задачку включения сервера CentOSLinux в домен Windows 2008 R2 и даже разрешили доменным юзерам обращаться к рабочему столу и командной строке Linux. Это дает юзерам домена дополнительные способности использования разных операционных систем в сети предприятия.

Заключение

Данная работа выполнена на базе Информационно-вычислительного центра МЭИ.

Мы будем рады вашим замечаниям и предложениям. У нас есть способности собрать тестовую сеть и отладить на ней разные варианты и конфигурации систем для обеспечения их взаимодействия.

Аналогичный товар: Комментирование на данный момент запрещено, но Вы можете оставить ссылку на Ваш сайт.

Комментарии закрыты.