Valaki megkérdezi, hogy fut-e a VPN, és három különböző ember három különböző dolgot ért rajta. Egy üzemeltető azt érti, hogy az Office-profil befejezte a hitelesítést. Egy ütemező azt érti, hogy a privát API válaszolni fog. Egy biztonsági felülvizsgálat azt érti, hogy ez a konkrét kérés a védett útvonalon hagyta el a gépet. Egy szkript, amely grep-pel keresi az útvonaltáblában egy interfész nevét, egyikre sem ad megbízható választ.

Ezért az ellenőrzőlista még azelőtt kezdődik, hogy bármely parancs lefutna: nevezze meg az ellenőrzés alanyát. Minden, ami ezután jön, annak a felületnek a kiválasztása, amely ezt valóban jelenteni tudja.

Nevezze meg az alanyt a parancs előtt

Írja fel a kérdést alannyal rendelkező predikátumként. „Az Office-profil csatlakoztatva van” tesztelhető, és van gazdája, aki meg tudja válaszolni. „Ez a feladat eléri a belső API-t” egy második predikátum, más hibaaránnyal. „Ez a kérés a védett útvonalat használja” a harmadik, és ez az egyetlen, amely egyetlen folyamról beszél, nem az egész gépről.

Ezek keverése olyan automatizálást szül, amely magabiztosan hazudik. Egy feladat, amely ellenőrzi a profil állapotát, majd feltételezi, hogy az API kész, rossz rétegen riaszt valakit, és egy feladat, amely pingeli az API-t, és ezt az alagút bizonyítékának nevezi, nem tudja megkülönböztetni a működő VPN-t egy laptoptól, amely véletlenül az irodai hálózaton van.

Egy profil: kérdezze meg azt, ami birtokolja

Natív Mac-szolgáltatás esetén a scutil hálózati kapcsolat-vezérlői pontosan ezt jelentik. Egy megnevezett konfiguráció állapotát olvassák, ahelyett hogy bármit egy interfészből következtetnének.

scutil --nc list
scutil --nc status "Office VPN"

A profilmévnek abban a parancsban a lista kimenetéből származó valódinak kell lennie, nem találgatásnak. Ez natív szolgáltatások számára csak olvasható útvonal, és nem garancia arra, hogy egy harmadik féltől származó kliens egyáltalán megjelenik ott; annak a szolgáltatónak, amely a saját alagútját kezeli, saját támogatott állapotfelületre van szüksége. Ellenőrizze a listát, mielőtt megírja az állapothívást, hogy a hiányzó név láthatóan elbukjon, ne pedig csendben semmihez se illeszkedjen.

Egy Network Extension-alkalmazáson belül a vezérlő- és kapcsolatobjektumokból olvassa ki az állapotot, ne a rendszerből. Ügyeljen a hatókörre: a mentett konfigurációk betöltése csak a hívó alkalmazás által létrehozottakat adja vissza, tehát az üres eredmény azt jelenti, hogy „egyetlen enyém sem”, nem azt, hogy „nincs VPN ezen a Macen”. Különböztesse meg a sikertelen lekérdezést a megerősítetten leválasztott állapottól, és az átmeneti állapotokat saját eredményként kezelje, ahelyett hogy újrapróbálna egy már felépülő kapcsolatot.

Egy feladat: a készenlét külön predikátum

Ha a kérdés az, hogy egy feladat továbbhaladhat-e, tesztelje a feladat tényleges függőségét, miután a kapcsolat gazdája jelentette a kívánt állapotot. A privát erőforrás felé irányuló korlátozott készenlét-ellenőrzés a helyes forma: azt bizonyítja, amire a feladatnak szüksége van, és semmi többet.

Még mindig nem tudja bizonyítani, hogy a gépen minden kérés az alagutat használja, és nem is szabad úgy jelenteni, mintha tudná. Ugyanígy egy erőforrás, amely a hétköznapi hálózaton válaszol, nem bizonyíték a VPN-re, ezért a két ellenőrzés akkor is külön marad, ha mindkettő sikerül.

Amikor a feladat valóban védett útvonalat igényel, ennek a követelménynek a telepítés saját érvényesítési terve kell: útválasztás, osztott alagút kivételei, tűzfalszabály vagy alkalmazásszintű követelmény. Egy végpont elérhetősége tény a kiszolgálóról. Az érvényesítés tény a kliens konfigurációjáról, és az egyik nem bizonyítja a másikat.

Egy folyam: vizsgálja meg a választott útvonalat

Egyetlen folyamhoz nézze meg a célt, a címcsaládot és a forráskörnyezetet azzal az útválasztási diagnosztikával, amely az adott célhoz kiválasztott útvonalat jelenti. Az a kimenet megnevezi a ténylegesen használt interfészt és forráscímet, ami sokkal erősebb állítás egy alapértelmezett útvonalbejegyzésnél.

A böngésző széles ellenőrzései teljesen más kérdésre válaszolnak. A nyilvános IP-eredmény leírja, hogyan nézett ki egy kérés egy kiszolgáló szemszögéből, és semmit nem mond a privát DNS-ről, a kizárt alkalmazásokról vagy egy második hálózati környezetről, amelyet egy másik folyamat használ.

Adjon vissza a hívó számára használható eredményt

Válasszon a predikátumhoz illő visszatérési formát: megnevezett profilállapot, erőforrás-készenléti ítélet vagy kifejezett ismeretlen a bizonyítékokkal, amelyek létrehozták. Tartsa a konfiguráció azonosságát és a hiba okát az ítélet mellett.

Ez az utolsó szokás teszi a különbséget a segítő és a problémákat elrejtő automatizálás között. Az „Office VPN: leválasztva, az utolsó próbálkozás hitelesítésnél meghiúsult” megmondja az üzemeltetőnek, hova nézzen. A „leállt a VPN” újratelepítésre hív, az „interfész megtalálva” pedig hamis minden rendben van felé.

A Network Extension referencia a mentett alagútkonfigurációk betöltéséről az a hely, ahol megerősítheti a hívó alkalmazás hatókörét, mielőtt bármit építene rá.

Kapcsolódó cikkek