Rozwiązanie społecznościowe

Zainstaluj Tailscale na CasaOS: aktualizacja samouczka z 2023 roku dotycząca bieżącej wersji Dockera

A very short September 2023 CasaOS post linking to an external Tailscale installation tutorial. The forum thread contains no technical steps itself, so current Tailscale Docker behavior is required to turn it into a safe long-lived setup page.

Post społeczności IceWhale z września 2023 roku zatytułowany „Jak zainstalować Tailscale w CasaOS” jest niezwykle krótki. Odsyła użytkowników do zewnętrznego poradnika i informuje, że Tailscale może zapewnić bezpieczny zdalny dostęp, ale treść forum nie zawiera rzeczywistych kroków instalacji, wersji obrazu, mapowania katalogu stanu ani konfiguracji uwierzytelniania.

Oznacza to, że długoterminowo dostępna strona nie powinna udawać, że stary post na forum zawiera kompletną, współczesną instrukcję. Najlepszym sposobem na jego zachowanie jest wyjaśnienie pierwotnego zastosowania w CasaOS i odtworzenie implementacji w oparciu o aktualny model Dockera dla Tailscale.

To historyczny post dotyczący CasaOS, a nie poradnik do ZimaOS

CasaOS i ZimaOS mają wspólną historię ekosystemu, ale nie są wymiennymi systemami operacyjnymi. Źródłowy post należy do kategorii CasaOS i pochodzi z 2023 roku, sprzed obecnych przepływów pracy ZimaOS związanych z aplikacjami niestandardowymi, YAML-em i trybem deweloperskim.

Jeśli systemem docelowym jest ZimaOS, skorzystaj ze strony dotyczącej Tailscale w ZimaOS. Jeśli docelowym systemem jest CasaOS uruchomiony na hoście z systemem Linux, opisane poniżej koncepcje Dockera pozostają aktualne.

Co Tailscale rozwiązuje w przypadku serwera CasaOS

Tailscale tworzy szyfrowaną prywatną sieć między zarejestrowanymi urządzeniami. Laptop lub telefon w tej samej sieci tailnet może połączyć się z serwerem CasaOS za pomocą jego adresu IP Tailscale lub nazwy MagicDNS, bez wystawiania panelu CasaOS bezpośrednio do publicznego internetu.

Różni się to od konwencjonalnego przekierowania portów: serwer inicjuje szyfrowane połączenie nakładkowe, a użytkownicy łączą się za pośrednictwem sieci tailnet.

Użyj utrzymywanego kontenera Tailscale

Tailscale udostępnia obecnie obraz kontenera tailscale/tailscale i dokumentuje obsługiwane zmienne środowiskowe dotyczące uwierzytelniania, nazwy hosta, stanu, tras, sieci w przestrzeni użytkownika oraz kontroli kondycji.

Zamiast nieoznaczonego fragmentu Compose innej firmy z 2023 roku zacznij od aktualnego, oficjalnego schematu wdrożenia Tailscale w Dockerze.

Zachowaj katalog stanu Tailscale

Najważniejszym współczesnym wymaganiem, którego brakuje w krótkim poście źródłowym, jest trwałe przechowywanie stanu. Kontener Docker może zostać odtworzony podczas aktualizacji lub zmian konfiguracji. Jeśli stan Tailscale istnieje wyłącznie wewnątrz usuwalnego kontenera, każde jego odtworzenie może spowodować zarejestrowanie nowego węzła.

Zmapuj katalog na hoście CasaOS lub wolumin Dockera na katalog skonfigurowany za pomocą TS_STATE_DIR. Pozwoli to zachować tożsamość maszyny, klucze i stan logowania po ponownym uruchomieniu.

Świadomie wybierz metodę uwierzytelniania

Kontener może dołączyć do sieci tailnet za pomocą klucza uwierzytelniającego lub interaktywnego procesu logowania, zależnie od wdrożenia. Klucze uwierzytelniające są danymi uwierzytelniającymi i nigdy nie należy kopiować ich ze zrzutów ekranu ani publicznie dostępnych plików Compose.

W przypadku stałego serwera unikaj efemerycznej rejestracji, chyba że celowo chcesz, aby maszyna znikała po przejściu w tryb offline.

Nie uwierzytelniaj ponownie trwałego węzła przy każdym uruchomieniu

Obecna wersja Tailscale obsługuje TS_AUTH_ONCE=true. Gdy stan jest już obecny, kontener może go ponownie wykorzystać zamiast wymuszać nową rejestrację przy każdym uruchomieniu.

Jest to szczególnie przydatne w przypadku serwera domowego, który ma pozostać tym samym węzłem przez wiele miesięcy lub lat.

Konfiguracja sieci zależy od tego, do czego chcesz uzyskać dostęp

Istnieje kilka prawidłowych sposobów projektowania kontenera Tailscale:

  • węzeł, który nadaje tożsamość wyłącznie samemu kontenerowi Tailscale;
  • węzeł zintegrowany z hostem, zapewniający dostęp do usług działających na hoście CasaOS;
  • router podsieci, który rozgłasza dostęp do innych urządzeń w sieci LAN;
  • układ sidecar lub proxy dla wybranych kontenerów.

Tryby te mają różne wymagania dotyczące możliwości i routingu. Nie dodawaj automatycznie trybu uprzywilejowanego ani szerokich uprawnień sieciowych. Postępuj zgodnie z aktualnym scenariuszem użycia Tailscale, którego rzeczywiście potrzebujesz.

Nie wystawiaj publicznie panelu CasaOS tylko dlatego, że potrzebujesz zdalnego dostępu

Wartość Tailscale polega na tym, że urządzenia zdalne mogą zachowywać się tak, jakby znajdowały się w prywatnej sieci razem z serwerem. W przypadku osobistej administracji zazwyczaj bezpieczniej jest pozostawić panel CasaOS dostępnym wyłącznie w sieci LAN i tailnet, zamiast publikować go pod publicznym adresem IP.

Przed aktualizacją przypnij wersje lub je sprawdź

Poradnik z 2023 roku mógł odwoływać się do konkretnego tagu obrazu lub pakietu ze sklepu z aplikacjami. Współczesne wdrożenia powinny sprawdzać zmiany w wydaniach i aktualizować je w sposób przemyślany. Trwałe przechowywanie stanu znacznie ułatwia wymianę kontenera, ponieważ tożsamość maszyny nie jest powiązana ze starą warstwą obrazu.

Najczęściej zadawane pytania dotyczące Tailscale w CasaOS

Czy oryginalny post IceWhale zawiera kompletną procedurę instalacji?

Nie. Treść forum głównie przedstawia zewnętrzny poradnik.

Jakiego obrazu kontenera powinno używać aktualne wdrożenie?

Tailscale utrzymuje oficjalny obraz tailscale/tailscale.

Jak zapobiec powstawaniu duplikatów węzłów po odtworzeniu kontenera?

Zachowaj katalog skonfigurowany przez TS_STATE_DIR i unikaj niepotrzebnego ponownego uwierzytelniania.

Czy ten artykuł potwierdza, że ZimaOS korzysta z takiej samej konfiguracji?

Nie. Źródło jest konkretnie historycznym postem dotyczącym CasaOS.