ਪੁਰਾਣੀ ਗਾਈਡ ਦੀ ਕੰਮ ਕਰਦੀ IKEv1 ਪ੍ਰੋਫਾਈਲ Ubuntu 24.04 ਉੱਤੇ ਆਉਂਦੀ ਹੈ, ਅਤੇ ਪਹਿਲੀ ਕੋਸ਼ਿਸ਼ ਫੇਲ੍ਹ ਹੁੰਦੀ ਹੈ ਕਿਉਂਕਿ ਡੈਮਨ ਨੇ ਉਹ ਫਾਈਲ ਕਦੇ ਨਹੀਂ ਪੜ੍ਹੀ। ਆਮ ਪ੍ਰਤੀਕਿਰਿਆ ਇਹ ਹੁੰਦੀ ਹੈ ਕਿ ਪ੍ਰੋਫਾਈਲ ਨੂੰ ਫਿਰ ਸੋਧਿਆ ਜਾਵੇ। ਅਸਲ ਸਵਾਲ ਇਹ ਹੈ ਕਿ ਕਿਹੜਾ strongSwan ਫਰੰਟਐਂਡ ਸਥਾਪਿਤ ਹੈ ਅਤੇ ਚੱਲ ਰਹੀ ਸੇਵਾ ਕਿਹੜਾ ਵਰਤਦੀ ਹੈ। ਜਦ ਤੱਕ ਇਸ ਦਾ ਜਵਾਬ ਨਹੀਂ ਮਿਲਦਾ, ਹਰ ਸੋਧ ਉਸ ਲੋਡਰ ਵੱਲ ਹੁੰਦੀ ਹੈ ਜੋ ਸ਼ਾਇਦ ਹੀ ਹੋਵੇ।

ਦੋ ਫਾਈਲਾਂ, ਦੋ ਲੋਡਰ, ਇੱਕ ਡੈਮਨ

ਪੁਰਾਣੀ starter ਵਿਵਸਥਾ ipsec.conf ਪੜ੍ਹਦੀ ਹੈ ਅਤੇ ਆਪਣੇ ਪੁਰਾਣੇ ਪ੍ਰਬੰਧਨ ਏਕੀਕਰਨ ਰਾਹੀਂ ਕਨੈਕਸ਼ਨ charon ਨੂੰ ਸੌਂਪਦੀ ਹੈ। ਇਸ ਦਾ ਕਾਰਜਕਾਰੀ ਪ੍ਰਵੇਸ਼ ਬਿੰਦੂ ipsec ਕਮਾਂਡ ਹੈ।

swanctl ਵਿਵਸਥਾ VICI ਰਾਹੀਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਲੋਡ ਕਰਦੀ ਹੈ, swanctl.conf ਪੜ੍ਹਦੀ ਹੈ ਅਤੇ swanctl ਕਮਾਂਡ ਨਾਲ ਚੱਲਦੀ ਹੈ। systemd ਦਾ ਮੂਲ charon ਡੈਮਨ ਇਸ ਤਰੀਕੇ ਨਾਲ ਜੁੜਦਾ ਹੈ।

ਦੋਵੇਂ ਇੱਕੋ ਮਸ਼ੀਨ ਉੱਤੇ ਸਥਾਪਿਤ ਹੋ ਸਕਦੇ ਹਨ, ਅਤੇ ਉਲਝਣ ਉੱਥੋਂ ਹੀ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ। /etc ਹੇਠਾਂ ਰੱਖੀ ਫਾਈਲ ਸਿਰਫ਼ ਇਹ ਸਾਬਤ ਕਰਦੀ ਹੈ ਕਿ ਕਿਸੇ ਨੇ ਇਹ ਲਿਖੀ, ਇਹ ਨਹੀਂ ਕਿ ਚੱਲ ਰਹੀ ਪ੍ਰਕਿਰਿਆ ਨੇ ਇਹ ਲੋਡ ਕੀਤੀ। ਕਿਹੜਾ ਕੰਮ ਕਰਦਾ ਹੈ ਇਹ ਦੇਖਣ ਲਈ ਹਰ ਬਦਲ ਸਥਾਪਿਤ ਕਰਨਾ ਦੋ ਪ੍ਰਬੰਧਨ ਮਾਰਗਾਂ ਅਤੇ ਸਪਸ਼ਟ ਮਾਲਕ ਤੋਂ ਬਿਨਾਂ ਹੋਸਟ ਬਣਾਉਂਦਾ ਹੈ। ਇੱਕ ਵਿਵਸਥਾ ਚੁਣੋ ਅਤੇ ਦੂਜੀ ਹਟਾਓ ਜਾਂ ਅਯੋਗ ਕਰੋ।

