Crmgo Блог

ubuntu в домені. спосіб 3.

ubuntu в домені. спосіб 3.

Вводимо в домен Active Directory з іменем MYDOMAIN.COM комп'ютер з іменем MYUBUNTU. Ім'я сервера контролера домену – dc1.mydomain.com, IP-адреса – 192.168.0.100. Ім'я копії сервера контролера домену – dc2.mydomain.com, IP-адреса – 192.168.0.101. IP-адреса DNS сервера 192.168.0.10 IP-адреса другого DNS сервера 192.168.0.11…

ubuntu в домені. спосіб 3.

Вводимо в домен Active Directory з іменем MYDOMAIN.COM комп'ютер з іменем MYUBUNTU.
Ім'я сервера контролера домену – dc1.mydomain.com, IP-адреса – 192.168.0.100.
Ім'я копії сервера контролера домену – dc2.mydomain.com, IP-адреса – 192.168.0.101.
IP-адреса DNS сервера 192.168.0.10
IP-адреса другого DNS сервера 192.168.0.11

Для введення ОС Ubuntu в домен Windows нам необхідно встановити клієнт Kerberos, Samba та Winbind.

Для цього вводимо у вікно термінала наступні команди:
sudo apt-get update
sudo apt-get install krb5-user winbind samba

Перш за все змінюємо налаштування DNS на нашому комп'ютері, прописавши як DNS IP-адресу вашого сервера DNS (або IP-адреси всіх ваших серверів DNS, якщо у вас їх декілька). Як домен пошуку вказуємо наш домен.
Для цього правимо вміст файлу /etc/resolv.conf командою sudo gedit /etc/resolv.conf. Вписуємо в нього наступні значення:

domain mydomain.com search mydomain.com nameserver 192.168.0.10 nameserver 192.168.0.11

Тепер вводимо ім'я нашого комп'ютера у файлі /etc/hostname (sudo gedit /etc/hostname):

MYUBUNTU

Далі редагуємо файл /etc/hosts (sudo gedit /etc/hosts) таким чином, щоб у ньому був запис з повним доменним ім'ям комп'ютера і обов'язково коротким ім'ям хоста, що посилається на одну з внутрішніх IP:

127.0.0.1 localhost 127.0.1.1 MYUBUNTU.mydomain.com MYUBUNTU

Після виконання всіх вищеперелічених дій перезавантажуємо комп'ютер і авторизуємося під іменем користувача, якого ми завели при встановленні операційної системи.
Наступною дією буде налаштування синхронізації часу нашого комп'ютера з сервером контролера домену.
Синхронізацію будемо налаштовувати за допомогою демона ntpd, який буде періодично виконувати синхронізацію.
Ставимо демон ntpd: sudo apt-get install ntp
Далі правимо файл /etc/ntp.conf (sudo gedit /etc/ntp.conf):

# You do need to talk to an NTP server or two (or three). server dc1.mydomain.com

Закриваємо вікно редагування і перезапускаємо демон ntpd: sudo /etc/init.d/ntp restart

Підготовчі роботи проведені, переходимо до налаштування взаємодії з доменом.
Правимо файл /etc/krb5.conf (sudo gedit /etc/krb5.conf), в якому знаходяться налаштування авторизації в домені через протокол Kerberos.
Можете взяти мій файл – krb5.conf і замінити вміст вашого файлу вмістом мого файлу. Не забудьте змінити mydomain.com на ім'я вашого домену і dc1, і dc2 на імена ваших серверів контролерів домену.

Для перевірки того, що ми можемо пройти авторизацію в домені виконуємо команду: kinit username@MYDOMAIN.COM
Ім'я нашого домену необхідно писати великими літерами. Замість username необхідно ввести ім'я одного з реальних користувачів домену.
Якщо після виконання команди ми не отримуємо жодних повідомлень про помилку, значить, всі налаштування виконані правильно.
Перевіряємо, що домен видає нам квиток Kerberos командою klist. Видалити всі видані квитки можна командою kdestroy.

Для входу в домен правимо налаштування файлу /etc/samba/smb.conf (sudo gedit /etc/samba/smb.conf).
Можете взяти мій файл – smb.conf і замінити вміст вашого файлу вмістом мого файлу. Не забудьте змінити mydomain.com на ім'я вашого домену. Там, де MYDOMAIN написано великими літерами – ви вписуєте назву вашого домену великими літерами, відповідно там, де mydomain написано маленькими літерами – пишете маленькими.
Після редагування smb.conf зберігаємо файл і виконайте команду в терміналі testparm.
Ця команда перевіряє ваш конфігураційний файл smb.conf на помилки і видає інформацію про нього:

