• Walidacja DNSSEC w Bind dla CentOS 5 i 6

    dodany przez Przemysław Sikora

    Niewiele mówi się o bezpieczeństwie serwerów DNS. Często porusza się tematy spamu i wirusów, a także różnego rodzaju włamań. Zapominamy o tym, jak łatwo przy pomocy odpowiednio “spreparowanej” odpowiedzi na zapytanie DNS, przekazać hakerom np. login i hasło do banku. Oczywiście można stwierdzić, że przecież jest SSL i “kłódeczka” w pasku przeglądarki. Jeśli nie wczytamy się głębiej w informacje o certyfikacie np. o odcisku SHA1 oraz MD5 i nie porównamy ich z tymi które na pewno widnieją w oryginalnym certyfikacie wystawionym dla banku, to nie możemy być w 100% bezpieczni. Z pomocą przychodzi nam DNSSEC (z ang. DNS Security Extensions), czyli rozszerzenie systemu DNS zapewniające ich uwierzytelnianie przy pomocy kryptografii asymetrycznej oraz podpisów cyfrowych. Poniżej przedstawię konfigurację Bind-a dla CentOS-a 5 i 6. Seria o niższym numerze posiada dosyć starą wersję wspomnianego serwera nazw (9.3.6). Posiada ona wsparcie dla DNSSEC, ale niepełne (bez obsługi NSEC w wersji 3) oraz bywa czasami problematyczne. Zalecana jest instalacja Bind-a 9.7, który znajduje się w domyślnych repozytoriach. Czym jest wspomniany NSEC? Jest to rekord DNS, którego użycie przynajmniej teoretycznie zapewnia spójność danych strefy. Czas wziąć się do roboty.

    yum install bind97 bind97-chroot bind97-utils

    Robimy to oczywiście po uprzedniej deinstalacji poprzedniej wersji Bind-a. Następnie edytujemy plik “named.conf” i dopisujemy w sekcji “options”:
    dnssec-enable yes;
    dnssec-validation yes;
    dnssec-lookaside auto;
    bindkeys-file "/etc/named.iscdlv.key";

    Zawartość pliku z kluczami (bindkeys-file) powinna zawierać oprócz domyślnego wpisu, także poniższy:
    . initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF
    FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX
    bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD
    X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz
    W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS
    Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq
    QxA+Uk1ihz0=";

    Wpis oczywiście wewnątrz sekcji “managed-keys”. Następnię restartujemy Bind-a i to wszystko. Nasz serwer jest w stanie weryfikować poprawność DNSSEC-a. Czas na CentOS-a 6 i Bind 9.8. Edytujemy plik “named.conf” i dodajemy w sekcji “options” następujący wpis:
    dnssec-enable yes;
    dnssec-validation auto;
    managed-keys-directory "/var/named/dynamic";

    Restartujemy Bind-a.

Dodaj komentarz

Warto odwiedzić
Valid XHTML 1.0 Transitional centos.com.pl- mapa strony