Komputery naszą pasją!

Linux, Poradniki

Debian serwer – konfiguracja DNS Linux

DebanSerwer-dns

Poznaliście już w jaki sposób skonfigurować DHCP i jak zarządzać serwerem opartym na Linuxie. W tym poradniku poznacie kolejny ważny aspekt, czyli DNS. Jest to system nazw domen, który tłumaczy adres IP na nazwy domen. Przykładowo, zamiast wpisywać adres IP danej strony w przeglądarce, to wpisujecie konkretną nazwę.

Jak zainstalować DNS w Linux?

Na początku musimy ustawić interfejsy sieciowe. Podczas instalacji DHCP już pokazywałem jak to zrobić. W skrócie, konfigurujemy plik /etc/network/interfaces. Po tym musimy zainstalować pakiet:

apt-get install bind9

Po instalacji musimy skonfigurować aż trzy pliki. Zaczniemy od pierwszego:

/etc/bind/named.conf.options

W nim znajdziemy to:

konfiguracja DNS

Na początku musimy określić na jakich adresach IP ma działać nasz DNS. Ja określę dwa, czyli IP serwera oraz pętli zwrotnej (127.0.0.1). Poniżej linijki directory „/var/cache/bind” wpisujemy:

listen-on: { 127.0.0.1; };
listen-on { 192.168.222.1; };
konfiguracja DNS

Następnie musimy odkomentować trzy linijki składające się na forwardes (usunąć „//”). Są to zapytania DNS, które są przesyłane dalej i znajdują się poza siecią. W nich należy wpisać jakiś zewnętrzny adres IP. Ja wpisze serwer google.

forwardes {
8.8.8.8;
8.8.4.4;
};

Po tym zapisujemy cały plik, który ma wyglądać tak:

instalacja DNS

Nie przejmujcie się czerwonym kolorem. Następnie edytujemy kolejny plik o nazwie:

/etc/bind/named.conf.local

W nim tworzymy definicję naszej strefy, czyli już konkretnej nazwy DNS. Musimy określić ścieżkę do pliku, w którym znajduje się skonfigurowana domena (później się nim zajmiemy). A więc piszemy:

zone "domena.local" {
type master;
file "/etc/bind/db.domena.local";
allow-update{none;};
notify yes;
};
konfiguracja DNS
  • zone – określa nazwę domeny
  • type – rodzaj strefy
  • file – plik z definicją strefy
  • allow-update – lista serwerów, które mogą aktualizować definicję strefy
  • notify – możliwość powiadamiania inne serwery o zmianach

Zapisujemy i przechodzimy do ostatniego pliku. Ale na początku musimy znaleźć tzw. domyślny plik db, który będziemy edytować do własnych potrzeb. Sprawdźmy jakie mamy do wyboru, używając polecenia ls:

ls /etc/bind
konfiguracja DNS

Widzimy plik o nazwie db.local. Nasza nazwa domenowa jest lokalna, więc jego właśnie użyjemy:

nano /etc/bind/db.local

Standardowy plik wygląda tak:

konfiguracja DNS

Tutaj musimy zmienić kilka rzeczy. Po pierwsze zamiast localhost wpisujemy naszą domenę:

konfiguracja DNS

Następnie dodajemy rekordy A oraz NS, gdzie wpisujemy nazwę domeny, a potem adres IP serwera:

@       IN    NS    ns1.domena.local.
ns1     IN    A     192.168.222.1
domena  IN    A     192.168.222.1
konfiguracja DNS

Później zapisujemy plik pod taką nazwą, jak wcześniej skonfigurowaliśmy. W moim przypadku był to db.domena.local.

konfiguracja DNS

Po wszystkim restartujemy usługę bind9 i sprawdzamy czy wszystko działa:

systemctl restart bind9
systemctl status bind9

Jak widać, u mnie DNS jest aktywny, a wszystkie strefy są załadowane. Jednak jeszcze nie wszystko będzie działało. Musimy dodatkowo dodać naszą domenę do pliku:

/etc/resolv.conf

Tam dodajemy dwie linijki z adresem IP i nazwą naszego serwera DNS:

domain domena.local
nameserver 192.168.222.1

W tym momencie możemy przetestować czy nasza domena działa:

konfiguracja DNS

Jak widać pingi przechodzą, czyli wszystko działa.

Dodanie DNS do serwera DHCP

Jednak to nie wszystko. Możemy dodać naszą domenę do plików DHCP. Dzięki temu u naszych klientów również będzie działała domena.local. W tym celu konfigurujemy plik:

/etc/dhcp/dhclient.conf

I szukamy linijki o nazwie prepend domain-name-servers i ustawiamy adres IP serwera:

Może okazać się, że to nie jest wszystko. Jeśli na stacji nie będzie nam działać domena, to postępujemy tak samo jak w przypadku serwera, czyli edytujemy pliki /etc/resolv.conf oraz /etc/dhcp/dhclient.conf.

U mnie domena zadziałała, więc wszystko jest w porządku. To wszystko w tym poradniku. Już wiecie bardzo dużo o konfigurowaniu serwera opartego na Linuxie. W następnych pokaże Wam jak stworzyć serwer plików oraz WWW.