A 789-es hiba egy Windows L2TP-kapcsolatnál azt jelenti, hogy az alagút meghalt az IPsec biztonsági cserén belül, ami jóval azelőtt történik, hogy a Windows bárhová elküldené a felhasználói jelszót. A jelszó újbóli megpróbálása vagy a könyvtárban való visszaállítása nem tudja előrébb vinni ezt a szakaszt. Amit előre visz, az a kapcsolat újraépítése PowerShellből azzal az ajánlattal, amelyet az átjáró valóban kínál, mert a Beállítások varázslója csendben választja ki az IPsec-transzformációkat, és soha nem mutatja meg, mit választott. Ez az ehhez tartozó útmutató: készítse el a profilt, rögzítse az ajánlatot, majd használjon szakasztáblázatot, hogy a következő kód mondjon valamit.

Készítse el a profilt a varázsló nélkül

Add-VpnConnection natív telefonkönyv-bejegyzést ír, így az eredmény ugyanaz az objektum, amelyet a Beállítások alkalmazás később szerkeszt. Emelt szintű munkamenetből futtassa, ha a kapcsolatnak a gép minden fiókjához léteznie kell, vagy a felhasználói környezetből, ha privátnak kell maradnia:

Add-VpnConnection -Name "Contoso L2TP" `
  -ServerAddress 203.0.113.10 `
  -TunnelType L2tp `
  -EncryptionLevel Required `
  -AuthenticationMethod MSChapv2 `
  -RememberCredential -Force

A -AuthenticationMethod-t ahhoz igazítsa, amit az átjáró kínál. A MSChapv2, az EAP és a PAP nem felcserélhetők, és az a profil, amely olyan módszert követel, amelyet a kiszolgáló nem fogad el, még bármely felhasználói rekord megvizsgálása előtt elbukik. Tartsa meg a -EncryptionLevel Required-t minden valós dologhoz; a Optional engedi, hogy a Windows elfogadjon egy titkosítatlan alagutat, ha a partner kínál egyet, ami laboratóriumi rövidítés, és nem szállításra szánt beállítás.

Ha átadja a -L2tpPsk-t, az az előre megosztott kulcs a lemezen lévő profilba íródik, ahonnan bárki, aki azon a gépen olvasni tudja a profilt, vissza tudja állítani. Használjon tanúsítványt a partner hitelesítésére, amikor az átjáró támogatja, és amikor a PSK elkerülhetetlen, tartsa távol a tárolótól és a shell-előzményektől ahelyett, hogy minden telepítési futásba beillesztené.

Rögzítse az ajánlatot az alapértelmezések elfogadása helyett

A Windows maga tölti ki az IPsec-transzformációkat, ezért fordulhat elő, hogy két gép látszólag azonos kapcsolattal eltérően bukik el ugyanazzal az átjáróval szemben. A Set-VpnConnectionIPsecConfiguration a támogatott módja ezek rögzítésének:

Set-VpnConnectionIPsecConfiguration -ConnectionName "Contoso L2TP" `
  -AuthenticationTransformConstants SHA256128 `
  -CipherTransformConstants AES128 `
  -EncryptionMethod AES128 `
  -IntegrityCheckMethod SHA256 `
  -DHGroup Group14 `
  -PfsGroup None `
  -PassThru -Force

Ez a készlet egy gyakori L2TP/IPsec-elrendezés, nem egyetemes válasz. Minden paraméter fix értéklistát fogad el, és a platform által leképezni nem tudó kombináció cmdlet-hibaként jön vissza, nem pedig csendben legyengített profilkén. Az ilyen hibát az értékekre vonatkozó kijelentésnek tekintse, nem az engedélyeire vonatkozónak.

Másolja az ajánlatot az átjáró dokumentációjából vagy annak élő fázis 1 és fázis 2 beállításaiból, és egyszerre csak egy mezőt módosítson, csak akkor, amikor az átjáró naplózza az elutasított transzformációkat. Öt mező végigpróbálása véletlenül működő kapcsolatot és a következő embernek semmit sem magyarázó rekordot eredményez.

Hibát szakasz szerint olvasson, ne a hibaüzenet szerint

A 789 a kódok azon családjába tartozik, amelyek mind egyformán néznek ki az ügyfél párbeszédablakában. Helyezze a kódot ahhoz a szakaszhoz, amelyhez tartozik, mielőtt újra hozzányúlna a profilhoz:

What you seeStage that failedCheck first
Nothing happens, then a timeoutNo IKE response at allServer address, UDP 500 and 4500 reachability, NAT traversal on the gateway
Error 789IKE security exchangeProposal, pre-shared key, certificate trust and client clock
Error 691 or a repeated password promptUser authenticationAccount state, domain, RADIUS or NPS policy
Tunnel up, some hosts unreachableRouting or DNS after PPPSplit-tunnel routes, pushed DNS, remote subnet mask

