Ввод Samba в домен ActiveDirectory

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 11:09, 9 декабря 2017.
Ubuntu + Samba + Active Directory
UbSmbADLogo.png
Веб-сайт {{#property:P856}}

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

Подготовка

Создадим две виртуальные машины, на одну установим Ubuntu Server 16.04, на другую Windows 10 Pro. Также на вторую виртуальную машину можно установить Windows Server 2008 или более позднюю версию вместо Windows 10 Pro.

Настройка Ubuntu Server

1. Настройка локальной сети
Начнем работу с Ubuntu Server, для создания локальной сети между машинами необходимо отключить DHCP и настроить статический IP-адрес, и в настройках сети машины установить "Сетевой мост". В данном случае установим IP-адрес сервера 10.0.0.100, имя хоста ubuntu.laba.local, домен laba.local
Для этого вводим следующие команды:

# su - 
# nano /etc/network/interfaces 

И вводим следующие данные:

Рис. 1. Файл /etc/network/interfaces
# nano /etc/hosts
Рис. 2. Файл /etc/hosts
#  echo ubuntu.laba.local > /etc/hostname 
#  reboot 

После перезагрузки сервера заходим в настройки "Виртуальной машины" и ставим в настройках сети "Сетевой мост".

Рис. 3. Настройки сети
Для проверки правильности работы машины в локальной сети со статическим IP-адресом, открываем командую строку любой из машин находящихся в данной локальной сети и вводим команду
#  ping 10.0.0.100
, если пакеты будут передаваться успешно, то все работает правильно. Также об изменениях в сети может сообщить антивирус, тем что к сети подключилось новое устройство с IP 10.0.0.100.

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

# apt-get update && apt-get upgrade -y

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

# apt-get install git attr build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev libpam0g-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev krb5-user docbook-xsl libcups2-dev acl ntp ntpdate winbind -y

Во время установки, нужно будет провести настройку аутентификации Kerberos:

Рис. 4. Настройка аутентификации Kerberos

Далее в окне ввода имени машины - вводим ubuntu.
3. Установка и настройка Samba
Скачаем Samba

# git clone -b v4-1-stable git://git.samba.org/samba.git samba4
# cd samba4

Настроим и произведем сборку Samba

# ./configure --enable-debug --enable-selftest
# make
# make install

Проверим правильность установки Samba, если версии Samba и клиента SMB одинаковые, то все установилось правильно.

# /usr/local/samba/sbin/samba -V

Version 4.1.23

# /usr/local/samba/bin/smbclient -V

Version 4.1.23

Теперь инициализируем наш контроллер домена, следующей командой:

# /usr/local/samba/bin/samba-tool domain provision --realm=laba.local --domain=LABA --adminpass="password" --server-role=dc --dns-backend=SAMBA_INTERNAL  

Как пример пароля: DOMAINserver123.
Теперь запустим Samba в стандартном режиме.

# /usr/local/samba/sbin/samba  

Проверка работы Samba как контроллера домена

# /usr/local/samba/bin/smbclient -L localhost -U% 
Рис. 5. Вывод ответа на команду

Проверим работу аутентификации, подключившись к общей директории "netlogon", используя аккаунт администратора домена, который был создан во время настройки.

#  /usr/local/samba/bin/smbclient //localhost/netlogon -UAdministrator -c ‘ls’ 
Рис. 6. Результат аутентификации


4. Настройка DNS Samba
Samba уже содержит в себе собственный полнофункциональный DNS сервер, он был инициализирован командой "--dns-backend=SAMBA_INTERNAL".
Теперь настроим его:

#  echo domain DOMAIN.LOCAL >> /etc/resolv.conf 
#  nano /usr/local/samba/etc/smb.conf

В данном файле установим dns forwarder = 8.8.8.8


5. Тестирование DNS
Настроенный DNS влияет на правильность работы с Active Directory. Без правильных записей DNS, Kerberos не будет работать, поэтому проверим правильность работы DNS

#  host -t SRV _ldap._tcp.laba.local
#  host -t SRV _kerberos._udp.laba.local
#  host -t A ubuntu.laba.local

На данные команды должны выводиться следующие строки.

Рис. 7. Результаты команд

6. Настройка Kerberos

#  nano /usr/local/samba/share/setup/krb5.conf

Меняем REALM на LABA.LOCAL

Рис. 8. Файл /usr/local/samba/share/setup/krb5.conf

7. Тестированине Kerberos

#  kinit administrator@LABA.LOCAL
Рис. 9. Тестирование Kerberos

Отключим срок действия пароля, чтобы не возникло проблем в будущем.

#  /usr/local/samba/bin/samba-tool user setexpiry administrator --noexpiry

Проверка получения билетов.

#  klist -e

8. Создание директории пользователей

#  mkdir -m 770 /Users
#  chmod g+s /Users
#  chown root:users /Users
#  nano /usr/local/samba/etc/smb.conf

Дописываем в конце файла следующие строки:

Рис. 10. Файл /usr/local/samba/etc/smb.conf

Настройка машины на Windows 10 Pro

1. Настройка машины
Первым делом скачаем и установим пакеты Remote Server Administration Tools for Windows 10.

Рис. 11. Скачивание пакетов

После этого поменяем настройки соединения, в которых обязательно нужно указать DNS, в виде IP-адреса 1-ой машины и изменить настройки "Сети" виртуальной машины на "Сетевой мост".

Рис. 12. Настройки сети


2. Включим машину в домен
Идем по пути: "Этот компьютер -> Свойства -> Дополнительные параметры системы". В открывшемся диалоговом окне выбираем Имя компьютера -> Изменить -> Выбираем домен и вводим laba.local.

Рис. 13. Изменение домена машины
Рис. 14. Ввод учетных данных администратора для присоединения машины к домену
Рис. 15. Результат присоединения

3. Аутентификация под администратором домена
После перезагрузки в меню выбора пользователя, выбираем "Другой пользователь" и вводим LABA/Administrator.

Рис. 16. Выбор учетной записи администратора домена

Тем самым произведен вход под администратором домена

4. Управление доменом
Разберем управление доменом на примере создания нового пользователя. Идем по пути: "Панель Управления -> Система и безопасность -> Администрирование -> Пользователи и компьютеры Active Directory"

В контроллере домена отображается Ubuntu, что свидетельствует о правильности настройки работы домена.

Рис. 17. Отображение контроллера домена

Теперь создадим нового пользователя. Заходим в Users и выбираем "Создание нового пользователя в текущем контейнере"

Рис. 18. Список пользователей
Рис. 19. Ввод данных нового пользователя
Рис. 20. Ввод пароля учетной записи пользователя

Создав пользователя, попытаемся теперь зайти под ним, выходим из системы и выбираем "Другой пользователь", пишем mario

Рис. 21. Выбор учетной записи пользователя домена

И данная учетная запись определяется как Mario Smith.

Рис. 22. Учетная запись пользователя Mario Smith

Итог

В данной статье была произведена установка контроллера домена Active Directory на Ubuntu под управлением Samba и рассмотрены примеры управления доменом.

Ссылки

Источники

  1. How to Make an Ubuntu Active Directory Domain Controller With Samba // Youtube. [2017-2017]. Дата обновления: 6.01.2014. URL: https://www.youtube.com/watch?v=Rf7Hk8qWt1Q (дата обращения: 20.11.2017).
  2. Установка Контроллера Домена Active Directory на Ubuntu под управлением Samba // Mirivlad. [2017-2017]. Дата обновления: 31.10.2016. URL: https://mirivlad.ru/2016/10/ustanovka-kontrollera-domena-active-directory-na-ubuntu-pod-upravleniem-samba/ (дата обращения: 20.11.2017).