ਸਥਾਪਿਤ ਪੈਕੇਜ ਅਤੇ unit ਪੜ੍ਹੋ

ਸਿਰਫ਼-ਪੜ੍ਹਨ ਸਥਿਤੀ ਵਿੱਚ ਸ਼ੁਰੂ ਕਰੋ। Ubuntu 24.04 ਉੱਤੇ ਪੈਕੇਜਾਂ ਦੇ ਨਾਮ ਵੱਖਰੇ ਹਨ: strongswan-starter, strongswan-swanctl ਅਤੇ charon-systemd। ਗੈਰਹਾਜ਼ਰ ਪੈਕੇਜ ਲਾਭਦਾਇਕ ਜਾਣਕਾਰੀ ਹੈ, ਇਹ ਸਥਾਪਿਤ ਕਰਨ ਦਾ ਹੁਕਮ ਨਹੀਂ।

ਇੱਕ ਹੀ ਪਾਸ ਵਿੱਚ ਪੈਕੇਜ ਅਤੇ unit ਦੀ ਸੂਚੀ ਬਣਾਓ:

dpkg-query -W strongswan-starter strongswan-swanctl charon-systemd
systemctl list-unit-files '*strongswan*'

ਫਿਰ ਸਰਗਰਮ unit ਅਤੇ ਇਸ ਦੀ ਸ਼ੁਰੂਆਤੀ ਕਮਾਂਡ ਵੇਖੋ। unit ਦਾ ਨਾਮ ਦੱਸਦਾ ਹੈ ਕਿ ਕਿਹੜਾ ਡੈਮਨ ਸੰਰਚਨਾ ਦਾ ਮਾਲਕ ਹੈ, ਅਤੇ ਕਮਾਂਡ ਲਾਈਨ ਪੁਸ਼ਟੀ ਕਰਦੀ ਹੈ ਕਿ ਇਸ ਨੂੰ ਕਿਹੜੀਆਂ ਫਾਈਲਾਂ ਪੜ੍ਹਨ ਲਈ ਕਿਹਾ ਗਿਆ ਸੀ। ਸਰਗਰਮ ਕੀਤਾ ਗਿਆ ਪਰ ਨਿਸ਼ਕਿਰਿਆ unit ਹੁਣ ਚੱਲ ਰਹੇ unit ਤੋਂ ਵੱਖਰੀ ਕਹਾਣੀ ਕਹਿੰਦਾ ਹੈ।

ਜੇ ਸਰਗਰਮ unit strongswan-starter ਹੈ, ਤਾਂ ਮਹੱਤਵਪੂਰਨ ਫਾਈਲ ipsec.conf ਹੈ। ਜੇ ਇਹ swanctl ਨਾਲ charon-systemd ਹੈ, ਤਾਂ ipsec.conf ਸਿਰਫ਼ ਸਜਾਵਟ ਹੈ।

ਮੇਲ ਖਾਂਦਾ ਨਿਯੰਤਰਣ ਮਾਰਗ ਵਰਤੋ

