Windows-тағы L2TP қосылысындағы 789 қатесі туннельдің IPsec қауіпсіздік алмасуының ішінде өлгенін білдіреді, бұл Windows пайдаланушы құпия сөзін бір жерге жіберуден әлдеқайда бұрын болады. Құпия сөзді қайталау немесе оны каталогта қалпына келтіру бұл кезеңді алға жылжыта алмайды. Оны алға жылжытатын нәрсе — қосылымды PowerShell-дан шлюз шынымен ұсынатын ұсыныспен қайта құру, өйткені Параметрлер шебері IPsec түрлендірулерін үнсіз таңдап, нені таңдағанын ешқашан көрсетпейді. Бұл соған арналған нұсқаулық: профиль құрыңыз, ұсынысты бекітіңіз, содан кейін келесі код бірдеңе айтуы үшін кезеңдер кестесін қолданыңыз.

Профильді шеберсіз құрыңыз

Add-VpnConnection жергілікті телефон кітабының жазбасын жазады, сондықтан нәтиже Параметрлер қолданбасы кейінірек өңдейтін сол объект. Қосылым машинадағы әрбір тіркелгі үшін болуы керек болса, оны жоғарылатылған сессиядан, ал жеке болып қалуы керек болса, пайдаланушы контекстінен іске қосыңыз:

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

-AuthenticationMethod параметрін шлюз ұсынатын нәрсемен сәйкестендіріңіз. MSChapv2, EAP және PAP бір-бірінің орнын баспайды, ал сервер қабылдамайтын әдісті талап ететін профиль кез келген пайдаланушы жазбасы қарастырылмай тұрып сәтсіз аяқталады. Кез келген нақты нәрсе үшін -EncryptionLevel Required сақтаңыз; Optional Windows-қа қарсы тарап ұсынса, шифрланбаған туннельді қабылдауға рұқсат береді, бұл зертханалық қысқа жол, жіберілетін параметр емес.

Егер -L2tpPsk берсеңіз, сол алдын ала бөлісілген кілт дискідегі профильге жазылады, ол жерден сол машинада профильді оқи алатын кез келген адам оны қалпына келтіре алады. Шлюз қолдаса, қарсы тарапты аутентификациялау үшін сертификатты пайдаланыңыз, ал PSK сөзсіз болса, оны әрбір орналастыру жүрісіне қыстырудың орнына қоймадан және shell тарихынан тыс ұстаңыз.

Әдепкі мәндерді қабылдаудың орнына ұсынысты бекітіңіз

Windows IPsec түрлендірулерін өзі толтырады, сондықтан бірдей көрінетін қосылысы бар екі машина бір шлюзге қарсы әртүрлі сәтсіз аяқталуы мүмкін. Set-VpnConnectionIPsecConfiguration оларды бекітудің қолдау көрсетілген жолы:

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

Бұл жиын — L2TP/IPsec-тің бір кең тараған орналасуы, әмбебап жауап емес. Әрбір параметр мәндердің тіркелген тізімін қабылдайды, ал платформа сәйкестендіре алмайтын комбинация үнсіз әлсіретілген профильдің орнына cmdlet қатесі ретінде қайтады. Мұндай қатені мәндер туралы мәлімдеме деп қараңыз, құқықтарыңыз туралы емес.

Ұсынысты шлюз құжаттамасынан немесе оның жұмыс істеп тұрған 1 және 2 фаза параметрлерінен көшіріңіз және шлюз қабылдамайтын түрлендірулерді журналға жазып отырғанда ғана бір уақытта бір өрісті өзгертіңіз. Бес өрісті айналып өту кездейсоқ жұмыс істейтін қосылым мен келесі адамға ештеңе түсіндірмейтін жазба жасайды.

Сәтсіздікті қате мәтінімен емес, кезең бойынша оқыңыз

789 клиент диалогында барлығы бірдей көрінетін кодтар әулетіне жатады. Профильге қайта тимес бұрын кодты өзі жататын кезеңнің алдына қойыңыз:

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