# testparm Load smb config files from /etc/samba/smb.conf Loaded services file OK. Server role: ROLE_DOMAIN_MEMBER Press enter to see a dump of your service definitions

Ви побачите наведене вище повідомлення, якщо все зробили правильно.
Тепер входимо в домен. Вводимо команду sudo net ads join -U username -D MYDOMAIN
Замість username вводимо ім'я адміністратора домену, замість MYDOMAIN вводимо ім'я вашого домену. Натискаємо Enter. Система попросить ввести пароль користувача, якого ви вказали в username. У разі успішного входу ви зможете побачити наступне повідомлення:

# net ads join -U username -D MYDOMAIN Enter username's password: Using short domain name -- MYDOMAIN Joined 'UBUNTU' to realm 'mydomain.com'

Вітаю, ви ввели ваш комп'ютер у домен!
У мене після включення комп'ютера в домен виводиться помилка: DNS update failed!
У цьому випадку необхідно видалити комп'ютер з домену і повторити всі кроки з налаштування знову.
Якщо ви все зробили заново і впевнені, що помилки немає, а DNS все одно не оновлюється, то внесіть вручну запис для вашого комп'ютера на ваш DNS сервер і все буде працювати.

Якщо ви хочете бачити користувачів домену на своєму комп'ютері з Ubuntu, то вам необхідно налаштувати демон Winbind. Цей демон необхідний для зв'язку локальної системи управління користувачами і групами Linux з сервером Active Directory.
Winbind дозволяє спроектувати всіх користувачів і всі групи AD у вашу Linux систему, присвоївши їм ID із заданого діапазону. Таким чином ви зможете призначати користувачів домену власниками папок і файлів на вашому комп'ютері і виконувати будь-які інші операції, зав'язані на користувачів і групи.
Для налаштування Winbind правимо файл /etc/samba/smb.conf (sudo gedit /etc/samba/smb.conf). Додаємо наступні рядки в секцію [global]:

template shell = /bin/bash idmap uid = 10000 - 40000 idmap gid = 10000 - 40000 winbind enum groups = yes winbind enum users = yes winbind use default domain = Yes winbind enum users = Yes winbind enum groups = Yes winbind use default domain = Yes winbind nested groups = Yes winbind refresh tickets = yes winbind offline logon = yes winbind cache time = 1440 unix extensions = no

Зберігаємо файл smb.conf і виконуємо наступні команди:

sudo /etc/init.d/winbind stop sudo smbd restart sudo /etc/init.d/winbind start

Перевіряємо, що Winbind “бачить” користувачів і групи з Active Directory за допомогою команд:

wbinfo -u wbinfo -g

Для того, щоб ми могли призначати користувачів домену власниками папок і файлів, необхідно вказати Ubuntu використовувати Winbind як додаткове джерело інформації про користувачів і групи.
Змінюємо у файлі /etc/nsswitch.conf (sudo gedit /etc/nsswitch.conf):

passwd: compat group: compat

на

passwd: compat winbind group: compat winbind

Для того, щоб користувачі домену авторизовувалися на комп'ютері з Ubuntu необхідно налаштувати PAM на роботу з Winbind.
Змінюємо вміст файлу /etc/pam.d/common-session (sudo gedit /etc/pam.d/common-session) шляхом додавання в кінець файлу наступного запису:

session optional pam_mkhomedir.so skel=/etc/skel/ umask=0077

Останньою дією переносимо запуск Winbind при завантаженні системи після всіх інших служб. Виконуємо наступні команди:

sudo mv /etc/rc2.d/S20winbind /etc/rc2.d/S99winbind sudo mv /etc/rc3.d/S20winbind /etc/rc3.d/S99winbind sudo mv /etc/rc4.d/S20winbind /etc/rc4.d/S99winbind sudo mv /etc/rc5.d/S20winbind /etc/rc5.d/S99winbind

Вітаю! Ми закінчили налаштування системи для входу користувачів домену на комп'ютер з Ubuntu. Перезавантажуємося і пробуємо увійти в систему під будь-яким обліковим записом користувача домену.
Далі розглянемо підключення мережевих ресурсів для користувачів домену.

 

Приховати список користувачів, замість нього вивести рядок введення імені користувача:
sudo vim /etc/lightdm/lightdm.conf
greeter-hide-users=true
Відмовити. Краще використовувати відображення разом з користувачами, які вже входили
greeter-show-manual-login=true
Якщо потрібно прибрати можливість гостьового входу:
allow-guest=false

Прибрати зі списку користувачів певних користувачів:
sudo nano /etc/lightdm/users.conf
hidden-users=nobody nobody4 noaccess admin

Примітка: матеріал міг бути створений за підтримки ШІ з подальшою людською редакцією. Відповідальний за зміст: Dmytro Lomaka, Kaltenkirchen.