ਹਰ ਫਰੰਟਐਂਡ ਦਾ ਕਨੈਕਸ਼ਨ ਅਤੇ ਐਸੋਸੀਏਸ਼ਨ ਬਾਰੇ ਆਪਣਾ ਨਜ਼ਰੀਆ ਹੈ। swanctl --list-conns ਲੋਡ ਕੀਤੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਦਿਖਾਉਂਦਾ ਹੈ ਅਤੇ swanctl --list-sas ਸਰਗਰਮ ਐਸੋਸੀਏਸ਼ਨ ਦਿਖਾਉਂਦਾ ਹੈ। ਪੁਰਾਣਾ ਮਾਰਗ ipsec statusall ਵਰਤਦਾ ਹੈ।

ਦੋਵੇਂ ਮਿਲਾਉਣ ਨਾਲ ਭਰਮਾਊ ਗਲਤੀਆਂ ਬਣਦੀਆਂ ਹਨ। ਗੈਰਹਾਜ਼ਰ VICI ਸਾਕਟ ਜਾਂ ਨਾਮਨਜ਼ੂਰ ਨਿਯੰਤਰਣ ਬੇਨਤੀ ਪ੍ਰਬੰਧਨ-ਮਾਰਗ ਦੀ ਸਮੱਸਿਆ ਹੈ, ਇਹ ਸਬੂਤ ਨਹੀਂ ਕਿ ਸਾਹਮਣੇ ਵਾਲੇ ਨੇ ਪ੍ਰਮਾਣਿਕਤਾ ਨਾਮਨਜ਼ੂਰ ਕੀਤੀ।

ਚੱਲ ਰਹੇ ਡੈਮਨ ਦਾ ਨਜ਼ਰੀਆ ਪੜ੍ਹੋ, ਫਿਰ ਨਤੀਜੇ ਦੀ ਵਿਆਖਿਆ ਕਰੋ। ਜੇ ਉਸ ਨਜ਼ਰੀਏ ਵਿੱਚ ਕਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ, ਤਾਂ ਸਮੱਸਿਆ ਲੋਡਿੰਗ ਵਿੱਚ ਹੈ, ਗੱਲਬਾਤ ਵਿੱਚ ਨਹੀਂ।

ਫਾਰਮੈਟ IKE ਸੰਸਕਰਣ ਨਹੀਂ ਹੈ

ਪੁਰਾਣੀ ਪ੍ਰੋਫਾਈਲ keyexchange=ikev1 ਨਾਲ IKEv1 ਚੁਣਦੀ ਹੈ। swanctl ਕਨੈਕਸ਼ਨ ਸੰਸਕਰਣ ਸੈਟਿੰਗ ਵਰਤਦਾ ਹੈ, ਜਿੱਥੇ 1 IKEv1 ਚੁਣਦਾ ਹੈ। ਇਹ ਇੱਕੋ ਵਿਚਾਰ ਦੇ ਦੋ ਸ਼ਬਦਕੋਸ਼ ਹਨ, ਬਦਲਾਅ ਨਹੀਂ।

ਸਾਹਮਣੇ ਵਾਲੇ ਦੇ ਪਤੇ, ਸਥਾਨਕ ਅਤੇ ਦੂਰ ਦੀਆਂ ਪਛਾਣਾਂ, ਪ੍ਰਮਾਣ-ਸਰੋਤ, ਪ੍ਰਸਤਾਵ ਅਤੇ child ਚੋਣਕਾਰ ਸਭ ਜਾਣਬੁੱਝ ਕੇ ਮੈਪ ਕਰਨੇ ਪੈਂਦੇ ਹਨ। left/right ਬਲਾਕ swanctl ਸੰਟੈਕਸ ਵਿੱਚ ਪੇਸਟ ਕਰਨ ਨਾਲ ਇਸ ਵਿੱਚੋਂ ਕੁਝ ਨਹੀਂ ਹੁੰਦਾ।

