VPN profila inportatzea PowerShell-en Add-VpnConnection erabiliz
Add-VpnConnection-ek Windows-en jatorrizko profilak soilik eraikitzen ditu. Parekatu tunela eta autentifikazioa gatewayarekin, ezarri esparrua nahita, eta probatu ibilbideak eta DNSa.
Ez dago Import-VpnProfile cmdlet-ik, eta itxuraz hurbilena den Add-VpnConnection-ek ez du inoiz .ovpn edo .conf fitxategirik irakurtzen. Pasatzen dizkiozun parametroetatik abiatuta Windows jatorrizko profila osatzen du, eta horrexegatik da hemen lehen egiaztapena fitxategi-formatua eta ez komando-lerroa. Gatewayak SSTP, IKEv2, L2TP/IPsec edo PPTP hitz egiten baditu, Windowsek profila beretu dezake eta zerrendako gainerakoak aplikatzen dira. OpenVPN edo WireGuard fitxategia eman badizute, gelditu lehen urratsean: bezero horiek beren inportatzaileak dituzte.
1. urratsa: egiaztatu Windowsek benetan beretu dezakeen profila
Exekutatu Get-Command -Module VpnClient makinan, beste ezer baino lehen. Windows 10, Windows 11 eta Server 2016 edo berriagoek modulua dakarte; falta bada, ez dago kopiatutako script-ik host honek profil natiboa onar dezan. Garrantzitsuak diren cmdlet-ak Add-VpnConnection, Get-VpnConnection eta Remove-VpnConnection dira, eta Add-VpnConnection erreferentziako parametro-zerrenda behin osoan irakurtzea merezi du.
Natiboa esan nahi du Windows VPN pilak tunela amaitzen duela. Horrek IKEv2 hartzen du, askotan makina-ziurtagiri batekin; SSTP, barrutik erabiltzaile- edo ziurtagiri-autentifikazioa duen TLSa dena; eta L2TP/IPsec, aurrez partekatutako gako batekin. .ovpn fitxategia OpenVPN script bat da, ez Windows konexio bat: remote, cipher edo tls-auth bezalako direktibak dakartza, Windows pilak ez baititu ezagutzen. WireGuard-en .conf fitxategiarekin gauza bera gertatzen da PrivateKey eta AllowedIPs-ekin; bat beste bihurtzea ez da parametroen hautua, tunelaren inplementazio desberdina baizik.
Hirugarren adar bat ere badago. Administratzaile batek VPNv2 CSP XML dokumentu bat edo Intune profil bat ematen badizu, hori MDM bidea da, hornikuntza-pilak aplikatzen duena eta ez Add-VpnConnection-ek. Ez itzuli nodo-izen horiek PowerShell parametroetara; galdetu, ordez, zein mekanismok aplikatzen duen XMLa.
2. urratsa: lotu tunel mota autentifikazio-metodoarekin
-TunnelType eta -AuthenticationMethod parametro bereiziak dira, eta gatewayari konbinazioa baino ez zaio axola. Bat ondo eta bestea gaizki jarriz gero, ezeri konektatzen ez zaion profila lortzen duzu, edo tunela altxatuta dagoela blokeatzen da. Ezarri biak esplizituki, beste zerbitzu batentzat hautatutako lehenetsiari fidatu beharrean.
- IKEv2 MachineCertificate-rekin: bezeroak ordenagailu-ziurtagiria aurkezten du; ezarri -EncryptionLevel Required ere.
- SSTP Eap-ekin: lehenengo TLS tunela, gero PEAP/MSCHAPv2 edo ziurtagiria EAP barruan. Horrek 3. urratseko XMLa behar du.
- SSTP, L2TP edo PPTP MSChapv2, Chap edo Pap-ekin: erabiltzaile-izena eta pasahitza soilik, EAP blobarik gabe.
- L2TP MSChapv2 eta -Lt2pPsk-rekin: PSKak IPsec aldea estaltzen du, erabiltzaileak PPPa; biek zerbitzariarekin bat etorri behar dute.
Splat batek balioak leku bakarrean mantentzen ditu:
$p = @{
Name = "Corp IKEv2"
ServerAddress = "vpn.example.com"
TunnelType = "Ikev2"
AuthenticationMethod = "MachineCertificate"
EncryptionLevel = "Required"
SplitTunneling = $false
DnsSuffix = "corp.example.com"
}
Add-VpnConnection @p -PassThru-PassThru-k Windowsek oraintxe idatzitako objektua itzultzen du, bigarren deirik gabe aztertu ahal izateko. Izena badago jada, cmdlet-ak ez du exekutatzen uzten; -Force-k gainidazten du, eta hori erreflexu okerra da ekoizpeneko ordenagailu batean, isilka baztertzen baitu norbaitek eskuz konfiguratutakoa.
3. urratsa: eman kredentzialak behar bezala
Pasahitzak, aurrez partekatutako gakoak eta EAP blobak dira script hauek gehienetan hausten diren tokia. -EapConfigXmlStream-ek XmlDocument bat nahi du, ez bide bat, beraz irakurri eta bota fitxategia lehenengo. Kate bat pasatzeak schema-arazo bat dirudien bihurketa-errorea sortzen du, eta jendea inoiz gaizki egon ez den XMLa berridazten hasten da.
$eap = [xml](Get-Content -Raw .\peap-mschapv2.xml)
Add-VpnConnection -Name "Corp SSTP" -ServerAddress "sstp.example.com" `
-TunnelType Sstp -AuthenticationMethod Eap `
-EapConfigXmlStream $eap -EncryptionLevel RequiredXML hori ez da blog-pasarte batetik asmatzeko gauza. EAP metodo mota eta barneko autentifikazioa izendatzen ditu, eta gatewayak biak alderatzen ditu bere politikarekin. Barneko metodoak bat ez egiteak TLS eskuko keinuaren ondoren huts egiten du, eta horrek pasahitz txar baten itxura zehatza du, baina ez da hala. Hartu XMLa gatewaya kudeatzen duenari, edo esportatu jada funtzionatzen duen profil batetik.
IKEv2rako ziurtagiri aldea biltegi-kontsulta bat da. -MachineCertificateIssuerFilter-ek ziurtagiri objektu bat hartzen du, eta Windowsek LocalMachine\My-n erabil daitekeen bezero-ziurtagiria aurkitzeko erabiltzen du. Ziurtagiriak gako pribatua eta zerbitzariak fidatzen duen katea behar ditu; horietako bat falta denean, autentifikazioak huts egiten du xehetasun erabilgarririk gabe, beraz egiaztatu biltegia lehenengo:
Get-ChildItem Cert:\LocalMachine\My |
Where-Object { $_.HasPrivateKey -and $_.NotAfter -gt (Get-Date) } |
Select-Object Subject, Issuer, Thumbprint, NotAfterMantendu sekretuak script fitxategitik kanpo. Komando-lerroan pasatako edo .ps1 batean txertatutako PSK bat transkripzioetara, gordetako saioetara eta biltegi partekatuetara iristen da, eta -RememberCredential-ek erabiltzaile-kredentzialak gordetzen ditu geroagorako, behin-behineko proba bat emate iraunkor bihurtuz.
4. urratsa: erabaki esparrua lehen exekuzioa baino lehen
Cmdlet berak bi agenda ezberdinetan idazten du. -AllUserConnection gabe profila zurea da eta %APPDATA%\Microsoft\Network\Connections\Pbk\rasphone.pbk azpian dago. Harekin, gonbidatutako komando-leiho batetik, profila %ProgramData%\Microsoft\Network\Connections\Pbk\rasphone.pbk-ra joaten da eta kontu guztiek ikus dezakete, saioa hasteko pantailak barne.
Esparrua ez da kosmetikoa. Erabiltzaile guztientzako profila da zerbitzu-kontu batek, programatutako ataza batek edo saioa hasi aurreko egoera batek erabil dezakeena; erabiltzaile bakarreko profila horientzat ikusezina da. Objektuak ere desberdin irakurtzen dira: Get-VpnConnection-ek uneko erabiltzailearen sarrerak zerrendatzen ditu, Get-VpnConnection -AllUserConnection-ek makina osokoak. Aukeratu bat orain, eta tratatu geroagoko aldaketa ezabatu eta berriz sortze gisa, editatze gisa baino:
# elevated prompt
Remove-VpnConnection -Name "Corp IKEv2" -Force
Add-VpnConnection -Name "Corp IKEv2" -ServerAddress "vpn.example.com" `
-TunnelType Ikev2 -AuthenticationMethod MachineCertificate `
-EncryptionLevel Required -AllUserConnection5. urratsa: probatu tunelek benetan eman behar dutena
Konektatutako ikonoak tunela altxatu zela frogatzen du, eta besterik ez. Konektatu lehenengo komando-lerrotik, hutsegiteak testu gisa iritsi daitezen, elkarrizketa-koadro baten ordez, eta gero irakurri Windowsek gordetakoa:
rasdial "Corp IKEv2"
Get-VpnConnection -Name "Corp IKEv2" |
Select-Object Name, ServerAddress, TunnelType, ConnectionStatus, SplitTunneling
Get-NetRoute -DestinationPrefix "0.0.0.0/0"Erabiltzaileek Connected egoerak dirauen bitartean salatzen dituzten bi hutsegiteak DNSa eta bideratzea dira. Barneko izen bat ebatzi eta egiaztatu zein zerbitzarik erantzun zion; -DnsSuffix gabeko profil batek tunel ezin hobea izan dezake eta intranet-eko bilaketa guztiek huts egin. Ondoren, begiratu lehenespenezko bidea: split tunneling itzalita, metrika gutxieneko 0.0.0.0/0 bidea VPN interfazean sartu behar da, eta piztuta, espero dituzun aurrizkiak soilik. Biak ondo badaude eta trafikoak oraindik hiltzen badu, arazoa profilaz harago dago, politikan edo gatewayaren iragazkian.
Konexioak erabat huts egiten duenean, kodeak zehazten du zein urrats berriro bisitatu:
- 691: gatewayak kredentzialak baztertu zituen. Itzuli 3. urratsera, ez tunelera.
- 809: IKEv2 eskuko keinua ez zen inoiz osatu. Egiaztatu UDP 500 eta 4500, eta ziurtagirien konfiantza.
- 789: L2TP/IPsec aurrez partekatutako gakoa falta da edo okerra da.
- 868: zerbitzari-izenak ez zuen ebatzi. Konpondu DNSa profila editatu aurretik.
Mantendu funtzionatzen duen komandoa kokatzen dituen ezarpenen ondoan, hurrengo pertsonak berreraiki ahal izateko, profila UI-tik alderantziz ingeniaritzen ibili beharrean. Berreraiki behar baduzu, ezabatu sarrera eta sortu berriro parametro berberekin; erdi konfiguratutako profila adabakiz konpontzeak bide zaharkituak eta autentifikazio-egoera uzten ditu atzean. Eta fitxategia ez bazen inoiz natiboa izan, itzuli jabea duen bezerora. IKEv2 profil gisa jantzitako .ovpn bat ez da inportazio bat, laguntza-txartel bat baizik.