Linux VPN ਕਲਾਇੰਟ ਨੂੰ ਪੁਰਾਣੇ ਯੰਤਰ ਦੇ ਪ੍ਰੋਟੋਕੋਲ ਨਾਲ ਮਿਲਾਓ
ਯੰਤਰ ਦੇ ਪ੍ਰਕਾਸ਼ਿਤ ਪੋਰਟ ਪੜ੍ਹੋ, ਫਿਰ ਮੇਲ ਖਾਂਦਾ ਕਲਾਇੰਟ ਇੰਸਟਾਲ ਕਰੋ: GRE ਉੱਤੇ pppd, IKEv1 XAuth ਲਈ strongSwan, ਜਾਂ ਪੋਰਟਲ ਲਈ openconnect.
ਚਾਰ ਪ੍ਰੋਟੋਕੋਲ ਪਰਿਵਾਰ ਰੈਕ ਵਿੱਚ ਅਜੇ ਵੀ ਖੜ੍ਹੇ ਲਗਭਗ ਹਰ ਯੰਤਰ ਨੂੰ ਕਵਰ ਕਰਦੇ ਹਨ, ਅਤੇ ਹਰ ਇੱਕ Linux ਉੱਤੇ ਵੱਖਰੇ ਢੰਗ ਨਾਲ ਫੇਲ੍ਹ ਹੁੰਦਾ ਹੈ। ਤੁਹਾਨੂੰ ਕਿਹੜਾ ਪੈਕੇਜ ਚਾਹੀਦਾ ਹੈ ਇਹ ਦੂਰੋਂ ਪ੍ਰਕਾਸ਼ਿਤ ਪੋਰਟਾਂ ਅਤੇ ਸੰਰਚਿਤ ਪ੍ਰਸਤਾਵ ਤੈਅ ਕਰਦੇ ਹਨ, ਤੁਸੀਂ ਸੰਜੋਗ ਨਾਲ ਚਲਾ ਰਹੀ ਡਿਸਟਰੀਬਿਊਸ਼ਨ ਨਹੀਂ। ਫੋਰਮ ਦੀ ਪੋਸਟ ਵਿੱਚ ਲਿਖਿਆ ਇੰਸਟਾਲ ਕਰਕੇ ਫਿਰ ਕੁਝ ਜੁੜਨ ਤੱਕ ਸੋਧ ਕਰਨਾ — ਇਸੇ ਤਰ੍ਹਾਂ ਇੱਕ ਦੁਪਹਿਰ ਬੀਤ ਜਾਂਦੀ ਹੈ। ਯੰਤਰ ਪੜ੍ਹੋ, ਦੂਜੇ ਵਿੱਚ ਇੰਸਟਾਲ ਕਰੋ, ਤੀਜੇ ਵਿੱਚ ਪੜਤਾਲ ਕਰੋ।
ਦੂਰੋਂ ਕੀ ਪ੍ਰਕਾਸ਼ਿਤ ਹੁੰਦਾ ਹੈ ਇਹ ਦਰਜ ਕਰੋ
ਪੈਕੇਜ ਮੈਨੇਜਰ ਖੋਲ੍ਹਣ ਤੋਂ ਪਹਿਲਾਂ ਯੰਤਰ ਵੱਲੋਂ ਉਮੀਦ ਕੀਤੇ ਪ੍ਰੋਟੋਕੋਲ, ਪੋਰਟਾਂ ਅਤੇ ਪ੍ਰਮਾਣਿਕਤਾ ਲਿਖੋ। ਚਾਰ ਪਰਿਵਾਰ ਪੁਰਾਣੇ ਉਪਕਰਣਾਂ ਦਾ ਵੱਡਾ ਹਿੱਸਾ ਕਵਰ ਕਰਦੇ ਹਨ, ਅਤੇ ਹੇਠਾਂ ਦਿੱਤੀ ਸਾਰਣੀ ਇੱਕ ਸਕ੍ਰੀਨ ਉੱਤੇ ਪੂਰਾ ਫੈਸਲਾ ਹੈ।
| Family | Ports | Linux side |
|---|---|---|
| PPTP | TCP 1723 plus GRE, IP protocol 47 | pppd with a peer file |
| L2TP/IPsec | UDP 500, 4500, 1701 | NetworkManager plugin over strongSwan |
| IKEv1 aggressive with XAuth | UDP 500 | native strongSwan connection |
| AnyConnect-style portal | TCP 443 | openconnect with a TUN device |
ਯੰਤਰ ਦਾ ਮੈਨੂਅਲ ਅਤੇ ਇਸਦੇ ਆਪਣੇ ਫਾਇਰਵਾਲ ਨਿਯਮ ਇਸਦੇ ਲੌਗਇਨ ਸਫ਼ੇ ਉੱਤੇ ਲਿਖੇ ਪ੍ਰੋਟੋਕੋਲ ਨਾਮ ਨਾਲੋਂ ਵੱਧ ਭਰੋਸੇਯੋਗ ਹਨ। IPsec ਦਾ ਪ੍ਰਚਾਰ ਕਰਨ ਵਾਲਾ ਯੰਤਰ ਸਿਰਫ਼ IKEv1 ਬੋਲ ਸਕਦਾ ਹੈ, ਅਤੇ ਕਿਸੇ ਨੇ ਲਾਗੂ ਨਾ ਕੀਤਾ ਫਰਮਵੇਅਰ ਰੀਲੀਜ਼ ਹੀ ਅੰਤ ਵਿੱਚ IKEv2 ਜੋੜਨ ਵਾਲਾ ਹੋ ਸਕਦਾ ਹੈ। ਡੇਟਾ ਮਾਰਗ ਅਤੇ ਸੈਟਅਪ ਪੋਰਟ ਦੋਵਾਂ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ, ਕਿਉਂਕਿ ਇੱਥੇ ਹੀ ਪੁਰਾਣਾ ਉਪਕਰਣ ਅਤੇ ਆਧੁਨਿਕ ਨੈੱਟਵਰਕ ਵੱਖਰੇ ਹੁੰਦੇ ਹਨ। ਇਸ ਕਦਮ ਵਿੱਚ ਗਲਤੀ ਦਾ ਮਤਲਬ ਹੈ ਦੂਜੇ ਸਿਰੇ ਕੋਲ ਕਦੇ ਨਾ ਰਹੀ ਸੁਵਿਧਾ ਦੇ ਵਿਰੁੱਧ ਆਪਣੇ ਕਲਾਇੰਟ ਨੂੰ ਡੀਬੱਗ ਕਰਨਾ।
PPTP: pppd ਸੋਧਣ ਤੋਂ ਪਹਿਲਾਂ GRE ਸਾਬਤ ਕਰੋ
Linux ਉੱਤੇ PPTP ਉਹ ਡੈਮਨ ਨਹੀਂ ਜੋ ਤੁਸੀਂ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋ, ਸਗੋਂ pppd ਦੀ ਕਾਲ ਹੈ, ਅਤੇ ਕਨੈਕਸ਼ਨ ਦੇ ਮਾਪਦੰਡ pppd ਵੱਲੋਂ ਬੁਲਾਏ ਜਾਣ ਸਮੇਂ ਪੜ੍ਹੀ ਜਾਣ ਵਾਲੀ ਨਾਮ ਵਾਲੀ peer ਫਾਈਲ ਵਿੱਚ ਰਹਿੰਦੇ ਹਨ। ਡਿਸਟਰੀਬਿਊਸ਼ਨ ਅਜੇ ਵੀ ਇਸਨੂੰ ਪੈਕੇਜ ਕਰਦੇ ਹਨ, ਭਾਵੇਂ ਪ੍ਰੋਟੋਕੋਲ ਦੀਆਂ ਜਾਣੀਆਂ ਕਮਜ਼ੋਰੀਆਂ ਇਸਨੂੰ ਕਿਸੇ ਵੀ ਸੰਵੇਦਨਸ਼ੀਲ ਚੀਜ਼ ਲਈ ਅਣਉਚਿਤ ਬਣਾਉਂਦੀਆਂ ਹਨ, ਇਸ ਲਈ ਇਸਨੂੰ ਸਿਰਫ਼ ਉਸ ਯੰਤਰ ਲਈ ਸਖ਼ਤੀ ਨਾਲ ਰੱਖੋ ਜੋ ਹੋਰ ਕੁਝ ਨਹੀਂ ਦਿੰਦਾ। ਕਲਾਇੰਟ ਦੇ ਗੱਲਬਾਤ ਕਰਦਿਆਂ GRE ਵੱਲ ਧਿਆਨ ਦਿਓ, ਅੰਦਾਜ਼ੇ ਦੀ ਥਾਂ ਛੋਟੇ ਕੈਪਚਰ ਨਾਲ। ਸਭ ਤੋਂ ਵੱਧ ਸਮਾਂ ਬਰਬਾਦ ਕਰਨ ਵਾਲੀ ਅਸਫਲਤਾ ਪ੍ਰਮਾਣਿਕਤਾ ਨਹੀਂ, ਸਗੋਂ ਗੁੰਮ ਡੇਟਾ ਮਾਰਗ ਹੈ।
pppd call branch-office
tcpdump -ni any proto gre -c 5
ਜੇ ਸੈਟਅਪ ਪੂਰਾ ਹੋਵੇ ਅਤੇ ਲਿੰਕ ਕਦੇ ਟ੍ਰੈਫਿਕ ਨਾ ਢੋਵੇ, ਤਾਂ ਪ੍ਰਮਾਣ-ਪੱਤਰ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ GRE ਮਾਰਗ ਉੱਤੇ ਸ਼ੱਕ ਕਰੋ। ਕਲਾਊਡ ਸੁਰੱਖਿਆ ਗਰੁੱਪਾਂ ਨੂੰ ਪ੍ਰੋਟੋਕੋਲ 47 ਲਈ ਸਪੱਸ਼ਟ ਨਿਯਮ ਚਾਹੀਦਾ ਹੈ, ਅਤੇ ਕੁਝ ਨੈੱਟਵਰਕ ਇਸਨੂੰ ਦਿੱਖਣ ਵਾਲੀ ਗਲਤੀ ਤੋਂ ਬਿਨਾਂ ਪੂਰੀ ਤਰ੍ਹਾਂ ਰੋਕਦੇ ਹਨ। ਉਸ ਨੈੱਟਵਰਕ ਤੋਂ ਟੈਸਟ ਕਰੋ ਜੋ ਤੁਸੀਂ ਅਸਲ ਵਿੱਚ ਵਰਤੋਗੇ, ਸਭ ਕੁਝ ਮਨਜ਼ੂਰ ਕਰਨ ਵਾਲੀ ਪ੍ਰਯੋਗਸ਼ਾਲਾ ਤੋਂ ਨਹੀਂ।
L2TP/IPsec: ਇੱਕ ਮੇਲ ਖਾਂਦਾ ਪ੍ਰਸਤਾਵ ਦਸ ਕੋਸ਼ਿਸ਼ਾਂ ਨੂੰ ਹਰਾਉਂਦਾ ਹੈ
ਡੈਸਕਟਾਪ ਸੰਵਾਦ ਦੀ ਥਾਂ ਡੈਮਨ ਲੌਗ ਪੜ੍ਹੋ, ਕਿਉਂਕਿ ਸੰਵਾਦ ਕਈ ਵੱਖਰੀਆਂ ਅਸਫਲਤਾਵਾਂ ਨੂੰ ਇੱਕ ਸੁਨੇਹੇ ਵਿੱਚ ਜੋੜ ਦਿੰਦਾ ਹੈ। NO_PROPOSAL_CHOSEN ਗਲਤੀ ਪਹਿਲੇ ਪੜਾਅ ਦੀ ਹੈ: ਕਲਾਇੰਟ ਨੇ ਸਰਵਰ ਵੱਲੋਂ ਨਾ ਮਨਜ਼ੂਰ ਕੀਤੀ ਜਾਣ ਵਾਲੀ ਇਨਕ੍ਰਿਪਸ਼ਨ, ਹੈਸ਼ ਜਾਂ Diffie-Hellman ਸਮੂਹ ਦਾ ਪ੍ਰਸਤਾਵ ਦਿੱਤਾ। ਯੰਤਰ ਕੀ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਸੂਚੀਬੱਧ ਕਰੋ ਅਤੇ ਉਸ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਇੱਕ ਪ੍ਰਸਤਾਵ ਲਿਖੋ, ਕਿਉਂਕਿ ਬੇਤਰਤੀਬ ਸੰਜੋਗ ਅਕਸਰ ਉਹੀ ਗਲਤੀ ਹੌਲੀ ਦਿੰਦੇ ਹਨ। ਡੈਸਕਟਾਪ ਉੱਤੇ ਵਿਹਾਰਕ ਕਲਾਇੰਟ ਹੇਠਾਂ strongSwan ਜਾਂ Libreswan ਵਾਲਾ NetworkManager L2TP ਪਲੱਗਇਨ ਹੈ।
ਡੈਸਕਟਾਪ ਪਲੱਗਇਨ ਲਈ ਇੱਕ ਅਰਥ ਰੱਖਣ ਵਾਲੀ ਪ੍ਰਸਤਾਵ ਲੜੀ ਕੰਮ ਸੌਂਪੇ ਜਾਣ ਵਾਲੇ ਡੈਮਨ ਲਈ ਕੁਝ ਹੋਰ ਅਰਥ ਰੱਖ ਸਕਦੀ ਹੈ, ਇਸ ਲਈ ਜਿਸ ਪਰਤ ਨੂੰ ਤੁਸੀਂ ਸੋਧ ਰਹੇ ਹੋ ਉਸ ਅਨੁਸਾਰ ਵਾਕ-ਰਚਨਾ ਰੱਖੋ। ਜੇ ਯੰਤਰ ਟਨਲ ਭੇਤ ਵੀ ਮੰਗਦਾ ਹੈ, ਤਾਂ ਉਹ IPsec ਕੁੰਜੀ ਤੋਂ ਵੱਖਰਾ ਪੜਾਅ ਹੈ। ਕੁਝ ਵੀ ਟਾਈਪ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਇੰਟਰਫ਼ੇਸ ਦੋਹਾਂ ਵਿੱਚੋਂ ਕਿਹੜਾ ਮੰਗ ਰਿਹਾ ਹੈ।
XAuth ਨਾਲ ਹਮਲਾਵਰ IKEv1, ਅਤੇ ਪੋਰਟਲ ਦਾ ਮਾਮਲਾ
FortiGate ਸ਼ੈਲੀ ਦਾ ਅੰਤ ਬਿੰਦੂ ਆਮ ਤੌਰ ਉੱਤੇ ਚਾਹੁੰਦਾ ਹੈ XAuth ਨਾਲ ਹਮਲਾਵਰ ਮੋਡ ਅਤੇ ਸੰਰਚਿਤ ਮੋਡ ਦਾ ਪਤਾ, ਜੋ ਗ੍ਰਾਫ਼ਿਕ ਪਲੱਗਇਨ ਸ਼ਾਇਦ ਬਿਲਕੁਲ ਨਾ ਦਿਖਾਏ। ਮੂਲ ਡੈਮਨ ਇਸਨੂੰ ਸੰਭਾਲਦਾ ਹੈ, ਅਤੇ ਹੇਠਾਂ ਦਿੱਤਾ ਬਲਾਕ ਪੂਰੀ ਫਾਈਲ ਨਹੀਂ ਸਗੋਂ ਉਸ ਸੰਰਚਨਾ ਦਾ ਰੂਪ ਹੈ। ਪ੍ਰਸਤਾਵ ਦੇ ਮੁੱਲਾਂ ਲਈ ਵਿਕਰੇਤਾ ਦੇ ਤਾਜ਼ਾ ਦਸਤਾਵੇਜ਼ ਵੇਖੋ।
conn branch
keyexchange=ikev1
aggressive=yes
leftauth=psk
leftauth2=xauth
leftsourceip=%config
right=203.0.113.10
ਪੁਰਾਣੇ strongSwan ਰੀਲੀਜ਼ xauth=client ਵਰਤਦੇ ਸਨ ਜਿੱਥੇ ਵਰਜ਼ਨ 5 leftauth2=xauth ਵਰਤਦਾ ਹੈ, ਇਸ ਲਈ ਕਾਪੀ ਕੀਤਾ ਸਨਿੱਪਟ ਸਿਰਫ਼ ਵਾਕ-ਰਚਨਾ ਕਾਰਨ ਫੇਲ੍ਹ ਹੋ ਸਕਦਾ ਹੈ। TLS ਪੋਰਟਲ ਲਈ, AnyConnect ਪ੍ਰੋਟੋਕੋਲ ਬੋਲਣ ਵਾਲਾ openconnect Cisco ਅਤੇ ਬਹੁਤੇ ਮੁੜ-ਬ੍ਰਾਂਡ ਕੀਤੇ ਉਤਪਾਦ ਸੰਭਾਲਦਾ ਹੈ, ਅਤੇ ਇਸਨੂੰ TUN ਯੰਤਰ ਅਤੇ ਇਸਨੂੰ ਸੰਰਚਿਤ ਕਰਨ ਦੇ ਅਧਿਕਾਰ ਚਾਹੀਦੇ ਹਨ। ਪੋਰਟਲ ਦਾ ਪਤਾ ਬ੍ਰਾਊਜ਼ਰ ਵੱਲੋਂ ਦਿਖਾਏ ਜਾਣ ਵਾਂਗ ਹੀ ਦਿਓ, ਯੰਤਰ ਵੱਲੋਂ ਉਮੀਦ ਕੀਤੇ ਕਿਸੇ ਵੀ ਮਾਰਗ ਸਮੇਤ, ਫਿਰ ਇਸਦੇ ਪਿੱਛੇ ਕੁਝ ਵੀ ਟੈਸਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦਿੱਤਾ ਗਿਆ ਪਤਾ ਜਾਂਚੋ। ਇੰਟਰਫ਼ੇਸ ਪਹਿਲਾਂ ਬਣਾਉਣਾ ਸੈਟਅਪ ਦੌਰਾਨ ਇੱਕ ਕਿਸਮ ਦਾ ਹੈਰਾਨੀਪੂਰਨ ਅਨੁਭਵ ਹਟਾ ਦਿੰਦਾ ਹੈ।
sudo ip tuntap add dev tun0 mode tun
sudo openconnect --protocol=anyconnect vpn.example.com
ਕਨੈਕਟ ਕਰੋ, ਫਿਰ ਨਿਸ਼ਚਿਤ ਕ੍ਰਮ ਵਿੱਚ ਪੜਤਾਲ ਕਰੋ
ਇੱਕ ਸਮੇਂ ਸਿਰਫ਼ ਇੱਕ VPN ਮੈਨੇਜਰ ਚਲਾਓ, ਕਿਉਂਕਿ NetworkManager ਪ੍ਰੋਫ਼ਾਈਲ ਅਤੇ ਹੱਥੀਂ ਸ਼ੁਰੂ ਕੀਤਾ ਡੈਮਨ ਮਾਰਗਾਂ ਅਤੇ DNS ਲਈ ਲੜਨਗੇ। ਹੱਥੀਂ ਕਨੈਕਸ਼ਨ ਟੈਸਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰੋਫ਼ਾਈਲ ਹੇਠਾਂ ਕਰੋ, ਅਤੇ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਕੋਈ ਪੁਰਾਣਾ ਟਨਲ ਇੰਟਰਫ਼ੇਸ ਬਚਿਆ ਨਹੀਂ। ਫਿਰ ਇਸ ਕ੍ਰਮ ਵਿੱਚ ਪੜਤਾਲ ਕਰੋ: ਟਨਲ ਪਤਾ, ਤੁਹਾਨੂੰ ਲੋੜੀਂਦੇ ਇੱਕੋ ਇੱਕ ਅੰਦਰੂਨੀ ਹੋਸਟ ਦਾ ਮਾਰਗ, ਨਾਮ ਵਿਸ਼ਲੇਸ਼ਣ, ਅਤੇ ਅੰਤ ਵਿੱਚ ਅਸਲ ਬੇਨਤੀ। ਹਰਾ ਆਈਕਨ ਸਿਰਫ਼ ਪ੍ਰਮਾਣਿਕਤਾ ਸਾਬਤ ਕਰਦਾ ਹੈ, ਹੋਰ ਕੁਝ ਨਹੀਂ।
ip -4 addr show tun0
ip route get 10.20.30.10
getent hosts app.internal
ਜੇ ਕੋਈ ਪੜਾਅ ਫੇਲ੍ਹ ਹੋਵੇ, ਤਾਂ ਅਗਲਾ ਟੈਸਟ ਕਰਨ ਦੀ ਥਾਂ ਉੱਥੇ ਹੀ ਰੁਕੋ, ਕਿਉਂਕਿ ਟੁੱਟੇ ਮਾਰਗ ਦੇ ਹੇਠਾਂ ਵਾਲੇ ਪਾਸੇ DNS ਅਸਫਲਤਾ ਤੁਹਾਨੂੰ ਕੁਝ ਨਹੀਂ ਸਿਖਾਉਂਦੀ। ਪ੍ਰਯੋਗ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਕੰਮ ਕਰਦੀ ਪ੍ਰੋਫ਼ਾਈਲ ਦੀ ਨਕਲ ਸੰਭਾਲੋ, ਕਿਉਂਕਿ ਮਿਟਾਈ ਕਨੈਕਸ਼ਨ ਫਾਈਲ ਗੁਆਉਣਾ ਸੌਖਾ ਅਤੇ ਦੁਬਾਰਾ ਬਣਾਉਣਾ ਥਕਾਊ ਹੈ। ਪ੍ਰਸਤਾਵ ਦੇ ਮੁੱਲ ਯੰਤਰ ਦੇ ਮਾਡਲ ਅਤੇ ਫਰਮਵੇਅਰ ਵਰਜ਼ਨ ਨਾਲ ਉਸੇ ਨੋਟ ਵਿੱਚ ਰੱਖੋ, ਕਿਉਂਕਿ ਡੱਬਾ ਬਦਲਣ ਸਮੇਂ ਉਹੀ ਨੋਟ ਸਥਾਨਾਂਤਰਨ ਅਤੇ ਪੁਰਾਤੱਤਵ ਪ੍ਰੋਜੈਕਟ ਵਿਚਕਾਰ ਫ਼ਰਕ ਦੱਸਦਾ ਹੈ।