Add-VpnConnection: PSK ਕਿਉਂ ਟੁੱਟਦੀ ਹੈ ਅਤੇ ਪਤਾ ਕਿਉਂ ਪੁਰਾਣਾ ਰਹਿੰਦਾ ਹੈ
PowerShell ਦੋਹਰੇ ਹਵਾਲਾ ਚਿੰਨ੍ਹਾਂ ਵਿੱਚਲੀ ਪਹਿਲਾਂ-ਸਾਂਝੀ ਕੁੰਜੀ ਨੂੰ cmdlet ਦੇ ਸੰਭਾਲਣ ਤੋਂ ਪਹਿਲਾਂ ਫੈਲਾ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਚੱਲ ਰਹੀ ਸੁਰੰਗ ਮੁੜ ਜੁੜਨ ਤੱਕ ਪੁਰਾਣਾ ਪਤਾ ਰੱਖਦੀ ਹੈ।
Windows VPN ਪ੍ਰੋਫਾਈਲ ਫ਼ੋਨਬੁੱਕ ਦੀ ਇੱਕ ਐਂਟਰੀ ਹੈ, ਅਤੇ PowerShell ਉਸ ਐਂਟਰੀ ਨੂੰ ਸੋਧਣ ਦਾ ਇੱਕ ਤਰੀਕਾ ਹੈ। ਇਸ ਫ਼ਰਕ ਤੋਂ ਦੋ ਨਾਕਾਮੀਆਂ ਆਉਂਦੀਆਂ ਹਨ: ਸਰਵਰ ਤੇ ਪਹੁੰਚਦਿਆਂ ਹੀ ਖਰਾਬ ਹੋ ਚੁੱਕੀ ਪਹਿਲਾਂ-ਸਾਂਝੀ ਕੁੰਜੀ, ਅਤੇ ਅਪਡੇਟ ਦਿਸਦਾ ਪਰ ਅਗਲੀ ਸੁਰੰਗ ਜਿਸ ਤੇ ਡਾਇਲ ਕਰੇਗੀ ਉਹ ਨਾ ਹੋਣ ਵਾਲਾ ਸਰਵਰ ਪਤਾ। ਪ੍ਰੋਫਾਈਲ ਨੂੰ ਤੁਹਾਡੇ ਚਲਾਏ ਹੁਕਮ ਵਜੋਂ ਨਹੀਂ, ਸੰਭਾਲੀ ਹਾਲਤ ਵਜੋਂ ਦੇਖਣ ਨਾਲ ਦੋਵੇਂ ਸੌਖੇ ਦਿਸਦੇ ਹਨ। ਵਰਣਨ ਸੋਧਾਂ ਦੇ ਕ੍ਰਮ ਵਿੱਚ ਚੱਲਦਾ ਹੈ: ਬਣਾਉਣਾ, ਬਦਲਣਾ, ਦਾਇਰਾ, ਮੁੜ ਪੜ੍ਹਨਾ।
ਸ਼ਬਦੀ ਕੁੰਜੀ ਨਾਲ ਪ੍ਰੋਫਾਈਲ ਬਣਾਓ
Add-VpnConnection L2TP ਪਹਿਲਾਂ-ਸਾਂਝੀ ਕੁੰਜੀ -L2tpPsk ਰਾਹੀਂ ਲੈਂਦਾ ਹੈ। PowerShell ਉਸ ਸਤਰ ਨੂੰ cmdlet ਦੇ ਮਿਲਣ ਤੋਂ ਪਹਿਲਾਂ ਹੀ ਪਰੋਸੈਸ ਕਰਦਾ ਹੈ, ਅਤੇ ਦੋਹਰੇ ਹਵਾਲਾ ਚਿੰਨ੍ਹਾਂ ਵਿੱਚ ਡਾਲਰ ਚਿੰਨ੍ਹ ਚਰ ਦਾ ਹਵਾਲਾ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ ਜਦਕਿ backtick ਐਸਕੇਪ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ। ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਹੋਣ ਤੇ ਕੁੰਜੀ ਛੋਟੀ ਜਾਂ ਹੋਰ ਅੱਖਰ ਨਾਲ ਆਉਂਦੀ ਹੈ, ਅਤੇ ਪ੍ਰੋਫਾਈਲ ਗ਼ਲਤ ਭੇਤ ਨਾਲ ਸਫਲਤਾਪੂਰਵਕ ਬਣ ਜਾਂਦਾ ਹੈ।
ਫਿਰ ਨਾਕਾਮੀ IPsec ਪ੍ਰਮਾਣਿਕਤਾ ਵਿੱਚ ਦਿਸਦੀ ਹੈ, ਜਿੱਥੇ ਸੁਰੰਗ ਉੱਠਣ ਤੋਂ ਇਨਕਾਰ ਕਰਦੀ ਹੈ। ਇਸੇ ਲਈ ਹਵਾਲਾ ਚਿੰਨ੍ਹ ਦੀ ਗ਼ਲਤੀ ਨੂੰ ਸਰਵਰ-ਪਾਸੇ ਦੀ ਸਮੱਸਿਆ ਵਜੋਂ ਇੰਨੀ ਵਾਰ ਦਰਜ ਕੀਤਾ ਜਾਂਦਾ ਹੈ: ਪ੍ਰੋਫਾਈਲ ਹੈ, ਨਾਮ ਸਹੀ ਹੈ, ਅਤੇ ਭੇਤ ਚੁੱਪਚਾਪ ਗ਼ਲਤ ਹੈ।
| How you write it | What PowerShell does | Result |
|---|---|---|
| "p@ss$word!42" | Expands $word as a variable | Stored key is truncated |
| Double-quoted with an escape character | Consumes the next character as an escape | One character disappears |
| 'p@ss$word!42' | Keeps the literal characters | Stored key matches the secret |
ਇੱਕਲੇ ਹਵਾਲਾ ਚਿੰਨ੍ਹ ਹੀ ਹੱਲ ਹਨ, ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਪੂਰਾ ਮੁੱਲ ਘੇਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਜੇ ਐਂਟਰੀ ਪਹਿਲਾਂ ਹੀ ਖ਼ਰਾਬ ਕੁੰਜੀ ਨਾਲ ਹੈ, -Force ਉਹਨੂੰ ਬਦਲ ਦਿੰਦਾ ਹੈ, ਜਾਂ ਪ੍ਰੋਫਾਈਲ ਹਟਾ ਕੇ ਮੁੜ ਬਣਾਓ ਅਤੇ ਫਿਰ ਨਵੇਂ ਕਨੈਕਸ਼ਨ ਨਾਲ ਜਾਂਚੋ:
Add-VpnConnection -Name "Contoso-L2TP" -ServerAddress vpn.contoso.example -TunnelType L2tp -L2tpPsk 'n3w$ecret!2026' -AuthenticationMethod Pap -RememberCredential -Force
ਅਸਲ ਭੇਤ ਨੂੰ shell ਇਤਿਹਾਸ ਅਤੇ ਸਾਂਝੀਆਂ ਸਕ੍ਰਿਪਟਾਂ ਤੋਂ ਬਾਹਰ ਰੱਖੋ। ਚਲਾਉਣ ਵੇਲੇ ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਭੰਡਾਰ ਤੋਂ ਪੜ੍ਹੋ ਅਤੇ ਸ਼ਬਦੀ ਮੁੱਲ ਦੀ ਥਾਂ ਚਰ ਭੇਜੋ, ਜੋ ਹਵਾਲਾ ਚਿੰਨ੍ਹ ਦੀ ਸਮੱਸਿਆ ਨੂੰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਟਾਲਦਾ ਹੈ।
ਪਤਾ ਬਦਲੋ, ਫਿਰ ਮੁੜ ਜੁੜੋ
Set-VpnConnection ਖਾਲੀ ਥਾਂ ਨਾਲ ਵੱਖ ਕੀਤੇ ਪੈਰਾਮੀਟਰ ਲੈਂਦਾ ਹੈ, ਅਸਾਈਨਮੈਂਟ ਸਿੰਟੈਕਸ ਨਹੀਂ। -ServerAddress = "203.0.113.10" ਲਿਖਣ ਨਾਲ ਵਾਧੂ ਟੋਕਨ ਜਾਂਦਾ ਹੈ, ਅਤੇ cmdlet ਜਾਂ ਤਾਂ ਗ਼ਲਤੀ ਦਿੰਦਾ ਹੈ ਜਾਂ ਉਹ ਸੰਭਾਲਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ ਸੀ। ਸਹੀ ਰੂਪ -Name "Office L2TP" -ServerAddress 203.0.113.10 ਹੈ।
ਸਹੀ ਸਿੰਟੈਕਸ ਨਾਲ ਵੀ ਬਦਲਾਅ ਪਹਿਲਾਂ ਹੀ ਉੱਠੀ ਸੁਰੰਗ ਤੱਕ ਨਹੀਂ ਪਹੁੰਚਦਾ। ਸਥਾਪਿਤ ਕਨੈਕਸ਼ਨ ਜਿਸ ਪਤੇ ਤੇ ਡਾਇਲ ਕੀਤਾ ਸੀ ਉਹ ਕੱਟਣ ਤੱਕ ਰੱਖਦਾ ਹੈ, ਇਸ ਲਈ ਉਹੀ ਸੈਸ਼ਨ ਜਾਂਚਣ ਨਾਲ ਨਵੇਂ ਮੁੱਲ ਬਾਰੇ ਕੁਝ ਸਾਬਤ ਨਹੀਂ ਹੁੰਦਾ। ਕੱਟੋ, ਸੋਧੋ, ਮੁੜ ਜੁੜੋ, ਅਤੇ ਕਨੈਕਸ਼ਨ ਵੇਰਵਿਆਂ ਵਿੱਚ ਸਾਥੀ ਦਾ ਪਤਾ ਪੱਕਾ ਕਰੋ।
ਕੁਝ ਗੁਣ ਉਥੇ ਹੀ ਬਦਲੇ ਨਹੀਂ ਜਾ ਸਕਦੇ। cmdlet ਮਨਾਹੀ ਕਰੇ ਤਾਂ ਮੌਜੂਦਾ ਪੈਰਾਮੀਟਰ ਲਿਖ ਲਓ, ਪ੍ਰੋਫਾਈਲ ਮਿਟਾ ਕੇ ਸੋਧੇ ਮੁੱਲਾਂ ਨਾਲ ਮੁੜ ਬਣਾਓ, ਅਤੇ ਮੂਲ ਸੁਰੰਗ ਤੇ ਪ੍ਰਮਾਣਿਕਤਾ ਸੈਟਿੰਗਾਂ ਰੱਖੋ। ਸਿਰਫ਼ ਫ਼ੋਨ ਨੰਬਰ ਬਦਲਣਾ ਹੋਣ ਵਾਲੀ ਸਕ੍ਰਿਪਟ ਸਭ ਕੁਝ ਮੁੜ ਬਣਾਉਣ ਦੀ ਥਾਂ RAS API ਰਾਹੀਂ ਫ਼ੋਨਬੁੱਕ ਐਂਟਰੀ ਸੋਧ ਸਕਦੀ ਹੈ। ਕੋਈ ਵੀ ਰਾਹ ਲਵੋ, ਬਾਅਦ ਵਿੱਚ ਸੰਭਾਲੇ ਮੁੱਲ ਪੱਕੇ ਕਰੋ, ਹੁਕਮ ਦੀ ਚੁੱਪ ਤੇ ਭਰੋਸਾ ਨਾ ਕਰੋ।
ਜਾਣੋ ਕਿਹੜੀ ਫ਼ੋਨਬੁੱਕ ਸੋਧੀ
ਹਰ ਵਰਤੋਂਕਾਰ ਦਾ ਪ੍ਰੋਫਾਈਲ ਉਸ ਵਰਤੋਂਕਾਰ ਦੀ ਨੈੱਟਵਰਕ ਕਨੈਕਸ਼ਨ ਫੋਲਡਰ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ, ਅਤੇ ਸਾਰੇ ਵਰਤੋਂਕਾਰਾਂ ਦਾ ਪ੍ਰੋਫਾਈਲ ਪ੍ਰੋਗਰਾਮ ਡੇਟਾ ਦਰਖ਼ਤ ਹੇਠਾਂ ਮਸ਼ੀਨ-ਵਿਆਪੀ ਫੋਲਡਰ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ। ਇਹ ਵੱਖਰੇ ਦਾਇਰਿਆਂ ਦੀਆਂ ਵੱਖਰੀਆਂ ਐਂਟਰੀਆਂ ਹਨ, ਅਤੇ ਇੱਕ ਸੋਧਣ ਨਾਲ ਦੂਜੀ ਅਛੂਤ ਰਹਿੰਦੀ ਹੈ।
ਇਸੇ ਲਈ ਬਦਲਾਅ ਗਾਇਬ ਹੋਇਆ ਜਾਪ ਸਕਦਾ ਹੈ: ਸਕ੍ਰਿਪਟ ਇੱਕ ਖਾਤੇ ਵਿੱਚ ਚੱਲੀ ਅਤੇ ਜਾਂਚ ਦੂਜੇ ਵਿੱਚ। ਪ੍ਰੋਫਾਈਲ ਮਸ਼ੀਨ ਦਾ ਹੋਵੇ ਤਾਂ -AllUserConnection ਵਰਤੋ, ਅਤੇ ਮੁੜ ਪੜ੍ਹਦਿਆਂ ਉਹੀ ਦਾਇਰਾ ਜਾਂਚੋ।
ਜਾਂਚ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰੋਫਾਈਲ ਮੁੜ ਪੜ੍ਹੋ
ਤੁਸੀਂ ਕੀ ਭੇਜਿਆ ਨਹੀਂ, Windows ਨੇ ਕੀ ਸੰਭਾਲਿਆ ਪੁੱਛੋ:
Get-VpnConnection -Name "Office L2TP" | Select-Object Name, ServerAddress, TunnelType, AuthenticationMethod
ਉਸ ਆਊਟਪੁੱਟ ਦੀ ਇਰਾਦੇ ਨਾਲ ਤੁਲਨਾ ਕਰੋ, ਫਿਰ ਨਵਾਂ ਕਨੈਕਸ਼ਨ ਸ਼ੁਰੂ ਕਰੋ। ਡਾਇਲ ਫੇਲ੍ਹ ਹੋਵੇ ਤਾਂ ਪ੍ਰੋਫਾਈਲ ਮੁੜ ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ Event Viewer ਵਿੱਚ RAS ਕਲਾਇੰਟ ਲੌਗ ਵੇਖੋ, ਕਿਉਂਕਿ ਲੌਗ ਫੇਲ੍ਹ ਹੋਏ ਪੜਾਅ ਦਾ ਨਾਮ ਦੱਸਦਾ ਹੈ।
ਸੋਧਦਿਆਂ ਪ੍ਰਮਾਣਿਕਤਾ ਦਾ ਢਾਂਚਾ ਅਟੁੱਟ ਰੱਖੋ। ਜੋ ਹੁਕਮ ਪਤਾ ਬਦਲਦਾ ਹੈ ਪਰ ਸਰਟੀਫਿਕੇਟ ਜਾਂ EAP ਸੰਰਚਨਾ ਛੱਡ ਦਿੰਦਾ ਹੈ, ਉਹ ਸੋਧ ਨਾਲ ਬੇਸੰਬੰਧ ਜਾਪਣ ਵਾਲੀ ਨਾਕਾਮੀ ਲਿਆਉਂਦਾ ਹੈ, ਅਤੇ ਚੱਲਦਾ ਪ੍ਰੋਫਾਈਲ ਪਹਿਲਾਂ ਨਿਰਯਾਤ ਕਰਨ ਨਾਲ ਅੰਦਾਜ਼ੇ ਦੀ ਥਾਂ ਬਹਾਲ ਕਰਨ ਲਈ ਕੁਝ ਮਿਲਦਾ ਹੈ।