< Samba

Samba AD DC és Bind9

Szerző: Sallai András

Copyright © Sallai András, 2019

CC Attribution-Share Alike 4.0 International

Web: http://szit.hu

Bevezetés

Egy windowsos tartományvezérlőt szeretnénk beállítani Samba4 programmal. A DNS szervert a Samba4 mellé telepített Bind9 szerver fogja ellátni.

A példánkban az alábbi neveket használjuk:

Windows tartománynév: SMB01

valódi név (realm): zold.lan

gépnév: edu.zold.lan

Megjegyzés: A példában .hu, .eu vagy .com felső szintű tartomány nevek helyett egy .and tartománynevet használok.

Hálózat

Állítsuk be a szerver IP címét.

nano /etc/network/interfaces

...
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.10.2/24
gateway 192.168.10.1

Állítsuk be a névszerverre vonatkozó adatokat:

domain zold.lan
search zold.lan
nameserver 192.168.10.1

Gépnév:

nano /etc/hostname

Tartalma:

edu

Gépek:

nano /etc/hosts

127.0.0.1 localhost
192.168.10.2 edu.zold.lan
...

Telepítés

Telepítsük fel a szükséges csomagokat:

apt install samba smbclient winbind krb5-config bind9 dnsutils

Telepítéskor olyan kérdésekre kell válaszolnunk mint:

Módosítsuk az smb.conf-t, hogy a WINS DHCP-hez legyen beállítva? (n)

A valódi tartomány (realm) megadása. Például: ZOLD.LAN

Kereberos szerver számára realm: edu.zold.lan

Kerberos adminisztratív szerver realm: edu.zold.lan

Beállítás

El kell távolítani a Samba telepítéskor létrejött konfigurációs állományát, mivel az smbd és nmbd démonok számára készített konfiguráció. Ezeket a démonokat nem fogjuk használni, leállítjuk őket.

Az eredeti Samba konfiguráció átnevezése:

mv /etc/samba/smb.conf{,.eredeti}

Készítsük el a tartományvezérlőt:

samba-tool domain provision \
--use-rfc2307 \
--server-role=dc \
--dns-backend=BIND9_DLZ \
--realm=zold.lan \
--domain=SMB01 \
--adminpass=Titok12345

Ugyanaz egy sorban:

samba-tool domain provision --use-rfc2307 --server-role=dc --dns-backend=BIND9_DLZ --realm=zold.lan --domain=SMB01 --adminpass=Titok12345

A konfigurációt a samba-tool paranccsal készítjük. A domain provision alparancsot használjuk, ami a tartományvezérlőnek állítja be szerverünket. Az utána következő kapcsolók a következők:

--use-rfc2307	rfc2307 beállítása
--server-role	A szerver szerepe: tartományvezérlő
--dns-backend=BIND9_DLZ	DNS kiszolgáló a helyi BIND9 szerver
--realm=zold.lan	A DNS tartománynév
--domain=SMB01	Windowsos tartománynév
--adminpass=Titok12345	Az Administrator felhasználó jelszava

Másoljuk a /var/lib/samba/private/krb5.conf állományt az /etc könyvtárba:

cp /var/lib/samba/private/krb5.conf /etc/

Beállítás nem szükséges; a fenti nevekkel így néz ki a tartalma:

[libdefaults]
default_realm = ZOLD.LAN
dns_lookup_realm = false
dns_lookup_kdc = true

A default_realm meg kell egyezzen a Samba tartománynévvel.

Állítsuk le a smbd nmbd és winbind démonokat, és tiltsuk le az elindulásokat:

systemctl stop smbd nmbd winbind
systemctl disable smbd nmbd winbind

Maszkoljuk ki, indítsuk el és engedélyezzük a samba-ad-dc démont:

systemctl unmask samba-ad-dc
systemctl start samba-ad-dc
systemctl enable samba-ad-dc

DNS szerver

nano /etc/bind/named.conf

include "/var/lib/samba/bind-dns/named.conf";

Újraindítjuk a bind9-t:

systemctl restart bind9

Ellenőrzés

samba-tool domain level show

dig @localhost zold.lan

smbclient -L localhost -U%

smbclient //localhost/netlogon -UAdministrator%Titok12345 -c ls

DNS ellenőrzése

host -t A zold.lan
host -t SRV _ldap._tcp.zold.lan
host -t SRV _kerberos._udp.zold.lan

Kerberos ellenőrzése

kinit administrator

Felhasználó felvétele

samba-tool user create janos

samba-tool user list

Windows kliens csatlakoztatása

DNS szervernek meg kell adni tartományvezérlőt.

Az smb01 tartományhoz csatlakozunk.

Függelék

Dinamikus DNS frissítés

A dinamikus DNS frissítés esetén, ha egy gépet csatlakoztatunk a tartományhoz, az új gépnév automatikusan bekerül a BIND DNS szerver zónájába.

Ha szeretnénk dinamikus DNS frissítést, szerkesszük a Debian10 alatt a /etc/bind/named.conf.options állományt:

nano /etc/bind/named/conf.options

A végére tegyük be:

options {
[...]
tkey-gssapi-keytab "/usr/local/samba/bind-dns/dns.keytab";
minimal-responses yes;
};

Indítsuk újra a DNS szervert.

systemctl restart bind9

Ha nem Debian Linuxon végezzük a beállítást, a bind-dns könyvtár helyett a private könyvtár kellhet: /usr/local/samba/private/dns.keytab.