Active Directory: Установка на Raspberry Pi, Odroid и подобное.

Создаём или редактируем /etc/dhcpcd.conf

# explicitely use eth0 and set static IPs, as well as domain specifics
interface eth0
static routers=192.168.1.1
static domain_name_servers=127.0.0.1
static domain_name_servers=192.168.1.1
static ip_address=192.168.1.2
static domain_search=my.domain.local
Устанавливаем необходимые пакеты

apt-get install samba smbclient winbind krb5-user krb5-config krb5-locales winbind libpam-winbind libnss-winbind samba-dsdb-modules samba-vfs-modules bind9 dnsutils
Останавливаем и отключаем сервисы, иначе будут ошибки

systemctl stop samba-ad-dc.service smbd nmbd winbind
systemctl disable samba-ad-dc.service smbd nmbd winbind

Очищаем место под конфиги, которые сгенерируются сами

mv /etc/samba/smb.conf /etc/samba/smb.conf.backup
rm /etc/krb5.conf
Удалим все файлы *.tdb и *.ldb из ниже найденных директорий

# smbd -b | egrep "LOCKDIR|STATEDIR|CACHEDIR|PRIVATE_DIR"
  LOCKDIR: /usr/local/samba/var/lock/
  STATEDIR: /usr/local/samba/var/locks/
  CACHEDIR: /usr/local/samba/var/cache/
  PRIVATE_DIR: /usr/local/samba/private/
Запускаем создание домена

samba-tool domain provision --dns-backend "BIND9_DLZ" --use-rfc2307 --interactive
Создаём ссылку в нужном месте

ln -sf /var/lib/samba/private/krb5.conf /etc/krb5.conf
Подключим и запустим службу

systemctl unmask samba-ad-dc
systemctl status samba-ad-dc
systemctl enable samba-ad-dc
systemctl status samba-ad-dc
systemctl start samba-ad-dc
Редактируем /etc/resolv.conf

search my.domain.local
nameserver 192.168.1.2
Что бы не было проблем после перезагрузки запретим изменения

chattr +i /etc/resolv.conf
Редактируем /etc/krb5.conf

[libdefaults]
        default_realm = DOMAIN.LOCAL
        dns_lookup_realm = false
        dns_lookup_kdc = true
[realms]
    DOMAIN.LOCAL = {
        kdc = 192.168.1.2
    }
Редактируем /etc/samba/smb.conf

[global]
        dns forwarder = 192.168.1.2
        netbios name = DC
        realm = DOMAIN.LOCAL
        server role = active directory domain controller
        server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate
        workgroup = DOMAIN
        idmap_ldb:use rfc2307 = yes
        kerberos method = system keytab
        client ldap sasl wrapping = sign
        allow dns updates = nonsecure and secure
        nsupdate command =  /usr/bin/nsupdate -g
        local master = yes
        os level = 255
        preferred master = yes
        log level = 3
        username map = /etc/samba/username.map
[netlogon]
        path = /var/lib/samba/sysvol/domain.local/scripts
        read only = No
[sysvol]
        path = /var/lib/samba/sysvol
        read only = No
Создаём или редактируем /etc/samba/username.map

root=DOMAIN\Administrator
Редактируем /etc/bind/named.conf

// include Active Directory support
include "/var/lib/samba/bind-dns/named.conf";
include "/etc/bind/rndc.key";
Перезагружаем сервер и проверяем что можем залогиниться под админом, смотрим зону

kinit Administrator@DOMAIN.LOCAL
dig -t axfr domain.local
Полезные ссылки:
https://www.kerstner.at/2018/11/setting-up-an-active-directory-domain-controller-with-samba-4-on-a-raspberry-pi-3/
https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller#Installing_Samba
Поделиться:

Нет комментариев