Brama Juniper lub Pulse: którego protokołu OpenConnect użyć
Flaga protokołu decyduje o wymianie podczas logowania. Porównaj obsługę Network Connect i Pulse, a następnie dopasuj klienta do tego, co brama faktycznie oferuje.
Wybór protokołu dla OpenConnect to ćwiczenie z dopasowania, a nie szukanie marki. Brama, która na stronie logowania mówi Juniper, może udostępniać Network Connect, Pulse lub oba, a domyślne ustawienie klienta nie jest żadnym z nich. Zgadywanie kosztuje nieudane logowanie i, co gorsza, wątek wsparcia obwiniający dane logowania o niezgodność protokołu. Potwierdź usługę, zanim wpiszesz nazwę hosta w profilu.
OpenConnect nazywa starszy protokół nc, a nowszy pulse, i oba żyją w tym samym pliku binarnym. Wybrana flaga zmienia wymianę podczas logowania, a nie trasowanie po udanym połączeniu.
Dwie nazwy protokołów dzielą jedną historię produktu
Network Connect firmy Juniper i późniejszy klient Pulse Secure to różne protokoły, które jedna rodzina urządzeń udostępniała z czasem. OpenConnect zyskał obsługę nc dla pierwszego i pulse dla drugiego. To osobne ścieżki kodu z osobnymi formatami żądań, więc obsługa jednego nic nie mówi o drugim.
Różnica jest widoczna od razu w rozmowie logowania: punkty końcowe, pola formularza i sposób, w jaki klient zgłasza odrzucony drugi czynnik, różnią się między oboma modułami obsługi.
Wybór w wierszu poleceń to zmiana jednego słowa: openconnect --protocol=nc vpn.example.com dla Network Connect lub openconnect --protocol=pulse vpn.example.com dla Pulse. Obie próby to prawdziwe próby połączenia, które mogą przemeblować trasy i DNS, więc wykonuj je świadomie. Nigdy nie umieszczaj hasła w wierszu poleceń ani nie wyłączaj sprawdzania certyfikatów, aby obejść błąd protokołu, ponieważ to ukrywa niezgodność zamiast ją naprawiać. Jeśli chcesz zobaczyć, co wysyła klient, --dump-http-traffic wypisuje wymianę, co zwykle identyfikuje moduł oczekiwany przez bramę.
Dopasuj protokół do tego, co udostępnia brama
Urządzenie odpowiada tylko na protokół, dla którego jest skonfigurowane. Usługa tylko z Pulse odrzuca logowanie nc nawet z ważnymi danymi logowania, a stara usługa Network Connect nie ma punktu końcowego pulse, który by odpowiedział. Zapytaj administratora, który jest włączony i którego klienta obsługują. Zmieniona nazwa urządzenia, nieaktualna strona wiki i znany portal internetowy to wszystko słabe dowody.
Gdy znasz protokół, potwierdź wymagania wokół niego: uwierzytelnianie certyfikatem lub tokenem, wybór grupy uwierzytelniania i każdą kontrolę zgodności punktu końcowego. To one decydują, czy klient wiersza poleceń może w ogóle dokończyć logowanie.
Uwierzytelnianie może rozstrzygnąć pytanie przed protokołem
Wdrożenie może wymagać certyfikatu klienta, rundy SAML przez przeglądarkę lub kontrolera hosta, który sprawdza maszynę przed przyznaniem dostępu. Moduł pulse w OpenConnect dokumentuje ograniczenia zgodności dla niektórych z tych przepływów, a moduł nc ma własne luki. Hasło działające w przeglądarce dowodzi, że konto jest ważne; nie dowodzi, że dowolny CLI lub wtyczka pulpitu może ukończyć tę samą sekwencję. Gdy w grę wchodzi kontroler hosta, klient potrzebuje skryptu opakowującego od administratora. Bez niego logowanie zatrzymuje się po pierwszej odpowiedzi i wygląda jak błąd protokołu, choć w rzeczywistości brakuje kroku zgodności.
Wybór grupy uwierzytelniania to druga częsta przeszkoda, ponieważ brama z kilkoma grupami oczekuje, że klient wskaże jedną.
W wierszu poleceń --authgroup="Employees" dostarcza tego wyboru, a jego pominięcie może umieścić sesję w grupie domyślnej, która odrzuca konto. Z certyfikatami --certificate wskazuje certyfikat i klucz klienta, a brama może potem nadal wymagać tokenu. Przetestuj całą sekwencję raz ze szczegółowym wyjściem, zanim zautomatyzujesz cokolwiek wokół niej.
Gdy interfejs pulpitu nie potrafi wyrazić wyboru
Interfejsy graficzne mają własne zestawy funkcji, a starsza wtyczka może pochodzić sprzed potrzebnego protokołu. Integracja OpenConnect w NetworkManagerze zapisuje wybór w danych połączenia, więc nmcli connection modify "Office VPN" vpn.data "protocol=pulse" może ustawić to, czego edytor nie pokazuje. Sprawdź, czy zainstalowana wersja wtyczki obsługuje ten klucz, zanim uznasz, że zmiana zaczęła działać.
Jeśli menu oferuje tylko PPTP lub L2TP, wybór jednego nie zamienia usługi Pulse w ten protokół. Zainstaluj zatwierdzoną integrację zamiast przełączać się na to, co menu akurat wymienia.
Co zapisać, gdy logowanie nadal się nie udaje
Zapisz cztery rzeczy: wybrany protokół, wersje klienta i wtyczki, oczekiwany przepływ uwierzytelniania oraz pierwszy błąd, który wrócił z kodem stanu, a nie z przekroczeniem czasu. Ten zestaw oddziela niewłaściwy moduł od brakującego certyfikatu, odrzuconej grupy uwierzytelniania lub zablokowanej kontroli zgodności. Szczegółowe wyjście warto zachować z tego samego powodu, bo pokazuje nieudane żądanie, a nie tylko objaw.
Trzymaj działające polecenie lub profil obok nazwy bramy, gdy się powiedzie. Inaczej następna osoba, która się połączy, powtórzy to samo zgadywanie marki kontra protokół.