Hurricane Electric Free DNS – Moje odkrycie roku

W trakcie formatu mojego VPS’a (o którym pisałem w poprzednim poście) dotarło do mnie, że WordOps nie ogarnia DNS’ów. Nie był to dla mnie problem, bo korzystałem kiedyś z MaraDNS, który wg mnie jest o niebo bardziej czytelny i lepszy od rozpowszechnionego i antycznego Bind9 (mogę w sumie kiedyś o tym napisać więcej). Ale nie chciałem chyba się znowu pchać w utrzymywanie serwera DNS na własnym VPS’ie. Co prawda były tego zalety, ale nie po to przenosiłem się na WordOps, żeby teraz znowu dokładać sobie manualnej roboty. Przypomniałem sobie, że lata temu czytałem gdzieś, że ktoś gdzieś mówił, że amerykański dostawca Hurricane Electric, udostępnia darmowy serwer DNS. Wtedy z tego zrezygnowałem, bo wydawało mi się, że muszę przecież mieć serwer DNS lokalnie, ale dzisiaj dotarło do mnie, że no nie muszę. Postanowiłem więc przyjrzeć się niemu bliżej.

Na pierwszy rzut oka

Strona Hurricane Electric jest dość… niepozorna. Kojarzy się raczej z jakąś stroną nie zmienianą od 2001 roku.

Screenshot storny głównej he.net

Link do darmowego serwera DNS to po prawej „Free DNS” (zaznaczyłem na czerwono). Co ciekawe każda podstrona jest inna pod względem linków. Nawigacja po systemie jest dla mnie dość wymagająca, ale chyba powoli się przyzyczajam (no i porobiłem sobie zakładki, do tego czego potrzebuje 😉 ).

Polecam sobie poczytać „ficzery” jakie wspomniana usługa posiada:

  • Wsparcie zarówno dla zapytań przez IPv4 jak i natywnego IPv6.
  • Obsługa rekordów A, AAAA, ALIAS, CNAME, CAA, MX, NS, TXT, SRV, SSHFP, SPF, RP, NAPTR, HINFO, LOC i PTR
  • Jakiś tam „sprytny tryb” do ogarniania odwrotnej stref (reverse zones)
  • Wsparcie dla „slavów”.
  • Wiele formatów odwrotnych stref: Standard, RFC 4183, RFC 2317, DeGroot.
  • Odpytywanie geograficznie najbliższego serwera HE.
  • Sprawdzanie poprawności delegacji stref (w obie strony).
  • Podstawowe sprawdzanie składni rekordów.
  • Wiele domen dla jednego konta.

Jak na darmową obsługę, to muszę powiedzieć, że jestem w szoku. W dodatku 0 reklam na stronie.

Konto

Do korzystania z konta trzeba zarejestrowć darmowe konto. Niestety formularz rejestracyjny jest dość długi (trzeba podać wszystkie dane teleadresowe).

Widok prezentujący formularz rejestracji na he.net

Plusem jest to, że jedno konto gwarantuje nam dostęp do wszystkich usług HE.

Na pochwałę zasługuje możliwość włączenia uwierzytelnienia wieloskładnikowego (co z resztą czym prędzej uczyniłem).

Minusem jest to, że do każdej usługi musimy logować się osobno. Jest to zapewne związane z bezpieczeństwem. Podejrzewam, że twórcy używają ciasteczek do trzymania sesji, i nie chcieli używać wildcarda dla wszystkich subdomen *.he.net (co z resztą jest mądrym posunięciem). A tak to już jest, że najczęściej się wybiera: albo UX, albo security, albo ficzery.

Usługa

UI jest ponownie skromny, ale czytelny. Po lewej mamy to co zapewne najbardziej zainteresuje, a więc „Add a new domain”. Po kliknięciu pojawia się modal z polem do wpisania nazwy domeny. Przejście dalej spowoduje nie tylko dodanie domeny do naszej listy, ale także sprawdzenie czy na pewno domeny są skierowane na odpowiednie serwery he.net.

Widok prezentujący listę domen na dns.he.net

Po dodaniu pojawia nam się widok szczegółów domeny (ten sam jak byśmy kliknęli daną domenę na liście). Ponownie: widok jest prosty i czytelny. Przyciski w wierszu tuż nad tabelką pozwalają w bardzo szybko dodać nowe rekordy, których potrzebujemy. Skonfigurowanie wszystkich moich domen zajęło mi może 10 minut. Zero bawienia się z dokumentacją Bind9, itp.

Widok stonry dns.he.net, który prezentuje szczegóły domeny marverix.blog

Działa

DNSPerf dał he.net 41/71 pozycję w rankingu. Czy to daleko? Cóż, pewnie do takich gigantów jak Google czy CloudFlare. Ale za 0zł otrzymujemy dostęp do usługi, która z Europy odpowiada w 30ms (z mojego komputera 35ms), uptime 99.97% i prosty UI, bez reklam i pierdyliardem okienek do zamknięcia. Jasne, mógłbym pewnie zapłacić za utrzymanie na płatnym serwerze, ale czy ktoś zauważy różnicę? 35ms to naprawdę dla mnie niewiele (zwłaszcza, że DNSy są później cachowane lokalnie, więc to tylko za pierwszym razem dodatkowy czas).

