Цей варіант може бути корисний для невеликих організацій з комп'ютерами під управлінням Windows.
Немає необхідності купувати недешеву Windows Server для організації AD і CAL ліцензії для доступу до контролера домену.
В кінцевому підсумку маємо плюшки AD: групові політики, розмежування прав доступу до ресурсів і т.д.
Я спробував написати докладний алгоритм дій необхідних для організації Active Directory (AD) Domain Controller (DC) на базі Ubuntu Server.
Розглянемо налаштування контролера домену на прикладі Ubuntu Server 12.04.4 LTS або Ubuntu Server 13.10, інструкція підходить для обох варіантів без додаткових змін
1. Установка Ubuntu
2. Налаштування параметрів мережевого адаптера
після цього, Ви будете працювати з під користувача root.
Про те що Ви працюєте з правами root, указує знак # в запрошенні командного рядка
Або Ви можете перед кожною командою, яка вимагає root доступу, приписувати sudo
У конфігурації Вашого мережевого інтерфейсу, швидше за все, буде
iface eth0 inet dhcp
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.10.1
netmask 255.255.255.0
gateway 192.168.10.10
dns-nameservers 192.168.10.10
dns-search domain.local domain
Після зміни мережевих налаштувань необхідно перезапустити мережевий сервіс
3. Установка необхідних пакетів
Якщо Ви все-таки не встановили OpenSSH server на першому етапі, це можна зробити командою
Перед установкою чого або, краще спочатку оновити систему і пакети командою
Для того, щоб комп'ютери мережі звіряли час за нашого сервера встановимо ntp-сервер
Samba4 будемо використовувати останньої версії і збирати з вихідних, так що нам знадобляться пакети для її складання і коректної роботи.
4. Складання Samba4
Для коректної роботи Samba буде потрібна підтримка vfs на рівні файлової системи, для цього внесемо зміни в / etc / fstab, необхідно додати user_xattr, acl, barrier = 1 в налаштування кореневого розділу /
повинна вийде рядок, щось на зразок цієї:
/ Dev / mapper / dc1 - vg-root / ext4 user_xattr, acl, barrier = 1, errors = remount-ro 0 1
після чого необхідно перезавантажити комп'ютер
Не забуваємо про root права
Викачуємо останню стабільну версію Samba з GIT репозитария
конфігуруємо, компілюємо і встановлюємо Samba
Параметр --enable-debug необхідний для відображення більш докладної інформації в логах Samba.
Після того, як збереться і встановиться Samba (це довгий заняття), для зручності її використання, необхідно прописати шляхи до виконуваних файлів / usr / local / samba / sbin і / usr / local / samba / bin в файлах / etc / sudoers змінна secure_path і / etc / environment змінна PATH. додавши рядок: / usr / local / samba / sbin: / usr / local / samba / bin
повинна вийде рядок щось на зразок цієї:
Defaults secure_path = "/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / local / samba / sbin: / usr / local / samba / bin "
повинна вийде рядок щось на зразок цієї:
перезавантажити ще раз (на всякий випадок)
5. Піднімаємо AD
Як DNS сервера AD будемо використовувати Samba, тому відключаємо bind командою
Для маніпуляцій з AD в Samba існує іструмент samba-tool.
Для початкового налаштування Samba вводимо команду
Якщо на першому етапі Ви правильно вказали ім'я комп'ютера, всі налаштування, які запросить програма, можна залишити за замовчуванням.
Під час налаштування буде запропоновано ввести відповідний пароль користувача Administrator для AD, він повинен відповідати вимогам складності пароля за замовчуванням: хочаб одна буква верхнього регістру, хоча б одна цифра, мінімум 8 символів.
Якщо ж пароль не підійшов за складністю і Ви побачили помилку на зразок цієї:
ERROR (ldb): uncaught exception - 0000052D: Constraint violation - check_password_restrictions: the password is too short. It should be equal or longer than 7 characters!
то перед повторним виконанням початкового налаштування, необхідно видалити вміст каталогів / usr / local / samba / private / і / usr / local / samba / etc /
Якщо необхідно змінити складність паролів це можна зробити командою
ця команда відключає вимога складності, відключає терміни дії паролів, встановлює мінімальну довжину пароля 6 символів
Далі необхідно підправити настройки Samba і додати туди наступні рядки в секцію [global]
allow dns updates = nonsecure and secure
printing = bsd
printcap name = / dev / null
Це дозволить динамічно оновлювати DNS-записи на сервері, при вході робочої станції (під управлінням windows) в домен і відключить підтримку друку, яка постійно видає помилки в лог.
У файлі /etc/resolvconf/resolv.conf.d/head необхідно вказати наш DNS-сервер Samba 127.0.0.1
і перезапустити сервіс resolvconf
Також встановимо Kerberos клієнт
і налаштуємо на AD за допомогою файлу створеного на етапі samba-tool domain provision
Для автоматичного запуску сервісу Samba необхідний скрипт:
його необхідно зробити виконуваним
і створити настройки за замовчуванням
6. Перевіряємо працездатність сервера
У нас должена бути запущена samba після перезавантаження
root 865 0.3 3.0 95408 31748? Ss 18:59 0:00 / usr / local / samba / sbin / samba -D
Повинен працювати DNS сервер