Domeenikontrolleri seadistamine Samba4 näitel09. May '15
Sissejuhatus
Domeenikontroller pakub kohtvõrgule mitmeid võtmeteenuseid: keskne autentmine, nimeserveri teenus, Windows tööjaamade keskne haldus ja paljugi muud 1.
Domeenikontrolleri pakutavatest teenustest annab ülevaate tüüpiline pordiskäneering, mis näeb välja järgnev:
53/tcp open domain # DNS nimelahendus
53/udp open domain
88/tcp open kerberos-sec # Autentimine Kerberosega
88/udp open kerberos-sec
135/tcp open msrpc # NetBIOS, nimelahendus vanadele Windowsi tööjaamadele
139/tcp open netbios-ssn
389/tcp open ldap # LDAP kasutajakontode ja masinate kohta info pärimiseks
389/udp open ldap # LDAP Search over UDP
445/tcp open microsoft-ds # NetBIOS over TCP, Samba failiserver jms
464/tcp open kpasswd5 # Kerberos paroolivahetus
464/udp open kpasswd5
636/tcp open ldapssl # LDAPS ehk LDAP üle TLS-i
1024/tcp open kdm # AD RPC päringud a'la domeeni liitmine
3268/tcp open globalcatLDAP # Global Catalog üle LDAP-i
3269/tcp open globalcatLDAPssl # Global Catalog üle LDAPS-i
Käesolev juhend eeldab, et masinasse on paigaldatud Ubuntu 14.04 LTS või Debian 8 jessie ning et IP-aadressid on staatiliselt seadistatud.
Paigaldus
Samba4 paigaldamiseks piisab sel juhul:
apt-get install samba \
samba-vfs-modules smbclient \
winbind krb5-user ldap-utils
Eemalda eelnev Samba seadistuste fail:
rm -fv /etc/samba/smb.conf
Samba seadistamine koos RFC2307 attribuutidega, sisse-ehitatud nimeserveriga domeenikontrolleriks:
samba-tool domain provision \
--use-rfc2307 \
--server-role=dc \
--domain=MATI \
--realm=MATI.LAN \
--host-name=dc1
Important
Oluline on märkida realm läbiva suurtähtega!
Veendu et /etc/hostname failis oleks ülal seadistatud masinanimi, antud juhul dc1.
See käsk loob ka Kerberose võtmejaotuskeskuse seadistuste, mille võib otse linkida /etc/krb5.conf alla:
rm -fv /etc/krb5.conf
ln -s /var/lib/samba/private/krb5.conf /etc/krb5.conf
Siinkohal domain MATI viitab NetBIOS töögrupile, mis enam tänapäeval pole nii oluline. Palju rohkem huvipakkuvam on Kerberose realm MATI.LAN millest saab samaaegselt mati.lan DNS domeeni suffiks.
Domeenikontrolleri paigaldamisel luuakse ka Administrator konto ning kuvatakse parool selle konto jaoks, kui konto parool kaduma peaks minema saab parooli lähtestada nii:
samba-tool user setpassword administrator
Ilmselt võib ka parooli aegumised keelata:
samba-tool domain passwordsettings set --max-pwd-age=0
samba-tool domain passwordsettings set --min-pwd-age=0
Failis /etc/samba/smb.conf täpsusta upstream DNS serverid millele päringuid edastada:
[global]
# ...
# ...
dns forwarder = 8.8.8.8
# ...
# ...
Lõpuks (taas)käivita teenused:
service smbd stop
service nmbd stop
service samba-ad-dc stop
service samba-ad-dc start
Veendu et samba, smbd ja winbind protsessid töötavad:
pgrep -a samba # LDAP, Kerberos, DNS
pgrep -a smbd # SMB/CIFS failiserver
pgrep -a winbind # UID/SID mapping
Vaata et samba protsess
netstat -lntup
OpenWrt marsruuteri seadistamine
Kui marsruuterit pole seni ümber seadistatud pakutakse DHCP-ga nimeserveriks samuti marsruuterit ennast. Selleks, et kogu kooslus hakkaks nimeserveriga õigesti toimima tuleb marsruuteri DHCP server ümber seadistada pakkuma primaarse domeenikontrolleri kui ka sekundaarse domeenikontrolleri IP aadresse.
OpenWrt puhul ava veebiliides ning leia peamenüü Network alt võrguliideste nimistu Interfaces:
Vali kohtvõrgule vastav võrguliides LAN ning klõpsa nupul Edit:
Keri allapoole ning leia DHCP Server sektsioonist Advanced Settings alt DHCP-options nimistu. Sisesta 6,192.168.1.2,192.168.1.3 asendades 192.168.1.2 ning 192.168.1.3 oma primaarse ja sekundaarse domeenikontrolleri IP-aadressidega.
Salvesta muudatused klõpsates nupul Save. Seejärel vali peamenüü Network alt DHCP-serveri seaded DHCP and DNS:
korrigeeri Local server ning Local domain välju vastavalt oma domeeni suffiksile:
Muudatuste salvestamiseks ja rakendamiseks klõpsa Save & Apply. DHCP-ga IP saanud masinates küsi uued seadistused.
Debian marsruuteri seadistamine
Juhul kui marsruuteriks on hoopiski Debian koos tavalise dnsmasq teenusega, lisa lihtsalt konfiguratsioonifaili lõppu:
# Paku DHCP-ga õiget domeeni suffiksit
domain=mati.lan
# Paku DHCP-ga DNS serveriteks domeenikontrollereid
dhcp-option=option:dns-server,192.168.1.2,192.168.1.3
Seejärel taaskäivita teenus:
service dnsmasq restart
Lisaks korrigeeri /etc/resolv.conf sisu:
search mati.lan
domain mati.lan
nameserver 192.168.1.2
nameserver 192.168.1.3
Asenda näidetes olev 192.168.1.2 ja 192.168.1.3 oma domeenikontrolleri IP aadressidega.
Replikatsioon
Täiendav domeenikontroller paigalda eraldi masinasse. Operatsioonisüsteemina võid kasutada nagu ikka Debiani.
Seejärel paigalda Samba vahendid:
apt-get install samba samba-vfs-modules krb5-user libsasl2-modules-gssapi-mit
Eemalda eelnev Samba konfiguratsioon:
rm -fv /etc/samba/smb.conf
Liida masin domeeni sekundaarse domeenikontrollerina:
samba-tool domain join mati.lan DC -Uadministrator --realm=MATI.LAN
BIND9 seadistamine
Vaikimisi samba-tool seadistab domeenikontrolleri koos sisse-ehitatud DNS serveriga. Kui on huvi panna BIND9 nimeserver kasutama Samba andmebaasi tsoone siis see on võimalik üsna hõlpsalt vastava nimelahenduse tagarakendiga 2. Kui tegu on sekundaarse domeenikontrolleriga, tuleks see käima lasta korraks sisemise DNS lahendajaga, enne kui BIND9 tagarakend sisse lülitatakse.
Esmalt paigalda BIND9:
apt-get install bind9
Loo /etc/bind/named.conf:
dlz "AD DNS Zone" {
database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_9.so";
};
options {
auth-nxdomain yes;
directory "/var/named";
notify no;
empty-zones-enable no;
allow-query {
0.0.0.0/0;
# Lisa võrgud kust lubatakse pärida sisevõrgu DNS kirjeid
};
allow-recursion {
127.0.0.1;
192.168.110.0/24;
# Kindlasti MITTE lisada 0.0.0.0/0;
};
forwarders {
# Upstream DNS servers
8.8.8.8;
8.8.4.4;
};
allow-transfer {
# this config is for a single master DNS server
none;
};
};
# Root servers (required zone for recursive queries)
zone "." {
type hint;
file "named.root";
};
# Required localhost forward-/reverse zones
zone "localhost" {
type master;
file "master/localhost.zone";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "master/0.0.127.zone";
};
Loo /var/named kui seda pole veel juba tehtud:
mkdir -p /var/named/master
Laadi alla DNS juurserverite nimistu:
curl http://www.internic.net/domain/named.root > /var/named/named.root
Loo loopback tsoonid failis /var/named/master/localhost.zone:
$TTL 3D
$ORIGIN localhost.
@ 1D IN SOA @ root (
2013050101 ; serial
8H ; refresh
2H ; retry
4W ; expiry
1D ; minimum
)
@ IN NS @
IN A 127.0.0.1
Ning reverse DNS kirjed /var/named/master/0.0.127.zone:
$TTL 3D
@ IN SOA localhost. root.localhost. (
2013050101 ; Serial
8H ; Refresh
2H ; Retry
4W ; Expire
1D ; Minimum TTL
)
IN NS localhost.
1 IN PTR localhost.
Korrigeeri failiõigusi:
find -type d /var/named -exec chmod 750 {} \;
find -type f /var/named -exec chmod 640 {} \;
chown root:bind -R /var/named
Seadista domeenikontroller ringi:
samba_upgradedns --dns-backend=BIND9_DLZ
Failis /etc/samba/smb.conf lülita välja dns teenus:
[global]
# ...
# ...
server services = ..., -dns
# ...
# ...
Lõpuks (taas)käivita teenused:
service smbd stop
service nmbd stop
service samba-ad-dc stop
service samba-ad-dc start
service bind9 stop
service bind9 start