TeamQuest Blog

Jak rutyna położyła domeny w firmie

Jak rutyna położyła domeny w firmie

Marcin Sarna , 24.11.2020 r.

Czyli hash zamiast średnika i problem gotowy.

Jak coś nie działa, to zacznij od sprawdzenia DNSów

To kolejna historia z gatunku „opowieści z informatycznej krypty”. Niejaki Hugo, w późnych latach 90-tych przekonał się, jak bolesna może być literówka. Nie pierwszy i nie ostatni. Okaże się, że prawidłowym rozwinięciem skrótu DNS jest raczej Devil’s Naming Service.

W tamtym czasie komercyjny Internet był optymistycznym spojrzeniem w przyszłość, a przerwy w dostawie oznaczały raczej brak prądu niż Sieci. Hugo był wówczas starszym administratorem w brytyjskim oddziale jednego z globalnych dostawców usług internetowych.

Brak automatyzacji sprzyja pomyłkom

Firma nie zainwestowała zbyt wiele w narzędzia i automatyzację, a wiele rozwiązań administratorzy wymyślali na bieżąco. Nie było żadnego portalu internetowego dla klientów i musieli wysłać e-mailem zgłoszenie na takie rzeczy, jak zmiany DNS, które zostały następnie wprowadzane przez dział obsługi klienta.

Szczęśliwsze i prostsze czasy. Aż do dnia, w którym Hugo przyszedł do pracy i nie poznał tego miejsca.

DNS był wyłączony dla każdego klienta, tak dla domeny podstawowej jak i dodatkowej. Brązowa materia naprawdę uderzyła w obracający się wentylator.

Vi ale nie jak „victory”

Hugo przystąpił do działania, ściągając logi serwera DNS i szybko znajdując błędy. Na początku nie miały żadnego sensu, dopiero potem zaczęło stopniowo narastać zrozumienie przyczyny problemu.

Niewiele pieniędzy włożonych w automatyzację właśnie się „zwróciło”. W tej ofierze skąpstwa na ołtarzu korporacyjnych korzyści znalazły się narzędzia do edycji DNS. Użyto kilku pomocniczych skryptów, które w zasadzie wywoływały Vi w celu edycji plików stref.

Wyjaśnijmy niektórym z naszych Czytelników, ze Vi jest czcigodnym (czytaj: starym) edytorem tekstu, uwielbianym przez administratorów Uniksa. Inni wolą Emacsa ale nie ciągnijmy dalej tego tematu.

Jeśli chodzi o skrypty, istniało kilka prostych szablonów pomagających w tworzeniu rekordu SOA ale nie dochodziło do faktycznej weryfikacji strefy. Nie było też historii zmian. Była tylko data i właściciel pliku.

Okazało się, że Hugo dokonał ostatniej edycji dwa tygodnie temu

Prawdopodobnie pracowałem nad skryptem perl lub bash i tego samego dnia zredagowałem plik strefy dla uk.bignet.net, który znajdował się w rekordzie SOA dla każdej hostowanej domeny.

Sprawdź oferty pracy na TeamQuest

W plikach strefy Bind znakiem komentarza jest średnik ale Hugo przypadkowo użył hasha, stosowanego właśnie w skryptach powłoki. Gdy Bind załadował plik strefy, zdecydował, że nie jest on już autorytatywny i zmiany pozostały niezauważone. Wszystko było w porządku, dopóki nie upłynęły domyślne dwa tygodnie życia. Ponieważ każda inna domena zależała od tej, jej wygaśnięcie oznaczało, że Bind przestał obsługiwać wszystkie inne domeny.

Wynik: chaos.

Poprawka była banalna. Hugo zmienił komentarz na średnik, pośpiesznie wypchnął aktualizację i zrestartował wszystkie serwery nazw.

Posłowie

Zadaniem Hugo stało się następnie, co nie było zaskakujące, stworzenie walidatora plików strefy DNS, aby zapobiec dalszym „wypadkom”. Zespół obsługi klienta nienawidził tego z powodów, których nie mogłem zrozumieć. Ale gdy uruchomiłem narzędzie sprawdzające we wszystkich hostowanych przez nas domenach to stwierdziłem, że około 15 procent z nich zawierało podstawowe błędy…

Najnowsze oferty pracy:

Polecane wpisy na blogu IT:

Szukasz pracownika IT?

Dostarczymy Ci najlepszych specjalistów z branży IT. Wyślij zapytanie

Wyrażam zgodę TeamQuest Sp. z o.o. na przetwarzanie moich danych osobowych w celu marketingu produktów i usług własnych TeamQuest, w tym na kontaktowanie się ze mną w formie połączenia telefonicznego lub środkami elektronicznymi.
Administratorem podanych przez Ciebie danych osobowych jest TeamQuest Sp. z o.o., z siedzibą w Warszawie (00-814), ul. Miedziana 3a/21, zwana dalej „Administratorem".
Jeśli masz jakiekolwiek pytania odnośnie przetwarzania przez nas Twoich danych, skontaktuj się z naszym Inspektorem Ochrony Danych (IOD). Do Twojej dyspozycji jest pod adresem e-mail: office@teamquest.pl.
W jakim celu i na jakiej podstawie będziemy wykorzystywać Twoje dane? Dowiedz się więcej