Centos: DNS i podpinanie własnej domeny

Autor: Arkadiusz Tobiasz 20 września 2011

Mając własny serwer VPS czy serwer dedykowany można rzecz jasna korzystać z jakiegoś panela, który załatwi kwestię dodawania skrzynek pocztowych, domen czy kont FTP. Jednak zazwyczaj takie panele kosztują, a te darmowe mogą wyrządzić więcej szkód niż pożytku. Wychodzę z założenia, że lepiej wszystko samemu skonfigurować, a dzisiaj opiszę w jaki sposób dodać własną domenę domenę tak, aby nasz system ją rozpoznawał.

Na początku sprawdzamy czy na naszym serwerze jest zainstalowany BIND.

1
rpm -qa bind*

Jeżeli go nie ma to go instalujemy:

1
yum inslall bind

Po instalacji możemy przejść do konfiguracji naszego serwera nazw. Edytujemy plik /etc/named.conf:

1
vi /etc/named.conf

Umieszczamy lokalizację, w której będziemy umieszczać pliki konfiguracyjne stref, czyli naszych domen. W naszym przypadku będzie to folder /var/named/:

1
2
3
options {
  directory "/var/named";
};

Następnie dodajemy strefę naszej domeny:

1
2
3
4
zone "domena.pl" in {
  type master;
  file "domena.pl"
};

W pierwszej linijce określamy nazwę naszej domeny, w tym wypadku jest to domena.pl. Druga linijka mówi nam i serwerowi, że jest to jego główna strefa. Możemy też użyć slave jeżeli dodajemy kolejną strefę i domena ta nie ma być główna dla naszego serwera. Trzecia linijka natomiast mówi nam jak nazywa się plik konfiguracyjny, w tym wypadku jest to domena.pl i powinien być umieszczony w katalogu /var/named/

Tworzymy zatem plik konfiguracyjny naszej domeny:

1
vi /var/named/domena.pl

o następującej zawartości:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$TTL    86400
@   IN  SOA ns2.domena.pl. admin.domena.pl. (
            2010062801  ; Serial
            10800   ; Refresh
            3600    ; Retry
            604800  ; Expire
            86400   ; Minimum
)
domena.pl. IN  NS  ns1.domena.pl.
domena.pl. IN  NS  ns2.domena.pl.
domena.pl.                    IN  A   192.168.1.100
ns1.domena.pl.                IN  A   192.168.1.100
ns2.domena.pl.                IN  A   192.168.1.100
mail.domena.pl.               IN  A   192.168.1.100
www.domena.pl.                IN  A   192.168.1.100
ftp.domena.pl.                IN  A   192.168.1.100
domena.pl.                    IN  MX 10 mail.domena.pl.

Kilka słów wyjaśnienia. Po pierwsze adres IP 192.168.1.100 powinieneś zamienić na adres IP swojego serwera. TTL mówi nam ile sekund ma ustawienia trzymać w pamięci cache serwera, w tym przypadku są to 24 godziny. IN to klasa, a SOA to typ rekordu.

ns2.domena.pl to nazwa serwera dns naszej domeny master, a admin.domena.pl to adres e-mail właściciela strefy (pierwsza kropka to @).

Serial – to numer seryjny naszej strefy, po jej wartości serwer rozpoznaje czy zaszły jakieś zmiany. Każda zmiana w konfiguracji strefy powinna powodować zmianę wartości tej zmiennej. Składa się z roku, miesiąca, dnia i numeru zmiany w formacie rrrrmmddxx, gdzie xx to numer zmiany
Refresh – informacja dla serwerów slave, co ile mają sprawdzać aktualność stref
Retry – czas w sekundach co jaki serwery zapasowe mają ponawiać próbę połączenia w przypadku braku dostępności serwera głównego
Expire – czas, po jakim serwery zapasowe uznają strefę za nie aktualną w razie brak możliwości połączenia z serwerem głównym
Minimum – czas, przez jaki serwery będą przechowywały wszelkie odpowiedzi

W kolejnych linijkach przyporządkowujemy domenom ich adresy IP, a w ostatniej serwer poczty.

Na końcu restartujemy nasz serwer DNS:

1
service named restart

Możemy sprawdzić czy poprawnie „tłumaczy” nasza domenę na adres IP naszego serwera:

1
nslookup domena.pl

Odpowiedz

 

Arkadiusz Tobiasz student Akademii Ekonomicznej im. Karola Adamieckiego w Katowicach na specjalnościach informatyka ekonomiczna oraz rachunkowość. Więcej...

jQuery Validation i funkcja remote

Jakiś czas temu zwrócił się do mnie użytkownik z problemem. Chodzi o to, że korzysta on z pluginu walidacji jQuery, […]

Zend Framework: integracja z Uploadify

W tym wpisie postaram się przedstawić Wam w jaki sposób zintegrować skrypt Uploadify z Zend Frameworkiem. Dzięki temu będziemy mogli […]

Javascript: Czasowe wyświetlanie reklamy

Czasami chcemy, aby na pewnym elemencie naszej strony wyświetlała się reklama przez jakiś czas, a następnie zniknęła. W tym wpisie […]

Linux: backup wszystkich baz danych MySQL

Swego czasu pisałem o tym jak z poziomu konsoli można szybko i przyjemnie zrobić backup bazy MySQL. Wszystko jest ładnie […]