PowerShell માં મશીન સર્ટિફિકેટ સાથે IKEv2 VPN બનાવો
સર્ટિફિકેટનું સ્થાન, રૂટ પ્રિફિક્સ અને EAP ક્રેડેન્શિયલ એ જ જગ્યાઓ છે જ્યાં IKEv2 સ્ક્રિપ્ટ નિષ્ફળ જાય છે. PowerShell માં ટનલ બનાવો અને દરેક તબક્કો અલગથી ચકાસો.
Windows એક IKEv2 ક્લાયન્ટ આપે છે જેને PowerShell શરૂઆતથી અંત સુધી નિયંત્રિત કરે છે, તેથી કાર્યક્ષમ ટનલને GUI કે તૃતીય-પક્ષ સોફ્ટવેરની જરૂર નથી. લગભગ દરેક નિષ્ફળતા ત્રણ જગ્યાઓથી આવે છે: સર્ટિફિકેટ ક્યાં પહોંચ્યું, રૂટ પ્રિફિક્સ કેવી રીતે લખાયા અને પસંદ કરેલી EAP પદ્ધતિ શું અપેક્ષા રાખે છે. તેમને એ જ ક્રમમાં સંભાળો, કારણ કે દરેક આગળના શરૂ થવા પહેલાં ચકાસી શકાય છે અને પછીની ભૂલ પહેલાની ભૂલને ઢાંકી દેશે.
મશીન-સર્ટિફિકેટ ટનલ એટલા માટે હોય છે કે કોઈ લોગિન કરે તે પહેલાં શરૂ થાય, તેથી ઓળખ સામાન્ય રીતે વપરાશકર્તાના સ્ટોરને બદલે કમ્પ્યુટરના સ્ટોરમાં રહેવી પડે છે.
પહેલા સર્ટિફિકેટ, પછી ટનલ
બે આયાત મહત્વપૂર્ણ છે. ક્લાયન્ટ ઓળખ Import-PfxCertificate દ્વારા Cert:\LocalMachine\My માં જાય છે, અને જારી કરનાર CA Import-Certificate દ્વારા Cert:\LocalMachine\Root માં જાય છે. એકલું લીફ સર્ટિફિકેટ કોઈ સાંકળ સાબિત કરતું નથી, તેથી બીજી આયાત છોડી દેવાથી ચકાસણી પાસે બાંધવા જેવું કંઈ રહેતું નથી. હાજરી ઉપરાંત, ખાનગી કી જોડાયેલી હોવી જોઈએ અને કમ્પ્યુટર ખાતાને તે વાંચવાની પરવાનગી હોવી જોઈએ. Get-ChildItem Cert:\LocalMachine\My યાદી બતાવે છે કે શું આવ્યું; વિષયોને બદલે થમ્બપ્રિન્ટની સરખામણી કરો, કારણ કે લગભગ સમાન વિષયો સામાન્ય છે.
તૈનાત કરતા પહેલાં વિસ્તૃત કી વપરાશ ચકાસો. IKEv2 મશીન ઓળખ માટે ક્લાયન્ટ પ્રમાણીકરણ સામાન્ય જરૂરિયાત છે, અને સામેની બાજુએ તે CA પર ભરોસો રાખવો પડે છે જેણે તેને સહી કરી છે. વપરાશકર્તાના સ્ટોરમાં રહેલી ઓળખ કમ્પ્યુટર-સંદર્ભના કનેક્શન માટે અસ્તિત્વ ધરાવતી નથી.
પ્રોફાઇલ અને તેના રૂટ બનાવો
Add-VpnConnection -Name "Office IKEv2" -ServerAddress vpn.example.com -TunnelType Ikev2 -EncryptionLevel Required -AuthenticationMethod MachineCertificate -AllUserConnection પ્રોફાઇલ લખે છે. -AllUserConnection સ્વિચ તેને વૈશ્વિક ફોન બુકમાં પ્રકાશિત કરે છે, જે વહેંચાયેલા કે સેવા-સંચાલિત બોક્સ માટે યોગ્ય છે; એક વપરાશકર્તા માટે તેને છોડી દો. તમે પસાર કરો તે કોઈપણ સરનામું સર્વરના સર્ટિફિકેટમાંના DNS નામ સાથે મેળ ખાવું જોઈએ, નહીં તો ટનલ પહેલેથી ઊભી થયા પછી ભૂલ દેખાય છે. પછી પ્રિફિક્સ એક-એક કરીને Add-VpnConnectionRoute સાથે ઉમેરાય છે, અને ફક્ત તે જ જે ડિઝાઇનને ખરેખર જોઈએ.
IPv6 માં એક વિચિત્રતા છે: Windows ::/0 ને VPN રૂટ તરીકે નકારે છે, તેથી ::/1 અને 8000::/1 મળીને સમાન સરનામા જગ્યા આવરી લે છે. પ્રિફિક્સ રૂટ કરવાથી દૂરના ફાયરવોલ પર પણ કંઈ મળતું નથી, તેથી પ્રિફિક્સ યાદી અને ફાયરવોલ નીતિ અલગ દસ્તાવેજો રહે છે.
ક્રેડેન્શિયલ પ્રમાણીકરણ પદ્ધતિના છે
મશીન-સર્ટિફિકેટ પ્રોફાઇલને વપરાશકર્તાનું કોઈ રહસ્ય જોઈતું નથી, જ્યારે EAP-MSCHAPv2 પ્રોફાઇલને જોઈએ છે. બીજા કિસ્સા માટે VPNCredentialsHelper મોડ્યુલ Set-VpnConnectionUsernamePassword પ્રદાન કરે છે, અને તે સાદું ટેક્સ્ટ માગે છે: $cred.Password એ SecureString છે, તેથી પહેલા GetNetworkCredential().Password વડે તેને ખોલો. જ્યાં પણ આદેશ ચાલે ત્યાં મોડ્યુલ સ્થાપિત કરો, ફક્ત જ્યાં તે લખાયું હતું તે વર્કસ્ટેશન પર નહીં. EAP-TLS કે કસ્ટમ પદ્ધતિ આ cmdlet બિલકુલ વાપરતી નથી; તેના બદલે EAP રૂપરેખાંકન XML લે છે.
rasdial "Office IKEv2" શેલમાંથી કનેક્શન ઉઠાવે છે, અને ઇવેન્ટ લોગને બદલે અગ્રભૂમિમાં પરિણામ જોવાનો આ સૌથી ઝડપી રસ્તો છે.
જોડાયેલી ટનલ શું સાબિત કરતી નથી
જોડાયેલ સ્થિતિ IKE વિનિમય અને પ્રમાણીકરણ પગલું આવરી લે છે, અને તેનાથી આગળ કંઈ નહીં. DNS વર્તન, ખાનગી હોસ્ટ સુધીનો માર્ગ અને દૂરનો ફાયરવોલ બધા હજી સાબિત થયા નથી. બહાર તરફ કામ કરો: ટનલ એડેપ્ટર, પછી ખાનગી સરનામા માટે રૂટ શોધ, પછી એક સેવા જેનો તમને ઉપયોગ કરવાનો અધિકાર છે. જે પ્રથમ અવલોકન નિષ્ફળ જાય છે તે તપાસવાનો સ્તર દર્શાવે છે.
જ્યારે પ્રોફાઇલ બદલો ત્યારે Remove-VpnConnection -Name "Office IKEv2" -Force વડે અગાઉની પ્રોફાઇલ ભૂંસી નાખો, પછી ફરી બનાવો; નહીં તો સંપાદન પછી પણ જૂની સેટિંગ્સ અને રૂટ રહી જાય છે. જો તે હજી પણ જોડાય નહીં, તો પ્રોફાઇલમાં નોંધાયેલી થમ્બપ્રિન્ટને સ્ટોરમાંની સાથે સરખાવો, કારણ કે Windows અપરિવર્તિત વિષય હેઠળ વચ્ચે બદલાયેલી ઓળખનો સંદર્ભ રાખી શકે છે.
થમ્બપ્રિન્ટ, EAP પદ્ધતિ અને રૂટ યાદી પ્રોફાઇલની બાજુમાં રાખો. સાથે મળીને તે પછીથી જે ખોટું જાય છે તેનો મોટો ભાગ સમજાવે છે.