Долго я жил на samba3 и расшариванием серверных папок, но, похоже, пришла пора создавать дома полноценный домен. Заодно перейду на samba4. Всё равно в будущем релизе debian (jessie) samba идёт уже 4-й версии.
Используемые материалы:
- Samba AD DC HOWTO
- Ubuntu 16.04 Active Directory – помогло разабраться с настройков DNS для ввода в домен
- Установка Samba4 в качестве контроллера домена на Ubuntu Server 14.04
- Поднимаем контроллер домена на Ubuntu Server
- Samba 4 как AD на Ubuntu Server или debian 7
- Ввод компьютера в домен Windows – для Ubuntu
Прошу простить, если случайно не упомянул какие-то статьи.
Подготовка:
- останавливаем:
/etc/init.d/samba stop
- копируем
/var/lib/samba , /var/cache/samba , /etc/samba
чтобы, если что, вернуться к тому, что есть сейчас. - проверим конфигурации ядра:
cat /boot/config-`uname -r` | grep CONFIG_EXT
. В выводе должны присутствовать строки, указывающие, что поддержкаXATTR
,SECURITY
иPOSIX_ACL
для файловых системext3
иext4
включена. Типа такого:CONFIG_EXT3_FS_XATTR=y
- в
/etc/fstab
добавляем: user_xattr,acl,barrier=1 в разделы, где будут “расшаренные” ресурсы. Перемонтируем разделы mount -a . - Добавляем в /etc/hosts строку 127.0.1.1 test.domain.loc domain test . Добиваемся, чтобы поиск шёл по домену domain.loc . Это можно сделать разными способами. Через /etc/network/interfaces или /etc/resolv.conf (смотри ссылки выше).
- удаляем samba3. Ты хорошо мне служила, спасибо тебе 🙂
apt-get remove gadmin-samba samba samba-doc samba-tools smbclient winbind cups cups-filters cups-client cups-ppdc cups-common ghostscript - это мой список на удаление. Он зависит от того, что будет показывать команда "на инсталляцию" (ниже). По другому у меня не получается "разрешить зависимости".
- Чистимся.
apt-get autoremove
– чтобы убрать зависимости.- удаляем
/var/lib/samba , /var/cache/samba , /etc/samba
- отключаем стандартный DNS.
service bind9 stop && update-rc.d bind9 disable
Поехали
Тестовая команда “на инсталляцию“. Опция “-s” означает – только показать, что будет. Итак, aptitude -t jessie -s install samba cups acl krb5-user smbclient winbind
В итоге, установка выполняется вот такой командой (для меня): aptitude -t jessie -s install samba cups acl krb5-user smbclient winbind ghostscript
В процессе установки Kerberos задал три вопроса. О домене, о компьютерах и о сервере. Собственно, туда я забил то, что и в /etc/hosts.
sudo samba-tool domain provision --use-rfc2307 --interactive
С первой попытки не получилось. Ругается на кривое содержание /etc/samba/smb.conf . Ну что же, удалим и повторим процесс. Теперь падает на отсутствие acl в файловой системе. Ладно, перегружаем сервак.
apt-get purge samba – удаляет и очищает конфиги
apt-get -t jessie install samba winbind – выдало ругань на невозможность создания логов. Ну и ладно. Повторяем создание домена.
Realm [DOM.LOC]: Domain [DOM]: Server Role (dc, member, standalone) [dc]: DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: DNS forwarder IP address (write 'none' to disable forwarding) [1.1.1.1]: Administrator password: Retype password: Looking up IPv4 addresses Looking up IPv6 addresses No IPv6 address will be assigned Setting up share.ldb Setting up secrets.ldb Setting up the registry Setting up the privileges database Setting up idmap db Setting up SAM db Setting up sam.ldb partitions and settings Setting up sam.ldb rootDSE Pre-loading the Samba 4 and AD schema Adding DomainDN: DC=DOM,DC=loc Adding configuration container Setting up sam.ldb schema Setting up sam.ldb configuration data Setting up display specifiers Modifying display specifiers Adding users container Modifying users container Adding computers container Modifying computers container Setting up sam.ldb data Setting up well known security principals Setting up sam.ldb users and groups Setting up self join Adding DNS accounts Creating CN=MicrosoftDNS,CN=System,DC=DOM,DC=loc Creating DomainDnsZones and ForestDnsZones partitions Populating DomainDnsZones and ForestDnsZones partitions Setting up sam.ldb rootDSE marking as synchronized Fixing provision GUIDs A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf Setting up fake yp server settings Once the above files are installed, your Samba4 server will be ready to use Server Role: active directory domain controller Hostname: hOsTnAmE NetBIOS Domain: DOM DNS Domain: dom.loc DOMAIN SID: S-1-5-21-2559607088-1313825359-174049479
- Проверяем, что каталог /var/log/samba существует
- Запускаем – /etc/init.d/samba start
- Проверим, что работает – smbclient -L localhost -U%
Domain=[DOM] OS=[Unix] Server=[Samba 4.1.11-Debian] Sharename Type Comment --------- ---- ------- netlogon Disk sysvol Disk IPC$ IPC IPC Service (Samba 4.1.11-Debian) Domain=[DOM] OS=[Unix] Server=[Samba 4.1.11-Debian] Server Comment --------- ------- Workgroup Master --------- -------
- Теперь правим конфиг Kerberos
cd /etc mv krb5.conf krb5.conf.orig ln -s /var/lib/samba/private/krb5.conf
- Проверку DNS и подключения к localhost я опущу – есть в ссылках
kinit administrator@DOM.LOC
– пишет, что остался 41 день.samba-tool domain passwordsettings set --max-pwd-age=999
– а вот теперь 999- ntp у меня настроен, опускаю.
- дальше можно делать кучу разных вещей 🙂
Я пока не знаю, что буду делать дальше. 🙂