Letysite.ru

IT Новости с интернет пространства
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ad на linux

Ad на linux

Выпущенная Samba 4 реализует почти полноценный аналог Active Directory (AD), включая контроллер домена, службу DNS, Kerberos-аутентификацию, групповые политики. Однако, с помощью Samba 4 пока нельзя создавать сложные доменные структуры и иерархии и устанавливать доверительные отношения, что ограничивает применимость в крупных организациях.

Таким образом, на текущий момент наиболее реальными применениями Samba 4 являются построение тестовых инфраструктур, а также внедрения в малом бизнесе.

Тем более, что во многих случаях реальный выбор не так велик. Microsoft предлагает специальные редакции Windows Server 2012 для малого бизнеса — Essentials и Foundation. Первая при цене в $500 представляет собой довольно интересное интегрированное решение для 25 пользователей, вторая предлагается для установки OEM и готова поддерживать 15 пользователей. Но проблема в том, что для большего числа потребуется не только докупать CAL, но и менять серверную лицензию на Standard. Samba 4 таких ограничений лишена и может масштабироваться до любого необходимого уровня. Вероятно, для ее распространения также лучше подошла бы OEM-модель, гарантирующая полную совместимость с оборудованием и отсутствие неожиданностей хотя бы на первых порах.

Между тем само внедрение Samba 4 — дело достаточно нехитрое. Естественно, начать лучше с тестирования какого-нибудь специализированного дистрибутива. Таковой, к примеру, предлагает SerNet, немецкий интегратор и участник проекта Samba — SerNet Samba 4 Appliance. Дополнительно на нем можно развернуть ПО коллективной работы Zafara, в состав входит готовый скрипт для корректировки схемы AD. Novell/SUSE предлагает свой вариант Excellent Samba4 Appliance, причем в виде как загрузочных образов, так и уже развернутых виртуальных дисков для всех популярных систем виртуализации. Данный дистрибутив периодически обновляется, вслед за выходом очередных исправлений к Samba 4.

Собственно, инициализация AD заключается в развертывании дистрибутива или создании и запуске соответствующей виртуальной машины и выполнения готового скрипта dcpromo, который запрашивает немногочисленные параметры (название домена, IP-адрес и пр.).

Поскольку Samba 4 создавалась на основе официально приобретенной документации Microsoft, ее совместимость обещает быть довольно высокой. Во всяком случае, можно использовать все стандартные административные инструменты Microsoft, которые в случае Excellent Samba4 Appliance даже доступны через внутренний веб-сервер.

Поскольку Samba 4 реализует все необходимые для AD процедуры RPC, также можно пользоваться утилитами командной строки и PowerShell-скриптами. Linux-сообщество разрабатывает и собственные инструменты, как графические, так и скриптовые, но степень их готовности пока неудовлетворительна.

В случае использования инструментов Microsoft дальнейшее администрирование домена происходит совершенно привычно для любого, хотя бы поверхностно знакомого с AD в Windows Server. Добавление учетных записей, создание групп, разграничение полномочий выполняется совершенно прозрачно.

Таким образом, Samba 4 позволяет организовать простой домен AD на Linux фактически без необходимости глубоких знаний собственно Linuх. К тому же, гибкость открытой ОС дает возможность создавать компактные монофункциональные дистрибутивы с Samba 4, которые будут надежно работать как в физической, так и виртуальной среде. Под вопросом пока остается стабильность и масштабируемость самой Samba 4, но команда разработчиков, похоже, на достигнутом останавливаться не собирается.

Теперь подробно остановимся на установке и настройке Excellent Samba4 Appliance.

Создание Домен контроллера, Active Directory и Файлового сервера с помощью Excellent Samba 4 Appliance.

1. Для начала скачиваем Excellent Samba 4 Appliance, предварительно зарегистрировавшись на сайте https://susestudio.com/.

2. Далее, скачиваем дистрибутив. Я поднимаю на виртуальной машине Hyper-V, поэтому скачиваю ISO-образ диска.

3. Итак, имеет файл Excellent_Samba4_Appliance.x86_64-1.1.11.iso, загружаемся с него и видим:

Жмём Excellent Samba4 Appliance.

Принимаем условия лицензии, нажав y. Дальше видим картину:

Логин / пароль в данном случае: root / opensuse

4. После авторизации, необходимо настроить параметры сети, выполнив команду: yast lan

Нажмите F4 для конфигурирования IP адреса.

Назначаю статический адрес 192.168.0.253, маска 255.255.255.0, имя pbdc.pbd.net

Нажимаю Next и перехожу во-вкладку Hostname/DNS.

Назначаю Hostname — pbdc, Domain — pbd.net. DNS сервера: 192.168.0.253, 91.222.240.250 и 91.222.241.250. Domain search — pbd.net.

