Dwa wymagania zapisuje się jako jedno zdanie, a potem realizuje w zupełnie różnych miejscach. „Ta witryna ma być dostępna tylko przez VPN” to stwierdzenie o dopuszczeniu, a jego naturalnym domem jest sieć przed usługą. „Ten iPhone nigdy nie może kontaktować się z tą domeną bezpośrednio” to stwierdzenie o urządzeniu, a wyrazić je może tylko zarządzana polityka klienta. Zdecyduj, które z nich naprawdę masz, zanim otworzysz edytor profili.

Dwa wymagania, które brzmią identycznie

Weź przykładowy host records.corp.example. W przypadku dopuszczenia publikujesz go tylko pod adresy za VPN, więc bezpośrednia próba z telefonu w sieci komórkowej kończy się niepowodzeniem w sieci, podczas gdy to samo żądanie przez tunel udaje się i nadal wymaga prawdziwego logowania do konta. W przypadku urządzenia telefon może dotrzeć do publicznego internetu, więc host jest rozwiązywany i odpowiada każdemu, a jedynym miejscem zatrzymania próby jest urządzenie. Usługa nie może egzekwować reguły wobec żądania, które nigdy do niej nie dociera.

Błędne odczytanie wymagania objawia się konkretnym wdrożeniem. Rekord pozostaje publiczny, operator wierzy, że VPN jest obowiązkowy, a audyt próby komórkowej pokazuje, że żądanie nigdy nie weszło do tunelu. W logach nic nie wygląda na zepsute, bo nic nie zostało zablokowane.

Czytaj akcje oceny dosłownie

Mechanizm na żądanie ma dwie odrębne warstwy akcji, a ich mieszanie powoduje większość zamieszania tutaj. Akcja reguły zewnętrznej decyduje, co dzieje się z tunelem, gdy reguła pasuje, a akcja oceny połączenia decyduje, co dzieje się z dopasowaniem nazwy hosta w regule oceny. Dokumentacja Never Connect firmy Apple opisuje tylko drugą warstwę.

LayerActionWhat it controls
Outer ruleconnectBring the tunnel up when the rule matches
Outer ruledisconnectTear the tunnel down when the rule matches
Outer ruleevaluateConnectionRun a hostname evaluation instead of acting directly
Outer ruleignoreLeave the current tunnel state alone
Connection evaluationconnectIfNeededStart the tunnel when the hostname cannot be resolved
Connection evaluationneverConnectDo not start the tunnel for that match

neverConnect to wartość najczęściej czytana błędnie, bo nazwa sugeruje blokadę. Steruje uruchomieniem tunelu dla pasującej nazwy hosta, a nie pozwoleniem telefonu na dotarcie do nazwy, więc wpis Never Connect nie jest blokadą domeny. Nazwanie go tak w dokumencie projektowym to sposób, w jaki wdrożenie zostaje zatwierdzone z granicą egzekwowania, której nie ma.

Gdy usługa jest twoja, egzekwuj na granicy

Ograniczanie dopuszczenia oznacza publikowanie nazwy tylko tam, gdzie ścieżka VPN może do niej dotrzeć, a następnie sprawdzenie, że zamierzona ścieżka działa, a inna nie. Obejmij każdy opublikowany rekord, obie rodziny adresów, jeśli je publikujesz, oraz każdą pośrednią lub alternatywną nazwę używaną przez aplikację. Stary CNAME wciąż wskazujący na publiczny moduł równoważenia obciążenia utrzymuje bezpośrednią ścieżkę przy życiu, niezależnie od tego, jak uporządkowany jest rekord główny.

To chroni usługę, a nie urządzenie. Nie powstrzymuje telefonu przed wysłaniem zapytania DNS ani aplikacji przed próbą. Jeśli te próby są dopuszczalne, egzekwowanie na granicy jest tańszym i trwalszym wyborem, bo obowiązuje każdego klienta, a nie tylko tych skonfigurowanych. Przetrwa też telefon, który nigdy nie został zarejestrowany.

Gdy telefon nie ma nawet próbować, potrzebna jest zarządzana polityka

Zatrzymanie próby wymaga obsługiwanej polityki egzekwowania obejmującej aplikację lub cele przed połączeniem, podczas awarii tunelu i po zmianie sieci. Poproś dostawcę VPN lub zarządzania urządzeniami o nazwanie tej polityki, wskazanie, czy wymaga zarządzania organizacyjnego, i opisanie, na co jeszcze wpływa. Tunel na aplikację plus reguła na żądanie to nie to samo, a skrót z ekranu głównego do połączenia też nie.

Przetestuj przypadek awarii, wyłączając tunel i obserwując, czy żądanie wychodzi. Jeśli wychodzi, granica, którą udokumentowałeś, nie jest granicą, którą wdrożyłeś.

Zdecyduj za pomocą trzech pytań

Po pierwsze, czy kontrolujesz usługę, czy tylko telefon? Po drugie, czy urządzenie może legalnie korzystać z publicznego internetu do wszystkiego innego? Po trzecie, czy telefon jest zarządzany i przez kogo? Posiadanie usługi plus zarządzanej floty oznacza, że dostępna jest dowolna warstwa, natomiast posiadanie tylko telefonu czyni politykę klienta jedyną opcją i musi być ona obsługiwana.

Odpowiedz na te trzy, zanim dotkniesz profilu. Wtedy konfiguracja przestaje być zgadywaniem, co oznacza pole wyboru o nazwie Never.

Powiązane artykuły