ਸਿਰਫ਼ ਪ੍ਰੋਟੋਕੋਲ ਸੰਸਕਰਣ ਬਦਲਣਾ ਸਭ ਤੋਂ ਆਮ ਅੱਧਾ-ਸਥਾਨਾਂਤਰਣ ਹੈ। ਇਹ ਅਜਿਹੀ ਫਾਈਲ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਲੋਡ ਹੁੰਦੀ ਹੈ ਅਤੇ ਫਿਰ ਸੰਸਕਰਣ ਨਾਲ ਬੇਸੰਬੰਧ ਕਾਰਨਾਂ ਕਰਕੇ ਪ੍ਰਮਾਣਿਕਤਾ ਵਿੱਚ ਫੇਲ੍ਹ ਹੁੰਦੀ ਹੈ। IKEv1 ਆਪ RFC 9395 ਦੁਆਰਾ ਪੁਰਾਣਾ ਹੋ ਚੁੱਕਾ ਹੈ, ਇਸ ਲਈ ਜੋ ਮੌਜੂਦਾ ਸਾਹਮਣੇ ਵਾਲਾ ਅਜੇ ਵੀ ਇਸ ਦੀ ਮੰਗ ਕਰਦਾ ਹੈ ਉਸ ਨੂੰ ਦਸਤਾਵੇਜ਼ੀ ਅਨੁਕੂਲਤਾ-ਸੀਮਾ ਅਤੇ ਸਥਾਨਾਂਤਰਣ ਮਾਰਗ ਦੀ ਲੋੜ ਹੈ, ਨਵਾਂ ਡਿਫਾਲਟ ਨਹੀਂ।

ਪ੍ਰੋਫਾਈਲ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ ਲੋਡਰ ਵੇਖੋ

ਪਹਿਲਾਂ ਲੋਡਰ ਜਾਂਚ ਚਲਾਓ, ਫਿਰ ਲੋੜੀਂਦਾ ਕਨੈਕਸ਼ਨ ਲੋਡ ਕਰੋ, ਫਿਰ ਗੱਲਬਾਤ ਦਾ ਮੁਲਾਂਕਣ ਕਰੋ ਅਤੇ ਅੰਤ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਟਰੈਫਿਕ ਦਾ ਮਾਰਗ। ਹਰ ਪੜਾਅ ਦੀ ਫੇਲ੍ਹਤ ਦੀ ਨਿਸ਼ਾਨੀ ਵੱਖਰੀ ਹੈ।

ਦੋਵੇਂ ਨਿਯੰਤਰਣ ਮਾਰਗ ਲੋਡਿੰਗ ਦੇ ਸਵਾਲ ਦਾ ਸਿੱਧਾ ਜਵਾਬ ਦਿੰਦੇ ਹਨ:

swanctl --list-conns
ipsec statusall

ਇਹਨਾਂ ਵਿੱਚੋਂ ਸਿਰਫ਼ ਇੱਕ ਕਮਾਂਡ ਤੁਹਾਡੇ ਹੋਸਟ ਦੀ ਹੈ। ਦੋਵੇਂ ਚਲਾ ਕੇ ਆਉਟਪੁੱਟ ਦੀ ਤੁਲਨਾ ਕਰਨਾ ਇਹ ਲੱਭਣ ਦਾ ਤਰੀਕਾ ਹੈ ਕਿ ਕਿਹੜਾ ਤੁਹਾਨੂੰ ਝੂਠ ਬੋਲ ਰਿਹਾ ਹੈ, ਨਿਦਾਨ ਵਿਧੀ ਨਹੀਂ।

ਪੈਕੇਜ ਮਾਲਕੀ, ਸੰਰਚਨਾ ਲੋਡਿੰਗ ਅਤੇ ਪ੍ਰੋਟੋਕੋਲ ਅਨੁਕੂਲਤਾ ਨੂੰ ਤਿੰਨ ਵੱਖਰੇ ਸਵਾਲ ਮੰਨੋ। ਇੱਕ ਫਰੰਟਐਂਡ ਲਈ ਵੈਧ ਫਾਈਲ ਹੋਰ ਥਾਂ ਵਾਰ-ਵਾਰ ਸੋਧੀ ਜਾਵੇਗੀ ਜਦੋਂ ਕੋਈ ਹੋਰ ਡੈਮਨ ਚੱਲ ਰਿਹਾ ਹੋਵੇ।

ਸੰਬੰਧਿਤ ਲੇਖ