Перехожу во вкладку Roating, где прописываю IP адрес интернет-шлюза. В моём случае — 192.168.0.254.

Жму OK. Началось применение параметров. Теперь из любого компьютера в сети адрес 192.168.0.253 должен пинговаться. Если так, всё сделано правильно.

5. Теперь установим систему на жесткий диск машины. Набираем в консоли yast и жмём Enter.

Заходим в пункт Miscellaneous, затем Live Installer, жмём Enter.

Выбираем английский язык и английскую раскладку клавиатуры (русский вряд-ли будет отображаться правильно), принимаем условия лицензии и жмём Next.

Выбираем часовой пояс и устанавливаем время, жмём Next.

Далее назначаем правило разметки диска. Я оставил всё без изменений и нажал Next.

Придумываем пользователя и пароль. Придумываем пароль root’у.

Проверяем введенные данные и жмём Install.

По завершению установки, выходим из Yast и перезагружаемся, написав reboot, вытаскиваем загрузочный диск.

6. Входим в root и приступаем к настройке Samba 4. Для облегчения этого процесса нам уже написали неплохой скрипт, который находится в

Linux в домене Active Directory

Содержание

Если вам нужно просто предоставить сетевой доступ к ресурсам Linux компьютера, то смотрите статью Samba.

В этой статье мы опишем как подключить Linux компьютер к домену под управлением Microsoft Active Directory и сделать из него файловый сервер.

После выполнения этой инструкции мы будем иметь в сети файловый сервер под управлением ОС Линукс, входящий в домен Windows 2003 и ничем не отличающийся от файлового сервера под Windows. Пользователи домена смогут обращаться к его ресурсам под своими учётными записями. Доступ регулируется группами домена AD.

По этой инструкции настраивались Debian (4, 5), Ubuntu 9.10, создавалась она на основе официальной документации и многих рекомендаций и инструкций из Интернета. Остальные Linux’ы настраиваются сходным образом.

  • Проверяем что Samba собрана с поддержкой Kerberos:
  • Также проверим что поддерживается LDAP
  • Для корректной работы Samba в домене Windows 2003 нужны версии MIT Kerberos version >=1.3.1. Проверим:
  • Для корректной работы с Windows 2008 серверами сама Samba должна быть достаточно свежая:
  • Устанавливаем сервер и клиент samba.

При настройке krb5-config лучше указывать IP адреса контроллеров домена, а не их DNS имена.

  • Для подключения к домену Active Directory удобно использовать утилиту Likewise-Open.
  • Для администрирования Samba удобно использовать SWAT или webmin, которые предоставляют веб интерфейс. Попасть на него можно по адресу http://server_address:901 и https://server_address:10000 соответственно, указав для соединения пользователя root. Но будьте осторожны — он полностью переписывает smb.conf и некоторые параметры может просто игнорировать. Лучше предварительно сделать резервную копию файла. Я сначала использовал SWAT, а затем дорабатывал конфигурационный файл /etc/samba/smb.conf руками. Вот, что осталось у меня не закоментированным (принтеры к этому серверу не подключены):

Мы описали два общих каталога:

  • backup — доступ имеют только пользователи входящие в группу BackupGroup в Active Directory. Они могут создавать и удалять файлы/каталоги
  • distrib — доступ имеют все пользователи входящие в группу DistribGroup в Active Directory