Zrzut ze strony DNSPerf przedstawiającą wyniki testów wydajności dla he.net

Najfajniejsze dla mnie jest to, że to po prostu działa. Koniec z utrzymywaniem serwera u siebie. Koniec z bawieniem się w dodatkowe serwery mirrorowe.  Mi to totalnie wystarcza i nie zapowiada się, żebym w najbliższych latach zmieniał usługodawcę 🙂

Virtualmin? Nigdy więcej

Virtualmin to  panel administracyjny o otwartym źródle (ale istnieje też płatna wersja Pro), który ma być alternatywą chociażby dla cPanel’u czy Plesk’a. Zainstalowałem go 5 lat temu na swoim VPS’ie. Na początku zaimponował mi możliwościami i mnogością opcji.

Panel ma wbudowane mega dużo funkcji, które pozwalają za skonfigurowanie i zarządzanie swoim serwerem. Ale po czasie ta mnogość zaczęła mnie przytłaczać. Dlaczego? Bo jest rzucona użytkownikowi na twarz. UI jest stary i toporny (co prawda jest „nowa” wersja, ale umówmy się, że to taki bardziej 2013 niż 2021). Nauka gdzie jest jaka opcja zajęło mi trochę czasu.

Do tego UI’a można się przyzwyczaić. Mój VPS ma 4 wirtualne rdzenie i 8GB RAM’u. Ktoś powie, że mało jak na dzisiejsze czasy, ale ja powiem, że mi to wystarcza. Mimo tego, było gołym okiem widać jak Virtualmin kocha zasoby. Nic dziwnego – w końcu ten system robi tak dużo. Ale ponownie – jeżeli ktoś np. chce znaleźć darmowy system dla swojej startującej firmy hostingowej… no to ok. Podejrzewam, że będzie miał sprzęt lepszy niż mój.

Nie mam na to dowodu, ale nie grzebałem w konfiguracji manualnie. Wszystkimi konfiguracjami Apache’a, MySQL’a, PHP’a itp zarządzał on. Ale gdy odpalałem np. bloga mojej żony, to „strona potrafiła myśleć” najpierw 10 sekund zanim cokolwiek się otworzyło. Na wykresach Virtualmin’a było ewidentnie widać jakieś dziwne piki zużycia CPU. Po co? Dlaczego? Jak to zdebugować? Nie wiem. Wiem jedno – na moim hostingu na Linuxpl.com, gdzie nie miałem nawet pół rdzenia procesora, ta sama strona po prostu śmigała.

Ostatnio robiłem stronę radiodroga.net, i szukałem jakieś prostego panelu lub narzędzia, który szybko skonfiguruje za mnie Ngnix’a, PHP’a i inne takie. I tak natrafiłem w sieci na CLI WordOps. Zainstalowaliśmy. Instalacja i postawienie działającego WordPress’a trwało 5 minut, a może nawet mniej. Byłem w szoku. Szybko, bez zbędnego UI’a, który zżera zasoby. No i twórcy zarzekają się, że projekt jest „security-oriented”.

Postanowiłem spróbować u mnie. Zgodnie z instrukcją na stronie WordOps o migracji z innych serwerów (ale nie systemów!) zrobiłem backup baz WordPress’ów. Skopiowałem pliki. Sprawdziłem 5 razy czy wszystko mam i postanowiłem odinstalować Virtualmina… Na stronie panelu jest „jednolinijkowiec”, który (teoretycznie) robi deinstalację. Spróbowałem.

Gdy skrypt skończył, okazało się, że tak, odinstalował wszystkie swoje paczki, ale syf konfiguracyjny jaki po sobie pozostawił to była tragedia. Wszyscy użytkownicy i grupy? Zostawione (nawet „webmin” i „virtualmin”!). Usługi? Część wyłączona, a część nie. Konfiguracje usług? Zostawione. Efekt był taki, że WordOps nie mógł dobić się do MySQL’a (MariaDB).  Robiłem apt purge, szukałem na necie how-to, próbowałem wszystkiego. Nic. Jeden problem rozwiązywałem, pojawiał się kolejny i kolejny.

Usiadłem do tego o 21, bo miałem nadzieję, że w godzinę się uwinę. Od konsoli SSH do mojego VPS’a odszedłem zrezygnowany i załamany o 00:30. Odinstalowanie Virtualmin’a rozpierniczyło mojego VPS’a. Wyjście było jedno… format. Na szczęście w panelu klienta OVH to 3 kliknięcia.

Jako programista, oprogramowanie, które nie potrafi posprzątać po sobie, jest nic warte. Jeżeli umiesz napisać instalator, to napisz kuźwa porządny deinstalator. Zwłaszcza jeżeli chodzi o coś, co ma pracować na serwerach, które są gdzieś hen daleko i nie masz do niego fizycznego dostępu.

Moją przygodę z Virtualmin’em mogę porównać chyba jak do jakiegoś toksycznego związku. Gdy masz dość i ogłaszasz, że czas się rozejść, to druga połowa robi scenę i za karę demoluje ci mieszkanie.

Nigdy więcej. Nie polecam.