A hitelesítő adatok két szerepe itt számít. Az előre megosztott kulcs vagy a tanúsítvány a partnereket hitelesíti egymás felé, míg a MSChapv2 vagy az EAP Önt hitelesíti az alagúton belül. A felhasználói jelszó visszaállítása nem javítja az elsőt, az új közös titok nem javítja a másodikat, és mindkettő egyszerre történő megváltoztatása megsemmisíti a bizonyítékot arról, melyik volt rossz.

A tanúsítvány útján ellenőrizze az ügyfél óráját, a bizalmi láncot és azt az identitást, amelyet az átjáró elvár, mielőtt az érvényesítés lazítását fontolgatná. Az érvényesítés kikapcsolása egy látható 789-et olyan alagúttá tesz, amely a rossz partnerben bízva kapcsolódik, és semmi az ügyfélben nem fogja megmondani, hogy ez megtörtént. Microsoft távoli hozzáférési hibáinak listája magukra a kódokra vonatkozó hivatkozás, és elválasztja a biztonsági réteg hibáit a bejelentkezési hibáktól.

Mindkét végéről ellenőrizze, mielőtt javítottnak nyilvánítja

Olvassa vissza a profilt, de ne várja az ajánlatot a kimenetben. A Get-VpnConnection a nevet, a kiszolgálócímet, az alagút típusát, a titkosítási szintet és a hitelesítési módszert jelenti, és semmit nem tud a transzformációkról, így a visszaolvasás megerősíti, hogy a bejegyzés létezik, és a megfelelő gazdagépre mutat:

Get-VpnConnection -Name "Contoso L2TP" |
  Select-Object Name, ServerAddress, TunnelType, EncryptionLevel, AuthenticationMethod

Tárcsázzon a parancssorból, hogy számot kapjon párbeszédablak helyett: a rasdial "Contoso L2TP" ugyanazt a hibakódot adja vissza, mint a felület, a rasdial "Contoso L2TP" /disconnect pedig törli a kísérletek között. Ezután olvassa el az átjáró oldalát ugyanahhoz a kísérlethez. A strongSwan ipsec statusall-je vagy egy router IKE-naplója megmondja, melyik ajánlat érkezett és melyiket utasították el, és ennek a cmdlet-értékekkel való összehasonlítása az egyetlen lépés, amely valóban bizonyítja, hogy a két vég megegyezett.

A sikeres kapcsolódás nem a célvonal. Nyissa meg az alkalmazást, amely fontos a felhasználónak, mert az útvonalak, a kényszerített DNS és az osztott alagút beállításai az alagút felállása után buknak el, és egyáltalán nem adnak hibapárbeszédet.

Automatizálja, és tiszta visszagörgetéssel zárja

A felügyelet nélküli telepítés az oka annak, hogy ezt szkripteljük, és a tárcsázási lépés az, ahol a hitelesítő adatok szivárognak. A rasdial a saját parancssorában veszi át őket, ahol más helyi felhasználók és a legtöbb naplógyűjtő olvasni tudja:

subprocess.run(["rasdial", "Contoso L2TP"], check=True)

Előnyben részesítse a feladatot futtató fiókra korlátozott hitelesítő adatot, vagy hagyja, hogy a profil a -RememberCredential-tal tárolja, ahelyett hogy jelszót adna át argumentumként egy ütemezett feladatban. Maguk a kiépítési parancsok biztonságosan megismételhetők a -Force-tal, de szívesen ráírnak egy régi ajánlatra, ezért az ismételt futtatás csak akkor segít, ha a szkript a jelenlegi értékeket hordozza.

A profilok túlélik az újraindításokat, és tovább élnek, mint az az átjárókonfiguráció, amelyhez készültek. Amikor az átjáró ajánlata elmozdul, távolítsa el a bejegyzést, és hozza létre újra, ahelyett hogy egy második értékkészletet rétegezne rá: Remove-VpnConnection -Name "Contoso L2TP" -Force, majd ismételje meg a két cmdletet az új készlettel.

Zárja a hurkot négy ellenőrzéssel, amelyek a szkript mellett élnek: a Get-VpnConnection megmutatja a várt alagúttípust és titkosítási szintet; az átjáró naplózza az ügyfélcíméhez tartozó befejezett fázis 1 és fázis 2 állapotot; a rasdial sikert ad vissza, és az alkalmazás megnyílik; és a szkriptben rögzített ajánlat megegyezik az átjáró jelenlegi beállításával. Amikor megérkezik a következő 789, ez az összehasonlítás percekig tart egy délután helyett.

Kapcsolódó cikkek