В приведённой конфигурации подразумевается, что eth0 — это сетевой интерфейс в локальную сеть, где домен имеет полное имя WORKGROUP.DOMAIN.LOCAL

  • редактируем /etc/nsswitch:
  • Проверим, что в /etc/hosts есть корректная запись для нашего сервера, также можно добавить записи для контроллеров доменов:
  • Удаляем если есть (или переносим в резервные копии) файл /etc/samba/secrets.tdb и все файлы из /var/lib/samba/*.tdb
  • Проверяем конфигурацию (не обязательно):
  1. testparm -s

В Ubunto testparm находится в пакете samba-common-bin

  • Проверим как Samba-3 winbind общается с контроллером домена Active Directory посредством протокола Kerberos:

На рассхождение времени в секундах указывает строка «Server time offset: -5». Обратите внимание, что протокол Kerberos зависим от времени, и расхождение с часами контроллера домена допускается лишь незначительное, поэтому желательно настроить NTP клиент (см. статьи по настройке NTP). В Ubuntu это указывается в файле /etc/default/ntpdate:

  • В Debian (и его сыновьях, таких как Ubuntu и внуках вроде Linux Mint) при установке пакета krb5-cofig сразу предлагается его настройка. Лучше всего попробовать работать с этими настройками, но если ничего предложено не было или мы хотим что-то изменить, то редактируем /etc/krb5.conf (я для более стабильной работы использовал ip адреса вместо имён серверов):
  • Проверим работает ли Kerberos, постараемся получить билет и просмотреть его:
  • Удалим полученный билет:
  • Присоединяемся к домену:

Всё, компьютер включен в домен, что можно проверить на контроллере. Даже если после приведённых строк получили следующие:

  • Для удобства отладки сделаем ссылку на каталог журналов:
  • Запускаем samba и winbind:
  • Для проверки правильно ли подключение к домену можно посмотреть список пользователей и групп домена (не обязательно):

Если нас не понимают, то подсказываем пароль для wbinfo и смотрим: список доменов в сети, информацию о домене WORKGROUP, список пользователей и групп домена:

  • Проверяем, как работает NSS. Команда getent показывает инфо о пользователе, который может быть как в домене, так и юниксовый:
  • Теперь можно использовать ресурсы на линукс-сервере, на которые мы дали доступ, как обычные доменные ресурсы.
  • Можно также сопоставить (но это не обязательно) локальные учётные данные и из домена Windows. Для сопоставления пользователей редактируем файл /etc/samba/smbusers.conf:
  • для сопоставления (мапирования от англ. Map) групп домена и групп UNIX выполняем:
  • После того как всё отлажено, можно понизить уровень записи в журнал до «1». В /etc/samba/smb.conf:
Читать еще:  Lock file linux

Начиная с этих версий параметры авторизации у MS поменялись. Скорее всего Samba вскоре это учтёт, а пока подружить системы можно изменив на Win7 свойства сетевой безопасности:

Пуск — Панель управления — Администрирование — Локальная политика безопасности — Локальные политики — Параметры безопасности

  • Сетевая безопасность: минимальная сеансовая безопасность для клиентов на базе NTLM SSP — убрать галочку с «Требовать 128-битное шифрование». Таких параметра два — выполнить для обоих
  • Сетевая безопасность: уровень проверки подлинности LAN Manager — выбрать в списке пункт «Отправлять LM- и NTML-ответы»

Winbind не запускается

При запуске Samba обнаруживаем, что winbind не запустился:

В журнале log.winbindd обнаруживаем запись:

Видим, что добавлен «встроенный домен» (BUILTIN) и домен «название компьютера» (STORAGE), подключиться к домену AD не удалось.

Решение: Переподключить компьютер в домен. Удалять придётся с самого контроллера, т.к. комадна net ads leave скорее всего не поможет.

Ошибка получения билета Kerberos

При попытке получить билет Kerberos получили:

Решение: указать имя домена в другом регистре. Скорее всего нужны все заглавные

[Active Directory] Ubuntu в домене Windows AD

Некоторое время назад на работе достался мне для работы ноутбук HP ProBook 6460b. Ну и пришла в голову идея поставить на него вместо надоевшей Windows 7 Pro давно понравившуюся мне Ubuntu 14.04 Trusty LTS. Выбор операционной системы связан с тем, что Ubuntu я использую на домашнем ноутбуке и мне захотелось иметь такую же систему на рабочем компьютере. Потому, что постоянное переключение между ОСями дома и на работе быстро надоело мне и я решился на установку Ubuntu на рабочем ноуте.

Начну по порядку

Процесс установки Убунты на ноутбук не буду пересказывать потому, что не вижу в этом смысла из-за большого количества таких мануалов на просторах интернета. Скажу только то, что устанавливал с флешки, а образ на флешку писал на рабочем ноутбуке под Windows 7 Pro с помощью программы Rufus. Хватит про установку, перейдем к процессу введения в домен.
При вводе в домен Windows я пользовался стандартной инструкцией по вводу в домен. В процессе ввода в домен возникали проблемы самого разного характера (в основном связанные с моей невнимательностью и легкой кривизной рук 🙂 ). Да инструкция на русском языке есть и она довольно хороша, но я все же пользовался не только этой инструкцией, но и другими подсказками с прочих сайтов и форумов. Поэтому я решил собрать из всех одну свою.

Первое что необходимо сделать это — правильно и вполне логично! — обновиться:

Далее нас потребуется установить клиенты Kerberos , Samba и Winbind для нормальной и адекватной работы в домене Windows . Сделать это можно одной командой:

Лично я пробовал два варианта установки: первый — как указано выше — установка всех необходимых пакетов одной строкой, и второй — установка каждого паке в отдельности. Честно признаюсь, что меня больше устроил и больше понравился вариант отдельной установки каждого пакета. Поясню это тем, что при комплексной установке у меня начальная настройка пакета Kerberos не происходила, и я решил (точнее не решил, а мне пришлось из-за кривизны рук и невнимательности переустанавливать полностью Ubuntu и соответственно все необходимые пакеты) ставить все пакеты по отдельности в вышеуказанном порядке. Это дало свои плоды. На этапе установки пакеты Kerberos произошла его полная настройка где указывались все необходимые параметры для работы в домене (собственно сам домен, необходимые для авторизации DC , рабочие группы или зоны). Далее я поставил Самбу и Винбинд с которыми каких-либо заморочек не было. Так же я установил указанные желательными библиотеки libpam-krb5 , libpam-winbind и libnss-winbind . Их я устанавливал одной командой, т.к. они не требуют никаких ручных настроек и просто желательно их присутствие в системе.

Для простоты и дальнейшей ясности процесса будем считать нашим доменом по умолчанию DOMAIN.RU , доменконтроллером которого будет first.domain.ru с ip-адресом 192.168.1.2 . Он же будет нашим первичным DNS сервером домена. Коме того представим в нашем домене еще один доменконтроллер second.domain.ru с ip-адресом 192.168.1.3 . Ну и компьютер наш будет называться work-ubuntu .

Настройка DNS

Для начала необходимо изменить настройки DNS на вашей машине, прописав в качестве DNS-сервера доменконтроллер и в качестве домена поиска — нужный домен. Если у вас статический IP-адрес, то в Ubuntu Desktop это можно сделать через Network Manager, в Ubuntu Server необходимо изменить содержимое файла /etc/resolv.conf на примерно такое:

В современных дистрибутивах файл resolv.conf создается автоматически и править вручную его не нужно. Для получение нужного результата нужно добавить необходимые изменения в файл: /etc/resolvconf/resolv.conf.d/head . Данные которые будут добавлены в него, будут автоматически вставлены в файл /etc/resolv.conf . Если IP-адрес динамический и присваивается DHCP сервером то после перезагрузки resolv.conf может формироваться “неправильный” resolv.conf , например присутствует только один nameserver 192.168.1.1 и не указаны domain и search . Нужно отредактировать /etc/dhcp/dhclient.conf . Чтобы появились записи domain и search нужно убрать комментарий перед строкой supersede domain-name , и вписать свой домен:

Можно было бы добавить еще один nameserver , но я этого делать не стал потому, что у нас в сети компании он единственный. Для применения изменений необходимо перезапустить службу:

Теперь необходимо проверить файл /etc/hostname и убедиться в том, что мы правильно задали имя нашего ноутбука.

Кроме всего прочего необходимо отредактировать файл /etc/hosts так, чтобы в нем была запись с полным доменным именем и обязательно с коротким именем. У меня получился такой формат:

Сразу необходимо проверить, что наш контроллер домена пингуется нормально по короткому и по полному доменному именам:

Не обязательно конечно, но как говорится в инструкции “желательно” при внесении каких-либо изменений делать перезагрузку. Лично я так и делал.

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

Тут собственно говоря ничего сложного! Я просто единожды выполнил команду:

и забыл про это дело. Другие варианты развития я не вижу смысла освещать в статье т.к. они мне не понадобились.

Собственно переходим к самому основному: настройка авторизации через Kerberos

Настройка авторизации по протоколу Kerberos осуществляется простым редактированием файла /etc/krb5.conf . Вот примерный его вид:

Вы естественно указываете вместо DOMAIN.RU и first свои домен и контроллер домена. Особое внимание обращаю на соблюдение регистра — все что написано в верхнем регистре пишется в верхнем регистре!

Это конечно далеко не все, что настраивается но уже сейчас возможно проверить способность авторизации в домене. Для этого достаточно выполнить команду:

Вместо vasya и DOMAIN.RU вы так же указываете свои имя пользователя и домен. Команда так же регистрозависима! Если вы после выполнения данной команды получаете завпрос на ввод пароля от указанного пользователя и не получаете никаких ошибок, значит у вас все прекрасно. В противном случае еще раз перепроверьте все измененные вами файлы на правильность (внимательно изменяйте все ваши файлы).

Убедиться в том, что билет получен, можно с помощью команды:

Будем считать, что авторизация вы настроили и билет получен. Теперь настроим вход в домен.

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

Для того, чтобы войти в домен, необходимо прописать правильные настройки в файле /etc/samba/smb.conf . На данном этапе нас интересуют только некоторые параметры секции [global] . Вот примерный вариант файла:

Теперь необходимо проверить внесенные изменения на правильность (точнее себя на внимательность и руки на кривость 🙂 ) следующей командой:

В случае правильного изменения файла /etc/samba/smb.conf вы увидите примерно следующее:

Данное сообщение известит вас о том, что вы правильно внесли все изменения и настала пора наконец-таки осуществить вход в домен. Для этого необходимо выполнить следующую команду:

В случае успешного входа вы увидите на экране примерно следующее:

Я снова не стану описывать все возможные ошибки, потому что и ежу понятно, что если появились ошибки значит ты сделал что-то не так. Поэтому скажу только одно: RTFM friend!

На данном этапе вы можете установить себе smbclient :

и проверить доступность ресурсов, хотя бы, на доменконтроллере:

Вы должны будете увидеть список доступных ресурсов на доменконтроллере

Переходим к настройке Winbin

Если вам необходимо работать с пользователями домена, например, настраивать SMB-шары с разграничением доступа, то вам понадобится кроме самой Samba ещё и Winbind — специальный демон, служащий для связи локальной системы управления пользователями и группами Linux с сервером Active Directory . Проще говоря Winbind нужен, если вы хотите видеть пользователей домена на своём компьютере с Ubuntu.

Читать еще:  Dllregisterserver код ошибки 0x80004005

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

Для настройки Winbind используется всё тот же файл /etc/samba/smb.conf . Добавьте в секцию [global] следующие строки:

Строки с параметрами idmap config указаны с новыми параметрами не характерными для старых версий Samba, поэтому на данном этапе будьте внимательнее. Старый формат этих строк можно посмотреть в официальной инструкции по вводу в домен.

Теперь вам необходимо перезапустить демон Winbind и Samba . Для этого соблюдая порядок команд, выполните их поочередно:

Смотрим есть ли ошибки или предупреждения, если появится: rlimit_max: rlimit_max (1024) below minimum Windows limit (16384) , то отредактировать файл /etc/security/limits.conf :

После перезапуска проверьте, что Winbind установил доверительные отношения с AD командой

А так же, что Winbind увидел пользователей и группы из AD командами:

Эти две команды должны выдать список пользователей и групп из домена соответственно. Либо с префиксом DOMAIN , либо без него — в зависимости от того, какое значение вы указали параметру winbind use default domain в /etc/samba/smb.conf .

Итак, Winbind работает, однако в систему он еще не интегрировал.

Добавление Winbind в качестве источника пользователей и групп

Для того, чтобы ваша Ubuntu прозрачно работала с пользователями домена, в частности, чтобы вы могли назначать пользователей домена владельцами папок и файлов, необходимо указать Ubuntu использовать Winbind как дополнительный источник информации о пользователях и группах.

Для этого измените две строчки в файле /etc/nsswitch.conf :

добавив к ним в конце winbind :

Так же рекомендую привести строку hosts: в файле /etc/nsswitch.conf к виду:

Теперь можно проверить, что Ubuntu запрашивает у Winbind информацию о пользователях и группах выполнив по очереди следующие команды:

После выполнения первой команды вы должны увидеть содержимое вашего файла /etc/passwd и пользователей вашего домена AD из указанного диапазона в файле /etc/samba/smb.conf . Вторая команда вернет все то же самое, только для групп.

Авторизация в Ubuntu через пользователей домена

Несмотря на то, что все пользователи домена фактически стали полноценными пользователями системы (в чём можно убедиться, выполнив последние две команды из предыдущего раздела), зайти ни под кем из них в систему всё ещё нельзя. Для включения возможности авторизации пользователей домена на компьютере с Ubuntu необходимо настроить PAM на работу с Winbind .

Он-лайн авторизация

Для он-лайн авторизации я лично подредактировал парочку файлов. Первый файл, который я редактировал это /etc/pam.d/common-session и добавил в него всего одну строчку:

Вторым был файлик /etc/lightdm/user.conf . В него необходимо добавить строчку в самый конец файла:

На этом собственно говоря все готово! Перезагружаемся и входим под учетной записью доменного пользователя.

Офф-лайн авторизация

Часто возникает ситуация, когда домен-контроллер недоступен по различным причинам — профилактика, отключение света или вы принесли ноутбук домой и хотите поработать. В этом случае для Winbind можно настроить кэширование учетных записей пользователей домена. Для этого необходимо сделать следующее. Добавьте в секцию [global] файла /etc/samba/smb.conf следующие строки:

Обычно этого достаточно. Если же возникают ошибки, то необходимо создать файл /etc/security/pam_winbind.conf со следующим содержанием:

Файл /etc/pam.d/gnome-screensaver в таком случае принимает вид:

А также изменяется файл /etc/pam.d/common-auth :

На этом вроде бы все 🙂

Вместо заключения

После всех проделанных операций наша машина на Ubuntu стала полноценным членом домена Windows и теперь с ней могу работать пользователи AD .

Было мягко говоря не легко. Тяжело было собрать информацию, относящуюся именно к моей Ubuntu 14.04 Trusty LTS .

Как подружить Linux с доменом Active Directory

Архив номеров / 2008 / Выпуск №3 (64) / Как подружить Linux с доменом Active Directory

Мирослав Бусалов

Как подружить Linux с доменом Active Directory

Windows или Linux? Наверное, нет ни одного системного администратора, который не задумывался бы над этим вопросом. О плюсах и минусах операционных систем Open Source и продуктов Microsoft написаны гигабайты текстов, ожесточенные споры не утихают уже много лет. Наблюдая за этими баталиями, хочется лишь одного – гармонии.

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

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

Статья представляет собой пошаговое руководство, как «подружить» рабочие станции Linux с доменом Active Directory.

Домен Active Directory под управлением одного или более контроллеров домена на базе Windows Server 2003; в качестве Linux-десктопа используется Kubuntu 7.10

  • Обеспечить единую аутентификацию пользователей.
  • Обеспечить авторизацию пользователей в домене Active Directory.
  • Обеспечить прозрачную и сквозную авторизацию на ресурсах сети (SSO – Single Sign-On).
  • Обеспечить хранение пользовательских данных на сервере.

Про последний пункт хотелось бы сказать следующее: в данном примере в качестве файлового сервера используется Windows-сервер. Поэтому речь идет только о хранении данных пользователей. Сохранять профиль UNIX-пользователя на сервере не представляется возможным, так как в качестве Linux-десктопа используется Kubuntu 7.10 со встроенным экранным менеджером KDE. В процессе создания профиля пользователя KDE создает символьные ссылки (symlink), которые необходимы для корректной работы. Естественно, что создать symlink в файловой системе NTFS на Windows Server 2003 не получится.

  • domain.ru – полное имя домена Active Directory;
  • dc.domain.ru – полное имя контроллера домена;
  • fileserver.domain.ru – полное имя файлового сервера.

Условно всю работу можно разделить на следующие этапы:

  • Модернизация схемы Active Directory.
  • Настройка атрибутов будущих UNIX-пользователей и групп.
  • Настройка рабочей станции с Kubuntu.
  • Настройка ресурсов сети (веб-серверов, службы ssh и т. д.) для обеспечения прозрачной и сквозной авторизации пользователей.

Модернизация схемы Active Directory

В классической схеме AD невозможно хранить атрибуты UNIX-пользователей, такие как UID, GID, Login Shell, Home Directory. Поэтому схему необходимо расширить, добавив в нее возможность хранения нужных нам сведений. Для этого существует два варианта: первый – это бесплатный пакет Microsoft под названием Windows Services for UNIX 3.5 (SFU), второй – это использование последней версии семейства серверов 2003 – Windows Server 2003 R2. Мы будем использовать второй вариант. Если ваши контроллеры домена и файловые серверы уже работают под релизом R2, можно смело пропустить несколько абзацев, касающихся обновления стандартного Windows Server 2003 до R2.

Windows Server 2003 R2 – версия Windows Server 2003, имеющая встроенные компоненты Windows Services for UNIX (SFU), необходимые нам при создании гетерогенной среды для хранения атрибутов UNIX-пользователей в схеме Active Directory. Релиз R2 включает в себя два важных компонента:

  • Subsystem for UNIX-based Applications (SUA);
  • Identity Management for UNIX (IMU).

SUA помогает UNIX-приложениям работать под Windows так, как будто они работают в Linux или UNIX. Это выходит за рамки нашей статьи, поэтому мы сфокусируем внимание на компоненте IMU, которая содержит нужные в дальнейшем службы – Administration Components, Password Synchronization, Server for NIS, их установку мы сейчас и рассмотрим.

Необходимо отметить, что возможно два сценария обновления, в зависимости от того, установлен у вас пакет SFU или нет. Мы будем рассматривать вариант, при котором SFU не установлен. В противном случае рекомендую посетить англоязычный ресурс http://www.winlinanswers.com/book/resources.php?id=5, где вы найдете полное описание варианта обновления до R2 с установленным SFU.

Вставив CD#2 с дистрибутивом Windows Server 2003 R2 и согласившись на продолжение установки, вы увидите сообщение об ошибке с описанием, что установка не может быть продолжена, поскольку версия схемы данного домена не совместима с R2. Поэтому сначала необходимо выполнить следующую команду:

где X – буква, соответствующая CD с дистрибутивом. После чего можно начать установку компонентов R2, выполнив файл R2auto.exe из корневой директории CD.

После установки компонентов R2 нужно в панели управления в разделе установки и удаления программ выбрать пункт «Windows Components», затем найти строчку «Active Directory Services» и в детализации выбрать установку «Identity Management for UNIX».

Читать еще:  Дистрибутив red hat linux

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

Настройка атрибутов будущих UNIX-пользователей и групп

Откройте оснастку Active Directory User and Computers и вызовите свойства любого пользователя. Появилась новая закладка UNIX Attributes, в которой возможно назначить свойства UNIX-пользователя (см. рисунок). Для начала нам нужно создать несколько UNIX-групп, которые пригодятся нам в дальнейшем.

Свойства UNIX-пользователя — UNIX attributes

Создайте группу UNIXusers – это будет группа по умолчанию для всех UNIX-пользователей. Для этого создайте обычным способом группу нужного вам вида (Domain Local или Global), затем откройте свойства данной группы и перейдите на вкладку «UNIX Attributes». В строке «NIS Domain» выберите ваш домен, после чего группе автоматически будет присвоен GID. Если он не устраивает вас по какой-то причине, можете прописать новый идентификатор вручную. При создании следующих групп GID будет автоматически увеличиваться на единицу.

Аналогичным способом создайте группу UNIXadmins, которая затем будет указана в настройках конфигурационного файла /etc/sudoers как группа, членам которой разрешено выполнять sudo на рабочих станциях с Kubuntu.

Создайте еще одну группу и назовите ее audio, присвоив ей вручную GID 29. Дело в том, что в Linux есть одна особенность – файлы аудиоустройств, как правило, имеют общую группу таким образом, что возможность работы с аудио доступна только владельцам файлов и членам этой группы. В эту группу потом добавим всех пользователей, чтобы у них была возможность использовать наушники и микрофон.

Теперь выберите одного из тех пользователей вашего домена, которому вы хотите присвоить UNIX-атрибуты. В свойствах откройте вкладку «UNIX Attributes», так же как и для группы, выберите имя вашего домена в строке «NIS Domain», и в строке «Primary group name/GID» выберите группу по умолчанию UNIXusers.

Если необходимо по каким-то причинам изменить параметры Login Shell и Home Directory, можно это сделать. UID присвоится автоматически, но при желании можно прописать его вручную.

После присвоения UNIX-атрибутов всем нуждающимся в них пользователям вернемся к группам. Открыв свойства группы UNIXusers, на вкладке «UNIX Attributes» нажмите кнопку «Add» и добавьте туда всех пользователей.

Аналогично поступим с группой audio, а в группу UNIXadmins внесем только тех пользователей, кому разрешено выполнение sudo на рабочих станциях.

Теперь остается только создать нового пользователя, например unixldap, и присвоить ему соответствующие атрибуты. Учетная запись этого пользователя будет использоваться при регистрации и поиске в LDAP с Linux-десктопа, поэтому её необходимо максимально ограничить в правах, допустим, явно запретив доступ ко всем ресурсам файлового сервера и т. д.

На этом работы с оснасткой «Active Directory User and Computers» закончены.

Немного о настройке файлового сервера для работы с UNIX-клиентами

В данном примере монтирование домашних каталогов пользователей осуществляется с использованием CIFS (Common Internet File System).

Если для каких-нибудь задач вам потребуется работа с NFS (Network File System), то для обеспечения доступа к файловым ресурсам вашего Windows-сервера с Linux-десктопов необходимо будет установить на сервер пакет Microsoft Services for NFS. Привожу краткое руководство, как это сделать.

Зайдите в панель управления, затем в разделе установки и удаления программ выберите пункт «Windows Components», там войдите в «Other Network File and Print Services» и в детализации выберите установку «Microsoft Services for NFS». Из данного пакета необязательными к установке являются два последние пункта: Server for NFS Authentication и User Name Mapping. После установки данных служб пользователи с рабочих станций под управлением Linux получат доступ к файловым ресурсам данного сервера, используя NFS.

Настройка рабочей станции с Kubuntu

Теперь приступим к самой большой части работы – настройке Kubuntu. Сначала выполните установку Kubuntu 7.10 на рабочую станцию, после чего установите все необходимые обновления, например, используя встроенный в KDE менеджер обновлений Adept Updater.

Также рекомендуется изменить параметры входа в систему для KDE (в других экранных менеджерах могут быть отличия) – открываем меню «System Settings», переходим на закладку «Advanced», там выбираем «Менеджер входа в систему», и, войдя в административный режим, отключаем опцию «Показывать список» на вкладке «Пользователи». Если этого не сделать, система при входе будет отображать всех UNIX-пользователей вашего домена, что совершенно ни к чему.

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

Поэтому первым пунктом настроим синхронизацию времени. Для этого в файле /etc/default/ntpdate внесем следующие изменения:

При следующей перезагрузке ПК будет синхронизировать время с контроллером домена, а пока проведем синхронизацию вручную, выполнив следующую команду:

$sudo ntpdate -s dc.domain.ru

Указываем FQDN для настраиваемой рабочей станции в файле /etc/hosts:

127.0.0.1 workstation.domain.ru localhost workstation

Проверьте доступность машины по FQDN командой:

ping workstation.domain.ru –с 4

Теперь необходимо установить и настроить поддержку Kerberos. Устанавливаем нужные пакеты:

$sudo apt-get install krb5-user libpam-krb5 krb5-config libkrb53 krb5-doc

Если система выдала ошибку :

последуйте совету подсказки, наберите:

$sudo dpkg –-configure –a

В процессе вас попросят принять решение о замене файла /etc/qt3/qt_plugins_3.3rc – согласитесь с вариантом по умолчанию, оставьте текущую версию без изменений. Данная ошибка иногда проявляется в версии 7.10 после первой установки обновлений.

И приступаем к настройке – внесем изменения в файл /etc/krb5.conf:

# DOMAIN.RU пишется обязательно ЗАГЛАВНЫМИ БУКВАМИ

# The following krb5.conf variables are only for

Linuxoid

OpenSource forever

Подключаем Linux ПК к Active Directory при помощи realmd

Не смотря на то что Linux и Windows уже не редкость в одной сети, интеграции из коробки до сих пор нет. Как нет и единого решения. Проект realmd упрощает подключение Linux систем к Active Directory.

Что у нас есть на сегодня? Microsoft для Windows Server 2008 R2 — 2012 R2 предлагает Identity Management for UNIX (Служба управления идентификацией UNIX), являющийся частью роли контроллера домена и позволяющий использовать для входа в Unix учетные записи Active Directory. Но в настоящее время он уже объявлен как устаревший. Большие возможности дает Configuration Manager, но и соответственно требует больших вложений. Сторонники Unix ориентируются на связку Samba (winbind) и Kerberos или на решения сторонних компаний (PowerBroker Identity Services, Centrify Server Suite, Quest Authentication Services). Первый бесплатен, рекомендуется многими специалистами как более правильные, но требуют тщательных настроек. Вторые вмешиваются в схему AD и требуют дополнительного лицензирования (PowerBroker имеет и OpenSource версию).
realmd (Realm Discovery, freedesktop.org/software/realmd) сервис D-Bus позволяющий производить настройку сетевой аутентификации и членства в домене (AD или IPA/FreeIPA) без сложных настроек. Информация о домене обнаруживается автоматически. Для аутентификации и проверки учетных записей realmd использует SSSD (через Kerberos и LDAP, fedorahosted.org/sssd) или Winbind. Версия 0.1 была представлена в конце июля 2012, на момент написания этих строк актуальной была 0.16.1. В настоящее время realmd интегрирован в kickstart, Центр управления GNOME и другие инструменты. Покажем подключение к домену example.org при помощи realmd на примере Ubuntu Linux 14.04 LTS, в других дистрибутивах все показанное будет отличаться только особенностями работы менеджера пакетов.
Перед началом настроек, необходимо настроить DNS, лучше всего когда в /etc/resolv.conf прописан сам контролер домена. Все что необходимо уже есть в репозитарии:

При конфигурировании krb5-user будет запрошена область по умолчанию, вводим имя домена в верхнем регистре — EXAMPLE.ORG.

Конфигурирование пакета krb5-user

Конфигурационный файл /etc/realmd.conf не создается и действуют параметры по умолчанию. В результате может возникнуть конфликт имен, что приведет к ошибке при подключении. Чтобы избежать проблем следует его создать, такого содержания:

Файл на самом деле имеет множество полезных опций, но пока этого достаточно.
Сервисы SSSD ( System Security Services Daemon) также требуют настройки. Добавим фильтр учетных записей и количество попыток подключений:

В некоторых ситуациях следует добавить «use_fully_qualified_names = False».
Указываем права доступа:

Пробуем найти доступные домены:

Получаем тикет пользователя имеющего права администратора домена.

Подключаемся (рис.2). Для запуска понадобятся права root иначе получим сообщение «realm: Couldn’t join realm: Not authorized to perform this action».

Подключаемся к Active Directory

Теперь если ввести «sudo realm list» получим полную информацию о домене, а в консоли «Active Directory Users and Computers» появится новый компьютер.
Информация о домене

Вкладка Active Directory Users and Computers
Некоторые действия и информацию можно получить при помощи утилиты adsli.

Также стоит добавить новое правило в /etc/sudoers, чтобы доменный пользователь мог получать права администратора локального компьютера:

Перегружаем систему и регистрируемся как доменный пользователь «пользователь@домен».

Ссылка на основную публикацию
Adblock
detector