L2TP/IPsec viga 789 Windowsis: looge profiil ja kinnitage pakkumine
Viga 789 tekib IPsec-vahetuses, mitte paroolis. Skriptige L2TP-profiil, kinnitage pakkumine ja lugege hilisemaid koode etapi kaupa.
Viga 789 Windowsi L2TP-ühendusel tähendab, et tunnel suri IPsec-i turbekokkuleppe sees, mis juhtub ammu enne, kui Windows kuhugi kasutaja parooli saadab. Parooli uuesti proovimine või selle kataloogis lähtestamine ei vii seda etappi edasi. Seda viib edasi ühenduse ülesehitamine PowerShellist pakkumisega, mida lüüs tegelikult pakub, sest Seadete viisard valib IPsec-i teisendused vaikselt ega näita teile kunagi, mille ta valis. See on selle juhend: looge profiil, kinnitage pakkumine ja kasutage seejärel etapitablelit, et järgmine kood ütleks teile midagi.
Looge profiil ilma viisardita
Add-VpnConnection kirjutab natiivse telefoniraamatu kirje, nii et tulemus on sama objekt, mida Seadete rakendus hiljem redigeerib. Käivitage see kõrgendatud seansist, kui ühendus peab olemas olema masina iga konto jaoks, või kasutajakontekstist, kui see peab jääma privaatseks:
Add-VpnConnection -Name "Contoso L2TP" `
-ServerAddress 203.0.113.10 `
-TunnelType L2tp `
-EncryptionLevel Required `
-AuthenticationMethod MSChapv2 `
-RememberCredential -Force
Sobitage -AuthenticationMethod sellega, mida lüüs pakub. MSChapv2, EAP ja PAP ei ole omavahel vahetatavad, ja profiil, mis nõuab meetodit, mida server ei aktsepteeri, ebaõnnestub enne, kui üldse mõnda kasutajakirjet vaadatakse. Hoidke -EncryptionLevel Required kõige tõelise jaoks; Optional laseb Windowsil vastu võtta krüpteerimata tunneli, kui vastaspool seda pakub, mis on labori otsetee, mitte tarnitav seade.
Kui edastate -L2tpPsk, kirjutatakse see eeljagatud võti kettal olevasse profiili, kust igaüks, kes saab sellel masinal profiili lugeda, saab selle taastada. Kasutage vastaspoole autentimiseks sertifikaati, kui lüüs seda toetab, ja kui PSK on vältimatu, hoidke see hoidlast ja kestade ajaloost väljas, selle asemel et see igasse varustuskäivitusse kleepida.
Kinnitage pakkumine, selle asemel et vaikeväärtusi aktsepteerida
Windows täidab IPsec-i teisendused ise, mistõttu kaks masinat, mille ühendus näib identne, võivad sama lüüsi vastu erinevalt ebaõnnestuda. Set-VpnConnectionIPsecConfiguration on toetatud viis nende kinnitamiseks:
Set-VpnConnectionIPsecConfiguration -ConnectionName "Contoso L2TP" `
-AuthenticationTransformConstants SHA256128 `
-CipherTransformConstants AES128 `
-EncryptionMethod AES128 `
-IntegrityCheckMethod SHA256 `
-DHGroup Group14 `
-PfsGroup None `
-PassThru -Force
See komplekt on üks levinud L2TP/IPsec lahendus, mitte universaalne vastus. Iga parameeter aktsepteerib fikseeritud väärtuste loendit ja kombinatsioon, mida platvorm ei suuda vastendada, tuleb tagasi cmdlet-veana, mitte vaikselt nõrgestatud profiilina. Käsitlege sellist viga väitena väärtuste kohta, mitte oma õiguste kohta.
Kopeerige pakkumine lüüsi dokumentatsioonist või selle 1 ja 2 faasi reaalajas seadetest ning muutke korraga ühte välja ainult siis, kui lüüs logib teisendusi, mida ta keeldub. Viie välja läbikäimine annab ühenduse, mis töötab juhuslikult, ja kirje, mis ei selgita järgmisele inimesele midagi.
Lugege ebaõnnestumist etapi järgi, mitte veateksti järgi
789 kuulub koodide perekonda, mis kõik näevad kliendi dialoogis ühesugused välja. Asetage kood selle etapi vastu, kuhu see kuulub, enne kui profiili uuesti puutute:
| What you see | Stage that failed | Check first |
|---|---|---|
| Nothing happens, then a timeout | No IKE response at all | Server address, UDP 500 and 4500 reachability, NAT traversal on the gateway |
| Error 789 | IKE security exchange | Proposal, pre-shared key, certificate trust and client clock |
| Error 691 or a repeated password prompt | User authentication | Account state, domain, RADIUS or NPS policy |
| Tunnel up, some hosts unreachable | Routing or DNS after PPP | Split-tunnel routes, pushed DNS, remote subnet mask |
Kaks mandaadirolli on siin olulised. Eeljagatud võti või sertifikaat autendib vastaspooli üksteise suhtes, samal ajal kui MSChapv2 või EAP autendib teid tunneli sees. Kasutaja parooli lähtestamine ei saa parandada esimest, uus jagatud saladus ei saa parandada teist, ja mõlema korraga muutmine hävitab tõendi selle kohta, kumb oli vale.
Sertifikaadi teel kontrollige kliendi kella, usaldusahelat ja identiteeti, mida lüüs ootab, enne kui kaalute valideerimise lõdvendamist. Valideerimise väljalülitamine muudab nähtava 789 tunneli, mis ühendub, usaldades vale vastaspoolt, ja miski kliendis ei ütle teile, et see juhtus. Microsofti kaugjuurdepääsu vigade loend on viide koodide endi jaoks ja see eraldab turvakihi tõrked sisselogimistõrgetest.
Kontrollige mõlemast otsast, enne kui nimetate selle parandatuks
Lugege profiil tagasi, kuid ärge oodake väljundis pakkumist. Get-VpnConnection teatab nime, serveri aadressi, tunneli tüübi, krüpteerimistaseme ja autentimismeetodi ega tea teisendustest midagi, nii et tagasilugemine kinnitab, et kirje on olemas ja osutab õigele hostile:
Get-VpnConnection -Name "Contoso L2TP" |
Select-Object Name, ServerAddress, TunnelType, EncryptionLevel, AuthenticationMethod
Valige käsurealt, et saada dialoogi asemel number: rasdial "Contoso L2TP" tagastab sama veakoodi, mille liides tagastaks, ja rasdial "Contoso L2TP" /disconnect kustutab selle katsete vahel. Seejärel lugege lüüsi poolt sama katse jaoks. strongSwan ipsec statusall või ruuteri IKE-logi näitab, milline pakkumine saabus ja milline lükati tagasi, ja selle võrdlemine cmdlet-i väärtustega on ainus samm, mis tõesti tõestab, et kaks otsa jõudsid kokkuleppele.
Edukas ühendus ei ole finišijoon. Avage rakendus, millest kasutaja hoolib, sest marsruudid, surutud DNS ja jaotatud tunneli seaded ebaõnnestuvad pärast tunneli püsti saamist ega anna üldse veadialoogi.
Automatiseerige see ja keerake puhtalt tagasi
Järelevalveta seadistamine on põhjus seda skriptida, ja valimise samm on koht, kus mandaadid lekkivad. rasdial võtab need oma käsureal, kus teised kohalikud kasutajad ja enamik logikogujaid saavad neid lugeda:
subprocess.run(["rasdial", "Contoso L2TP"], check=True)
Eelistage mandaati, mis on piiratud tööd käitava kontoga, või laske profiilil see salvestada -RememberCredential abil, selle asemel et edastada parooli argumendina planeeritud ülesandes. Varustamiskäsud ise on ohutud korrata -Force abil, kuid need katavad meelsasti vana pakkumise, nii et korduskäivitus aitab ainult siis, kui skript kannab praeguseid väärtusi.
Profiilid püsivad üle taaskäivituste ja elavad kauem kui lüüsi konfiguratsioon, mille jaoks need loodi. Kui lüüsi pakkumine liigub, eemaldage kirje ja looge see uuesti, selle asemel et teist väärtuste komplekti peale kihistada: Remove-VpnConnection -Name "Contoso L2TP" -Force, seejärel korrake kahte cmdlet-it uue komplektiga.
Sulgege tsükkel nelja kontrolliga, mis elavad skripti kõrval: Get-VpnConnection näitab oodatud tunneli tüüpi ja krüpteerimistaset; lüüs logib teie kliendi aadressi jaoks lõpetatud 1 ja 2 faasi; rasdial tagastab edu ja rakendus avaneb; ja skriptis kirjendatud pakkumine vastab lüüsi praegusele seadele. Kui saabub järgmine 789, võtab see võrdlus minuteid, mitte terve pärastlõuna.