Jak wybrać klienta Mac VPN dla bramy, którą już posiadasz
SSL VPN to rodzina produktów, a nie jeden protokół. Zapytaj właściciela bramy o klienta, profil i metodę logowania, a następnie sprawdź trasy i DNS na komputerze Mac.
Na stronie pobierania pojawia się sześć aplikacji dla komputerów Mac VPN i żadna z nich nie informuje, która z nich zostanie zaakceptowana przez bramkę pracodawcy. To nie jest luka w sklepie; jest to luka w przekazaniu. SSL VPN to rodzina produktów, a nie protokół, więc dwie bramy z identycznymi ekranami logowania mogą wymagać różnych klientów. Oto kolejność, jaką stosuję, gdy ktoś wręcza mi komputer Mac i adres serwera: ustal, co mówi brama, wybierz pasującego klienta, a następnie sprawdź trasy i DNS, zanim zaufasz tunelowi.
Zacznij od bramy, a nie sklepu z aplikacjami
Aplikacja działa na Twoim Macu, ale coś innego musi zaakceptować połączenie i udzielić dostępu: bramka z operatorem, adres, kompatybilne ustawienia i sposób autoryzacji. Darmowy klient może być dobrym oprogramowaniem i nadal nie zapewniać żadnej z tych rzeczy. Dostęp do pracy, brama domowa i wyjście do komercyjnego Internetu to trzy różne punkty początkowe, które tak się składa, że dzielą stronę pobierania.
Przed instalacją lub wymianą czegokolwiek uzyskaj cztery odpowiedzi od osoby obsługującej usługę:
Tryb dostępu: portal przeglądarki, dostęp do wybranej aplikacji lub pełny tunel sieciowy. To decyduje o tym, czy w ogóle potrzebujesz klienta.
Rodzina bramek i obsługiwane wersje: produkt, włączona usługa i wersja klienta, która nadal obsługuje kompilację macOS i sprzęt Mac.
Uwierzytelnianie: hasło plus MFA, logowanie do przeglądarki, certyfikat urządzenia lub kontrola postawy. Klient, który nie ma zatwierdzonego przepływu, połączy się, a następnie zostanie odrzucony.
Własność: zaufane źródło pobierania lub zarządzania, zamierzony profil i osoba obsługująca go w przypadku awarii.
Własność to rzecz, którą ludzie pomijają. Na zarządzanym komputerze Mac profil często przechodzi przez system zarządzania organizacją, a ręcznie zbudowaną konfigurację można zastąpić przy następnym logowaniu. Zanim zaczniesz szukać aplikacji innej firmy, zapytaj, czy masz coś zainstalować samodzielnie.
SSL VPN to etykieta rodzinna, a nie protokół
TLS może chronić połączenie, podczas gdy specyficzna dla produktu wymiana wewnątrz niego obsługuje logowanie, przydzielanie sesji i ruch tunelowy. Klient musi wdrożyć tę wewnętrzną wymianę. Przeglądarka docierająca do strony logowania bramki HTTPS potwierdza łańcuch certyfikatów i serwer WWW; nie dowodzi, że niepowiązana aplikacja VPN może zbudować tunel do tej samej maszyny.
OpenConnect to najjaśniejsza ilustracja, jaką znam. Jego dokumentacja wstępna wymienia oddzielne tryby protokołów dla różnych rodzin bram i oddziela interoperacyjność od oficjalnego wsparcia dostawcy. Gdyby każdy SSL VPN mówił jednym protokołem, te tryby byłyby niepotrzebne.
Profil OpenVPN ma te same ograniczenia w drugą stronę: jest to format importu dla wdrożenia zgodnego z OpenVPN. Udostępnienie TLS jako elementu składowego nie powoduje przekształcenia go w plik konfiguracyjny dowolnej bramy korporacyjnej. Właśnie dlatego działające logowanie do przeglądarki jest fałszywym alarmem: dostęp do portalu może się powieść, nawet jeśli nie istnieje żaden tunel, a tunel, który się pojawi, może zostać odrzucony w wyniku późniejszej kontroli postawy.
Dopasuj klienta do tego, co mówi brama
Kiedy już znana jest rodzina, wybór szybko się zawęża. To jest mapowanie, które sprawdzam w pierwszej kolejności, a ostatnia kolumna ma większe znaczenie niż jakakolwiek ocena aplikacji.
| Rodzina bramek | Klient na macOS | Co obejrzeć |
|---|---|---|
| IKEv2/IPsec, neutralny dla dostawcy | Wbudowany klient macOS z profilem .mobileconfig | Tożsamość serwera i profil, którym można zarządzać |
| OpenVPN 2.x | Tunnelblick lub wiersz poleceń openvpn | .ovpn plus dane uwierzytelniające; klient nie świadczy żadnej usługi |
| WireGuard | Oficjalny klient WireGuard lub wireguard-tools | Konfiguracja równorzędna; wg show widoczność różni się w zależności od klienta |
| Dostawca SSL VPN (AnyConnect, Pulse, GlobalProtect, F5, Fortinet) | Klient dostawcy lub OpenConnect z jawnym --protokołem | Nieobsługiwane kombinacje, MFA i kontrole postawy |
| Tylko portal przeglądarki | Brak klienta | Dostęp do aplikacji nie jest tunelem sieciowym |
Dwa rzędy zasługują na ostrzeżenie. Wbudowany klient macOS to prawdziwa implementacja IKEv2, a nie ogólny klient SSL VPN: zaprojektowana dla niego usługa wymaga prawidłowego profilu, oczekiwanej tożsamości serwera i poświadczeń, a na zarządzanej maszynie profil ten może zostać zablokowany. OpenConnect obejmuje kilka protokołów dostawców w jednym pliku binarnym, ale jego własny projekt nie wymaga wsparcia dostawcy; skanowanie hosta, zasady podziału tunelu przesyłane przez bramę lub określony przepływ SSO mogą istnieć tylko w kliencie dostawcy.
WireGuard ma ten sam kształt. Usługa dostarcza peery, klient dostarcza tunel, a profil OpenVPN nie zastępuje. Jedna zmarszczka macOS: klient App Store zatrzymuje swoje tunele w środku Network Extension, więc wg show z narzędzi Homebrew nie może nic raportować, dopóki interfejs jest włączony. Zamiast tego sprawdzaj trasy i ruch na drogach.
Skonfiguruj, a następnie zweryfikuj w ustalonej kolejności
Zainstaluj jednego klienta i jeden profil i zanotuj, co zmieniłeś. Przed połączeniem przechwyć linię bazową, aby móc stwierdzić, co zmienia tunel:
scutil --nc list
networksetup -listallnetworkservices
netstat -rn | grep -E "^default|utun"
scutil --dns
Połącz się z dostarczonym profilem i powtórz te same polecenia. W przypadku pełnego tunelu trasa domyślna powinna wskazywać na interfejs utun; w przypadku tunelowania dzielonego powinny być kierowane tylko prefiksy wewnętrzne, a wyjście publiczne powinno wyglądać niezmienione. DNS to połowa, która zwykle pozostaje uszkodzona: scutil --dns wyświetla listę programów tłumaczących w kolejności, w jakiej system ich użyje, a wewnętrzny program tłumaczący znajdujący się pod publicznym, wyśle nazwy wewnętrzne do niewłaściwego serwera.
W przypadku usługi OpenVPN Tunnelblick jest rozsądnym, bezpłatnym klientem, a jego własny przewodnik mówi bezpośrednio o brakującej połowie: nie świadczy usługi VPN. Kliknij dwukrotnie otrzymany .ovpn, pozwól Tunnelblick go zainstalować i porównaj wydanie z wersją macOS, zanim na nim zaczniesz polegać.
W przypadku bramy dostawcy często testuję za pomocą OpenConnect z wiersza poleceń:
brew install openconnect
sudo openconnect --protocol=anyconnect --user=you vpn.example.com
Narzędzie drukuje otrzymany certyfikat i czeka, zanim zaufa nieznanemu łańcuchowi; ten monit jest funkcją i przypinanie za pomocą --servercert pin-sha256:... jest lepsze niż zaakceptowanie ostrzeżenia, którego nie przeczytałeś. Ctrl-C niszczy tunel, ponieważ otwarte połączenie na pierwszym planie nie ma wyłącznika awaryjnego ani logiki ponownego łączenia. Jest to w porządku na sesję diagnostyczną i kiepskie ustawienie domyślne do codziennej pracy.
Gdy nie ma pasującej bramy
Niektórzy ludzie przychodzą z odwrotnym problemem: brak operatora, brak adresu, brak usługi. Bezpłatna aplikacja na komputer Mac nie może zapewnić dostępności połączeń przychodzących na routerze domowym. Jeśli chcesz mieć własną sieć w hotelu, ktoś musi uruchomić bramę w domu, aktualizować ją, publikować lub rozwiązywać jej adresy i decydować, które urządzenia będą osiągalne.
Jeżeli zamiast dostępu do sieci prywatnej zależy Ci na innym wyjściu z Internetu, wybierz usługę przed klientem. Pusta lista profili w samodzielnym kliencie często nie jest zerwaną bezpłatną subskrypcją; może nie być subskrypcji ani podłączonego serwera. Oddziel także koszty: licencja klienta, plan serwisowy i bramka samoobsługowa to trzy różne zakupy.
Pracowniczy komputer Mac dodaje warstwę zasad. Bezpłatna aplikacja może się mylić nawet po nawiązaniu połączenia, ponieważ zatwierdzony klient może wymusić sprawdzanie urządzenia lub przepływ uwierzytelniania, którego brakuje alternatywnemu rozwiązaniu. Poproś o zatwierdzoną alternatywę zamiast kopiować dane uwierzytelniające między niepowiązanymi aplikacjami i nie traktuj wyłączania zabezpieczeń platformy jako poprawki zgodności.
Przeglądarka na zdalnym pulpicie to także inny produkt. Pokazuje sesję na innym komputerze; nie zapewnia lokalnym aplikacjom Mac ścieżki sieciowej udostępnianej przez tunel.
Krótka lista kontrolna przed pierwszą prawdziwą sesją
Nazwij na piśmie rodzinę bram i tryb dostępu, zainstaluj tylko klienta, który im odpowiada i zapisz używany profil. Następnie potwierdź trzy rzeczy na podstawie rzeczywistego ruchu: trasy zainstalowanego tunelu, kolejność mechanizmu rozpoznawania nazw i jedna aplikacja wewnętrzna, do której można uzyskać dostęp po nazwie, a nie po adresie IP.
Jeśli coś się nie powiedzie, zmieniaj po jednej zmiennej na raz: klient, profil, przepływ autoryzacji. Portal ładujący się, gdy tunel nie chce się uruchomić, oddziela problem serwera WWW od problemu ze zgodnością klienta. Gdy usługa pracy odpowie, a ścieżka publiczna będzie działać zgodnie z oczekiwaniami, zamiast stosu domysłów otrzymasz nazwaną, obsługiwaną aranżację.