Мұнда тіркелгі деректерінің екі рөлі маңызды. Алдын ала бөлісілген кілт немесе сертификат тараптарды бір-біріне куәландырады, ал MSChapv2 немесе EAP сізді туннельдің ішінде куәландырады. Пайдаланушы құпия сөзін қалпына келтіру біріншісін түзей алмайды, жаңа ортақ құпия екіншісін түзей алмайды, ал екеуін бірден өзгерту қайсысы қате болғанының дәлелін жояды.

Сертификат жолында тексеруді әлсіретуді қарастырмас бұрын клиент сағатын, сенім тізбегін және шлюз күтетін сәйкестікті тексеріңіз. Тексеруді өшіру көрінетін 789-ды дұрыс емес тарапқа сеніп қосылатын туннельге айналдырады, ал клиентте ештеңе мұның болғанын айтпайды. Microsoft-тың қашықтан қатынау қателерінің тізімі кодтардың өзіне арналған анықтама, және ол қауіпсіздік қабатының сәтсіздіктерін кіру сәтсіздіктерінен ажыратады.

Түзетілді деп айтпас бұрын екі жақтан да тексеріңіз

Профильді қайта оқыңыз, бірақ шығыста ұсынысты күтпеңіз. Get-VpnConnection атауын, сервер мекенжайын, туннель түрін, шифрлау деңгейін және аутентификация әдісін хабарлайды және түрлендірулер туралы ештеңе білмейді, сондықтан қайта оқу жазбаның бар екенін және дұрыс хостқа сілтейтінін растайды:

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

Диалогтың орнына нөмір алу үшін пәрмен жолынан қоңырау шалыңыз: rasdial "Contoso L2TP" интерфейс қайтаратын сол сәтсіздік кодын қайтарады, ал rasdial "Contoso L2TP" /disconnect оны әрекеттер арасында тазалайды. Содан кейін сол әрекет үшін шлюз жағын оқыңыз. strongSwan ipsec statusall немесе маршрутизатордың IKE журналы қай ұсыныс келгенін және қайсысы қабылданбағанын айтады, ал оны cmdlet мәндерімен салыстыру екі жақтың келіскенін шын мәнінде дәлелдейтін жалғыз қадам.

Сәтті қосылу — мәре емес. Пайдаланушыға маңызды қолданбаны ашыңыз, өйткені маршруттар, жіберілген DNS және бөлінген туннель параметрлері туннель көтерілгеннен кейін сәтсіз аяқталады және мүлде қате диалогын шығармайды.

Оны автоматтандырыңыз және таза кері қайтарыңыз

Қадағалаусыз орнату — бұны скрипт етудің себебі, ал қоңырау шалған кезең тіркелгі деректері ағатын жер. rasdial оларды өз пәрмен жолында қабылдайды, онда басқа жергілікті пайдаланушылар мен журнал жинаушылардың көбі оқи алады:

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

Тапсырманы орындайтын тіркелгіге шектелген тіркелгі деректерін таңдаңыз немесе профильге оны -RememberCredential арқылы сақтауға рұқсат етіңіз, жоспарланған тапсырмада құпия сөзді аргумент ретінде берудің орнына. Орналастыру пәрмендерінің өзін -Force арқылы қайталау қауіпсіз, бірақ олар ескі ұсынысты қуана жауып кетеді, сондықтан қайта іске қосу скрипт ағымдағы мәндерді алып жүргенде ғана көмектеседі.

Профильдер қайта жүктеулерден өтіп, олар үшін құрылған шлюз конфигурациясынан ұзақ өмір сүреді. Шлюз ұсынысы жылжығанда, мәндердің екінші жиынын үстіне қабаттаудың орнына жазбаны жойып, оны қайта жасаңыз: Remove-VpnConnection -Name "Contoso L2TP" -Force, содан кейін екі cmdlet-ті жаңа жиынмен қайталаңыз.

Циклді скрипттің қасында тұратын төрт тексерумен жабыңыз: Get-VpnConnection күтілетін туннель түрін және шифрлау деңгейін көрсетеді; шлюз клиент мекенжайыңыз үшін аяқталған 1 және 2 фазаны журналға жазады; rasdial сәттілік қайтарады және қолданба ашылады; ал скриптте жазылған ұсыныс шлюздің ағымдағы параметріне сәйкес келеді. Келесі 789 келгенде, бұл салыстыру түстен кейінгі уақыттың орнына бірнеше минут алады.

Қатысты мақалалар