Skripta en Azure P2S VPN-profil för varje Windows-användare
Add-VpnConnection utlöser ett EapConfigXmlStream-fel när växlar får booleska värden. Rätta till omfånget och den saknade rutten innan du rullar ut till en flotta.
Att dela ut ett Azure punkt-till-plats-paket för hand fungerar för fem bärbara datorer och faller samman vid femtio. Den skriptade vägen har två fällor som var och en kostar en eftermiddag: ett parameterfel som ser ut som ett certifikatfel, och en rutt som anslutningen aldrig installerar, även när allt annat stämmer. Ingen av dem åtgärdas genom att ladda ner klientpaketet igen. Gå igenom kontrollerna nedan i ordning och stanna vid den första som misslyckas.
Jag håller ordningen fast eftersom varje steg förutsätter att det föregående stämmer.
1. Rätta till profilomfånget före den första enheten
En profil för alla användare lever på maskinen och visas i varje session. En profil per användare följer ett konto och bevarar dess autentiseringsuppgifter i den kontots kontext. Välj en och håll dig till den, för en maskin med båda visar två poster med samma namn, och användare ansluter till den som visas först. Att ändra omfång senare innebär att ta bort den gamla profilen först i stället för att redigera den på plats.
Profiler för alla användare passar delade enheter och kiosker där ingen loggar in med ett personligt konto. De är fel standard när certifikatet utfärdas per person, eftersom en maskinomfattande profil inte kan presentera autentiseringsuppgifter som tillhör någon annan. Skriv valet i distributionsprotokollet innan den andra bärbara datorn finns.
2. Skicka växlar som växlar
Add-VpnConnection tar växelparametrar som antingen finns eller inte finns. Att ge dem $true utlöser ett EapConfigXmlStream-fel, och det är därför så många trådar om detta slutar med att granska certifikatkedjor som aldrig var problemet.
Add-VpnConnection -Name "Contoso P2S" `
-ServerAddress "azuregateway-00000000-0000-0000-0000-000000000000.cloudapp.net" `
-AllUserConnection -UseWinLogonCredential -RememberCredential `
-TunnelType Automatic -EncryptionLevel Required -AuthenticationMethod MSChapv2Gatewayadressen ovan är illustrativ; ta den riktiga från det nedladdade paketet och håll den inom citattecken. -AllUserConnection kräver en förhöjd session, och profilen den skapar är maskinomfattande även om du körde kommandot som administratör. Läs parameterset med Get-Help Add-VpnConnection -Parameter * innan du lägger till fler växlar.
3. Lägg till rutten som adaptern inte lägger till
Punkt-till-plats-adaptern installerar en rutt för klientadresspoolen och inget annat.
Ett prefix för ett virtuellt nätverk utanför den poolen förblir oåtkomligt medan tunneln fortfarande rapporterar Connected, och det är det mest förvirrande felet i det här arbetsflödet. Lägg till rutten uttryckligen efter att anslutningen lyckats, och rikta den mot gränssnittsadressen som adaptern fick i stället för mot det offentliga gateway-namnet. Den adressen kommer från ipconfig efter anslutning, och den ändras mellan sessioner.
route add 10.0.0.0 mask 255.255.0.0 10.0.1.5
route print -4 | findstr /c:"10.0.0.0"Ta bort rutten vid frånkoppling så att ett inaktuellt nästa hopp inte senare kan skicka trafik i ett svart hål. Behandla kommandot som en dokumenterad lokal avvikelse: om en framtida klientversion lägger till rutten själv blir din rad en dubblett som konkurrerar med paketets eget nästa hopp.
4. Verifiera som standardanvändare
En administratörssession döljer omfattningsfel, eftersom förhöjning ibland tillhandahåller autentiseringsuppgifter som den verkliga användaren inte skulle ha.
Logga in som icke-administratör, anslut via profilen och testa en privat tjänst i stället för det publika internetet. Bekräfta att profilen visas i Get-VpnConnection -AllUserConnection, att tillståndet når Connected och att rutten du lade till pekar mot den aktuella adapteradressen. Försätt sedan maskinen i viloläge, väck den och jämför ipconfig igen.
5. Ta bort en dålig utrullning rent
Remove-VpnConnection med -AllUserConnection och -Force tar bort den maskinomfattande profilen. Force spelar roll eftersom en ansluten profil annars vägrar att tas bort, och en halvt borttagen profil är svårare att diagnostisera än en ren ominstallation.
Behåll profilnamnet, gatewayadressen och de tillagda ruttarna i distributionsanteckningarna. De tre värdena är vad ett helpdesk-samtal behöver innan någon öppnar ett ärende, och de är också vad nästa skript behöver när gatewayadressen ändras. Lägg till versionen av klientpaketet i samma anteckning, eftersom ruttens beteende hör till det paketet och inte till Windows.