- Instalacja serwera DNS bind9
Pakiety bind9 są
dostępne w repozytoriach, jednak nie sprawdzają się one we współpracy z kontrolerem
domeny samba4. Trzeba więc zainstalować serwer poprzez pobranie odpowiedniej
paczki. Wykonujemy kolejno następujące polecenia:
# wget
ftp://ftp.isc.org/isc/bind9/9.8.1-P1/bind-9.8.1-P1.tar.gz
← pobieramy paczkę (wersja 9.8.1 jest najlepiej opisana we współpracy z sambą4)
# tar -zxvf
bind-9.8.1-P1.tar.gz ← rozpakowujemy
archiwum
# cd
bind-9.8.1-P1 ← wchodzimy do katalogu
Dokonujemy instalacji:
# ./configure --with-gssapi=/usr/include/gssapi --with-dlopen=yes
# make
# make installWychodzimy z katalogu:
# cd ..
- Instalacja pakietu samba4
Instalacji serwera
dokonamy przez pobranie najnowszej paczki z serwera ftp samby (dokładnie
w dniu powstania pierwszej wersji artykułu została wydana wersja stabilna
4.0.4).
# wget
http://ftp.samba.org/pub/samba/samba-4.0.4.tar.gz
# tar –zxvf samba-4.0.4.tar.gz
# cd samba-4.0.4
# ./configure --enable-selftest
# make
# make install - Promowanie kontrolera domeny (provisioning)
Jest to
najważniejszy punkt programu. W tym miejscu potwierdzamy nazwę domeny, nazwę,
po której będzie znajdowana w sieci, hasło administratora domeny oraz rolę
serwera.
# /usr/local/samba/bin/samba-tool domain
provision --realm=domena.local --domain=DOMENA --adminpass T@jn3_hasl0
--server-role=dc --dns-backend=BIND9_DLZ
- Podstawowa konfiguracja serwera DNS bind9 do współpracy z kontrolerem domeny
Serwer DNS jest już
zainstalowany jednak jeszcze nie jest skonfigurowany. W skrócie wygląda to tak,
że do instalacji samby potrzebny jest zainstalowany bind a do konfiguracji
binda jest potrzebna zainstalowana samba.
a.
Utworzenie klucza potrzebnego do pracy
serwera DNS:
# rndc-confgen -a -r /dev/urandom
Powinniśmy otrzymać komunikat zwrotny
wrote key file “/etc/rndc.key”
b.
Utworzenie i edycja pliku konfiguracyjnego wg wzoru:
mcedit /etc/named.conf
Trzeba zwrócić
uwagę na linijkę forwarders. Po
uruchomieniu serwera będą rozpoznawane nazwy komputerów w domenie. W razie
problemów z rozpoznawaniem innych nazw (np. adresów internetowych) w nawiasach klamrowych
wpisujemy adresy IP pozostałych serwerów DNS, do których mamy dostęp. Mogą to
być adresy dostarczone przez naszego dostawcę Internetu.
Poprawność
powyższego pliku sprawdzamy poleceniem #
/usr/local/sbin/named-checkconf
Jeśli nic się nie
wyświetli to znaczy, że jest dobrze :)
c.
Edycja pliku /etc/resolv.conf
W tym momencie plik zawiera adres serwera DNS
ustawiony automatycznie przez bramę (router). Ten sam adres powinien znaleźć
się w linijce forwarders pliku
/etc/named.conf.
Zapis ten zmieniamy, gdyż chcemy, aby głównym serwerem DNS był serwer,
na którym pracujemy. Dodatkowo w pliku powinien znaleźć się wpis informujący
serwer, że w pierwszej kolejności powinien szukać nazw w domenie:
Plik edytujemy
poleceniem # mcedit /etc/resolv.conf
Po tej zmianie przestanie działać pingowanie adresów internetowych.- Konfiguracja protokołu Kerberos
Jest to ostatni
krok przed odpaleniem domeny, jej kontrolera i serwera DNS. Kerberos jest już
zainstalowany, jednak wymaga konfiguracji. Należy wyedytować plik
/etc/krb5.conf i umieścić w nim następującą treść (tylko tyle wystarczy aby
wszystko poprawnie działało, całą resztę można usunąć):
[libdefaults]
default_realm = DOMENA.LOCALdns_lookup_realm = false
dns_lookup_kdc = true
- Uruchomienie serwera DNS i kontrolera domeny
Najpierw
uruchamiamy serwer DNS poprzez polecenie:
# /usr/local/sbin/named -4 –c /etc/named.conf
Od teraz pingowanie
adresów internetowych powinno wrócić do normy.
Serwer samba4
odpalamy poleceniem:
#
/usr/local/samba/sbin/samba
W zasadzie raz
zainstalowany serwer powinien działać nieskończenie długo J
Dla serwerów linuksowych jest to wykonalne. Gdyby jednak zaszła konieczność
jego ponownego uruchomienia, sambę i binda odpala się zawsze tymi poleceniami
co powyżej.
Można sobie
ułatwić, dodając powyższe polecenia do pliku /etc/rc.local. Wówczas oba serwery
będę się uruchamiać przy starcie systemu:
- Sprawdzenie poprawności działania wszystkich usług
To czy dane usługi
są uruchomione sprawdzamy poleceniami:
oraz
Poprawność
działania serwera sprawdzamy poleceniem:
# /usr/local/samba/bin/smbclient –L localhost –U%
Poprawność
współdziałania samby binda i Kerberosa sprawdzamy poleceniem:
# kinit administrator
Sprawdzamy jeszcze
czy serwer DNS poprawnie rozpoznaje adres kontrolera domeny:
Instalacja i konfiguracja domeny i kontrolera
domeny dobiegły końca :)
Część I
Część II
Część III
Część V
Część VI
Część I
Część II
Część III
Część V
Część VI
5 komentarzy:
Samba zmieniła hierarchię katalogów na ftp. Teraz, by pobrać wersję, która opisywana jest w artykule należy skorzystać z adresu:
http://ftp.samba.org/pub/samba/stable/samba-4.0.4.tar.gz
Słuszna uwaga, dzięki. Najnowsza wersja Samby to 4.0.9. Jest też nowy Debian, więc niedługo aktualizacja bloga.
Witam!
Usiłuję właśnie uruchomić taki serwer domeny Samba4, ale napotkałem problem podczas wykonywania komendy:
/usr/local/samba/bin/samba-tool domain provision --realm=domena.local --domain=DOMENA --adminpass T@jn3_hasl0 --server-role=dc --dns-backend=BIND9_DLZ
Oczywiście za T@jn3_hasl0 wstawiłem swoje hasło root'a, za domena swoją nazwę domeny, reszta w sumie bez zmian. Postępowałem krok po kroku tak jak w poradniku, tylko instalację Bind9 zignorowałem, gdyż domyślnie dostępną w instalatorze miałem wersję BIND9 9.8.0.
Podczas wykonywania powyższego polecenia otrzymuję taki oto log:
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
ldb: module schema_load initialization failed : No such object
ldb: module rootdse initialization failed : No such object
ldb: module samba_dsdb initialization failed : No such object
ldb: Unable to load modules for /usr/local/samba/private/sam.ldb: (null)
samdb_connect failed
VFS connect failed!
ERROR(): Provision failed - ProvisioningError: Your filesystem or build does not support posix ACLs, which s3fs requires. Try the mounting the filesystem with the 'acl' option.
File "/usr/local/samba/lib/python2.7/site-packages/samba/netcmd/domain.py", line 398, in run
use_rfc2307=use_rfc2307, skip_sysvolacl=False)
File "/usr/local/samba/lib/python2.7/site-packages/samba/provision/__init__.py", line 2052, in provision
raise ProvisioningError("Your filesystem or build does not support posix ACLs, which s3fs requires. Try the mounting the filesystem with the 'acl' option.")
Z logu wynika, że nie ma ACL, itp. Pomimo, że dokonałem poprawnej modyfikacji fstab.
Czy może to być problemem, że robię to wszystko na partycjach ext4, a nie jak w przykładzie na ext3?
Czy może chodzi tu o brak pliku: /usr/local/samba/private/dns.keytab ?
W pliku /etc/named.conf podawana była taka ścieżka, ale przeglądając system plików nie odnalazłem takiego pliku.
Pozdrawiam,
Adrian
Dodam, że mój wpis w fstab wygląda tak:
UUID=2e41313d-69cc-41bf-92df-c92d0b98d5cf / ext4 errors=remount-ro,user_xattr,acl,barrier=1 1 1
Witam,
Nie ma różnicy ext3 czy ext4. Czy po modyfikacji fstab zrobiłeś restart lub zastosowałeś polecenie
# mount -o remount /
?? Spróbuj wykonać powyższą komendę i ponownie uruchomić promowanie domeny.
Natomiast z bindem trzeba uważać. Zła konfiguracja uniemożliwi komunikację w domenie. Plik /usr/local/samba/private/dns.keytab może się pojawić po poprawnym wypromowaniu domeny.
W ogóle to polecam uzupełnioną wersję przewodnika: http://jedenserwer.blogspot.com/2013/09/active-directory-na-linuxie-kompletny.html
Pozdrawiam,
Zbyszek
Prześlij komentarz