strongSwan EAP: IKE ਪਛਾਣ ਬਨਾਮ ਉਮੀਦ ਕੀਤਾ AAA ਨਾਮ
strongSwan EAP ਕਲਾਇੰਟ ਦੋ ਸਰਵਰ ਨਾਮ ਪ੍ਰਮਾਣਿਤ ਕਰ ਸਕਦਾ ਹੈ। remote.id IKE ਗੇਟਵੇ ਨੂੰ ਅਤੇ local.aaa_id EAP ਸਰਵਰ ਨੂੰ ਕਵਰ ਕਰਦਾ ਹੈ; ਇਹ ਇੱਕੋ ਫੀਲਡ ਨਹੀਂ ਹਨ।
IKEv2 ਉੱਤੇ EAP ਪ੍ਰਮਾਣਿਕਤਾ ਇੱਕ ਕਨੈਕਸ਼ਨ ਵਿੱਚ ਦੋ ਵੱਖਰੇ ਸਰਵਰ ਨਾਮ ਪ੍ਰਮਾਣਿਤ ਕਰਨ ਲਈ ਕਲਾਇੰਟ ਨੂੰ ਕਹਿ ਸਕਦੀ ਹੈ। IKE ਨੂੰ ਖਤਮ ਕਰਨ ਵਾਲਾ ਗੇਟਵੇ ਇੱਕ ਪਛਾਣ ਪੇਸ਼ ਕਰਦਾ ਹੈ, ਅਤੇ ਅੰਦਰੂਨੀ TLS ਅਦਾਨ-ਪ੍ਰਦਾਨ ਖਤਮ ਕਰਨ ਵਾਲਾ EAP ਬੈਕਐਂਡ ਦੂਜੀ ਪੇਸ਼ ਕਰ ਸਕਦਾ ਹੈ। strongSwan ਵਿੱਚ ਇਹ ਵੱਖਰੇ ਕਨਫਿਗਰੇਸ਼ਨ ਬਲਾਕਾਂ ਵਿੱਚ ਰਹਿੰਦੇ ਹਨ, ਅਤੇ ਗਲਤ ਬਲਾਕ ਵਿੱਚ ਨਾਮ ਰੱਖਣ ਨਾਲ ਅਜਿਹੀ ਅਸਫਲਤਾ ਹੁੰਦੀ ਹੈ ਜੋ ਸਰਟੀਫਿਕੇਟ ਦੀ ਸਮੱਸਿਆ ਵਰਗੀ ਲੱਗਦੀ ਹੈ। ਕਿਹੜੀ ਪ੍ਰਮਾਣਿਕਤਾ ਅਸਫਲ ਹੋਈ ਇਹ ਪੜ੍ਹਨਾ ਹੀ ਦੱਸਦਾ ਹੈ ਕਿ ਕਿਹੜਾ ਬਲਾਕ ਸੋਧਣਾ ਹੈ।
ਇੱਕ ਕਨੈਕਸ਼ਨ, ਦੋ ਸਰਵਰ ਪਛਾਣਾਂ
ਪਹਿਲੀ ਪਛਾਣ IKE ਅਦਾਨ-ਪ੍ਰਦਾਨ ਦੀ ਹੈ। ਕਲਾਇੰਟ ਇੱਕ ਪਤੇ ਨੂੰ ਡਾਇਲ ਕਰਦਾ ਹੈ ਅਤੇ ਉਮੀਦ ਕਰਦਾ ਹੈ ਕਿ ਸਾਹਮਣਾ ਧਿਰ ਇੱਕ ਖਾਸ ਪਛਾਣ, ਆਮ ਤੌਰ ’ਤੇ ਗੇਟਵੇ ਸਰਟੀਫਿਕੇਟ ਦਾ ਨਾਮ, ਸਾਬਤ ਕਰੇਗੀ।
ਦੂਜੀ EAP ਦੀ ਹੈ। PEAP ਜਾਂ TTLS ਨਾਲ, ਕਲਾਇੰਟ IKE SA ਦੇ ਅੰਦਰ ਪ੍ਰਮਾਣਿਕਤਾ ਸਰਵਰ ਤੱਕ TLS ਸੁਰੰਗ ਬਣਾਉਂਦਾ ਹੈ, ਅਤੇ ਉਹ ਅੰਦਰੂਨੀ ਸਰਵਰ ਆਪਣਾ ਸਰਟੀਫਿਕੇਟ ਪੇਸ਼ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਬੈਕਐਂਡ ਵੱਖਰਾ ਹੋਸਟ ਹੁੰਦਾ ਹੈ, ਉਸ ਦਾ ਨਾਮ ਗੇਟਵੇ ਦੇ ਨਾਮ ਤੋਂ ਵੱਖਰਾ ਹੁੰਦਾ ਹੈ। ਸਿਰਫ਼ ਪਹਿਲਾ ਨਾਮ ਜਾਂਚਣ ਵਾਲਾ ਕਲਾਇੰਟ ਦੂਜੇ ਦੇ ਹਰ ਦਾਅਵੇ ਨੂੰ ਸਵੀਕਾਰ ਕਰ ਲੈਂਦਾ ਹੈ। ਅਤੇ ਦੋਵੇਂ ਥਾਵਾਂ ’ਤੇ ਇੱਕੋ ਨਾਮ ਨਾਲ ਸੰਰਚਿਤ ਕਲਾਇੰਟ ਉਸੇ ਪਲ ਅਸਫਲ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਉਹ ਦੋਵੇਂ ਸੱਚਮੁੱਚ ਵੱਖਰੇ ਹੁੰਦੇ ਹਨ।
ਦੋਵੇਂ ਨਾਮ ਆਪਰੇਟਰ ਦੀ ਕਨਫਿਗਰੇਸ਼ਨ ਤੋਂ ਆਉਂਦੇ ਹਨ, ਉਸ ਸਰਟੀਫਿਕੇਟ ਤੋਂ ਨਹੀਂ ਜੋ ਗਲਤੀ ਨੂੰ ਹਟਾ ਦਿੰਦਾ ਹੈ। ਆਪਰੇਟਰ ਤੋਂ ਤੈਨਾਤੀ ਦੇ ਵੇਰਵੇ ਪੁੱਛਣਾ ਦੋ ਹੋਸਟ ਨਾਮ ਅਨੁਮਾਨ ਲਗਾਉਣ ਨਾਲੋਂ ਤੇਜ਼ ਹੈ।
ਕਿਹੜਾ ਫੀਲਡ ਕਿਹੜੀ ਪਰਤ ਦਾ ਹੈ
swanctl ਵਿੱਚ ਪਤਾ ਅਤੇ IKE ਪਛਾਣ ਵੱਖਰੀਆਂ ਸੈਟਿੰਗਾਂ ਹਨ, ਅਤੇ EAP ਪਛਾਣ ਤੀਜੀ ਹੈ।
ਦੂਰ ਦਾ ਪਤਾ ਚੁਣਦਾ ਹੈ ਕਿ ਪੈਕੇਟ ਕਿੱਥੇ ਜਾਣ, ਅਤੇ ਦੂਰ ਦੀ ਪਛਾਣ ਦੱਸਦੀ ਹੈ ਕਿ ਸਾਹਮਣੀ ਧਿਰ ਨੂੰ ਕੀ ਸਾਬਤ ਕਰਨਾ ਹੈ। EAP ਉਮੀਦ local ਬਲਾਕ ਹੇਠ ਲਿਖੀ ਜਾਂਦੀ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਸਾਹਮਣੀ ਧਿਰ ਦੇ IKE ਵਿਵਹਾਰ ਦਾ ਨਹੀਂ, ਇਸ ਕਲਾਇੰਟ ਦੇ EAP ਅਦਾਨ-ਪ੍ਰਦਾਨ ਦਾ ਵਰਣਨ ਕਰਦੀ ਹੈ। ਇਹੀ ਸਥਾਨ ਲੋਕ ਗਲਤ ਪੜ੍ਹਦੇ ਹਨ। ਨਾਮ ਕਲਾਇੰਟ ਦੀ ਕਨਫਿਗਰੇਸ਼ਨ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ ਜਦੋਂ ਕਿ ਸਰਵਰ ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ, ਅਤੇ ਇਸੇ ਕਰਕੇ ਇਹ ਗਲਤ ਥਾਂ ’ਤੇ ਲੱਗਦਾ ਹੈ।
connections {
office {
remote_addrs = vpn.example.com
local {
auth = eap-peap
aaa_id = auth.example.com
}
remote {
auth = pubkey
id = vpn.example.com
}
}
}
ਇਹ ਟੁਕੜਾ ਪੂਰਾ ਕਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ; ਭਰੋਸਾ ਸਮੱਗਰੀ, ਪ੍ਰਮਾਣ-ਪੱਤਰ ਅਤੇ ਚਾਈਲਡ ਕਨੈਕਸ਼ਨਾਂ ਦੀਆਂ ਨੀਤੀਆਂ ਹਾਲੇ ਵੀ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ। ਇਸ ਨੂੰ ਸ਼ਬਦਸ਼: ਕਿਸੇ ਕੰਮ ਕਰਨ ਵਾਲੀ ਫਾਈਲ ਵਿੱਚ ਕਾਪੀ ਕਰਨ ਨਾਲ ਉਹ ਸੈਟਿੰਗਾਂ ਬਦਲ ਜਾਣਗੀਆਂ ਜਿਨ੍ਹਾਂ ਦੀ ਤੁਹਾਨੂੰ ਹਾਲੇ ਲੋੜ ਹੈ।
aaa_id local ਹੇਠ ਕਿਉਂ ਰਹਿੰਦਾ ਹੈ
local ਬਲਾਕ ਦੱਸਦਾ ਹੈ ਕਿ ਪ੍ਰਮਾਣਿਕਤਾ ਦੌਰਾਨ ਇਹ ਸਿਰਾ ਕੀ ਕਰਦਾ ਹੈ, ਜਿਸ ਵਿੱਚ ਉਹ ਢੰਗ ਵੀ ਸ਼ਾਮਲ ਹੈ ਜੋ ਉਹ ਵਰਤੇਗਾ ਅਤੇ ਉਹ ਪਛਾਣ ਜਿਸਦੀ ਉਹ ਉਸ ਢੰਗ ਲਈ ਦੂਜੇ ਸਿਰੇ ਤੋਂ ਉਮੀਦ ਕਰਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕੁਝ ਵੀ ਇਹ ਦਾਅਵਾ ਨਹੀਂ ਕਰਦਾ ਕਿ AAA ਸਰਵਰ ਉਸੇ ਮਸ਼ੀਨ ’ਤੇ ਚੱਲਦਾ ਹੈ।
ਡਿਫਾਲਟ ਮੁੱਲ ਜਾਲ ਨੂੰ ਹੋਰ ਤਿੱਖਾ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਕੋਈ ਸਪੱਸ਼ਟ ਮੁੱਲ ਸੈੱਟ ਨਹੀਂ ਹੁੰਦਾ, ਉਮੀਦ ਕੀਤੀ AAA ਪਛਾਣ ਦੂਰ ਦੀ ਪਛਾਣ ਦਾ ਪਾਲਣ ਕਰਦੀ ਹੈ, ਇਸ ਲਈ ਇੱਕ ਨਾਮ ਵਾਲੀ ਤੈਨਾਤੀ ਕੰਮ ਕਰਦੀ ਹੈ ਅਤੇ ਅੰਤਰ ਲੁਕਾ ਦਿੰਦੀ ਹੈ। ਸਪੱਸ਼ਟ ਮੁੱਲ ਦਾ ਮਹੱਤਵ ਸਿਰਫ਼ ਤਦ ਹੈ ਜਦੋਂ EAP ਤੈਨਾਤੀ ਸੱਚਮੁੱਚ ਕਿਤੇ ਹੋਰ ਖਤਮ ਹੁੰਦੀ ਹੈ। ਉਸ ਕਾਰਨ ਤੋਂ ਬਿਨਾਂ ਇਸ ਨੂੰ ਦੂਜੇ ਨਾਮ ’ਤੇ ਸੈੱਟ ਕਰਨਾ ਅਜਿਹੀ ਅਸਫਲਤਾ ਪੈਦਾ ਕਰਦਾ ਹੈ ਜੋ ਆਪਰੇਟਰ ਦੁਬਾਰਾ ਨਹੀਂ ਬਣਾ ਸਕਦਾ। ਦੂਜਾ ਨਾਮ ਘੜਨ ਤੋਂ ਪਹਿਲਾਂ ਤੈਨਾਤੀ ਪੜ੍ਹੋ।
ਮੁੱਲ ਨੂੰ ਉਸ ਨਾਲ ਸਮਾਨ ਰੱਖੋ ਜੋ ਬੈਕਐਂਡ ਸਰਟੀਫਿਕੇਟ ਸੱਚਮੁੱਚ ਦਾਅਵਾ ਕਰਦਾ ਹੈ, ਨਾਮ ਦੀ ਸ਼ਕਲ ਸਮੇਤ। ਅੰਤ ਵਿੱਚ ਇੱਕ ਬਿੰਦੂ ਜਾਂ ਹੋਸਟ ਨੂੰ ਕਵਰ ਨਾ ਕਰਨ ਵਾਲਾ ਵਾਈਲਡਕਾਰਡ ਜਾਂਚ ਅਸਫਲ ਹੋਣ ਲਈ ਕਾਫ਼ੀ ਹੈ।
ਅਜਿਹੇ ਫਰੰਟਐਂਡ ਜੋ ਵੰਡ ਨੂੰ ਪ੍ਰਗਟ ਨਹੀਂ ਕਰ ਸਕਦੇ
NetworkManager ਪ੍ਰੋਫਾਈਲ swanctl ਵਰਗਾ ਉਹੀ ਕਨਫਿਗਰੇਸ਼ਨ ਇੰਟਰਫੇਸ ਨਹੀਂ ਹੈ। ਇਸ ਦੇ ਪਿੱਛੇ ਦਾ ਪਲੱਗਇਨ ਪਛਾਣ ਨਿਯੰਤਰਣਾਂ ਦਾ ਇੱਕ ਤੰਗ ਸਮੂਹ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਕਿਹੜੇ ਮੌਜੂਦ ਹਨ ਇਹ ਸਥਾਪਿਤ ਸੰਸਕਰਣ ’ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ।
ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ ਜਦੋਂ ਤੈਨਾਤੀ ਨੂੰ ਸੱਚਮੁੱਚ ਦੋ ਨਾਮ ਚਾਹੀਦੇ ਹਨ। ਸਰਵਰ ਪਛਾਣ ਵਜੋਂ ਲੇਬਲ ਕੀਤਾ ਫੀਲਡ ਇੱਕ ਪਰਤ ਸੰਰਚਿਤ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਦੂਜੀ ਨਹੀਂ, ਇਸ ਲਈ ਪ੍ਰੋਫਾਈਲ ਸਹੀ ਦਿਖ ਸਕਦਾ ਹੈ ਅਤੇ ਫਿਰ ਵੀ ਅੰਦਰੂਨੀ ਜਾਂਚ ਵਿੱਚ ਅਸਫਲ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਮੰਨਣ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਪ੍ਰੋਫਾਈਲ ਇਸ ਵਿਵਸਥਾ ਨੂੰ ਪ੍ਰਗਟ ਕਰ ਸਕਦਾ ਹੈ, ਵੇਖੋ ਕਿ ਸਥਾਪਿਤ ਪਲੱਗਇਨ ਕੀ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਜੇ ਨਹੀਂ ਕਰ ਸਕਦਾ, ਤਾਂ ਚੋਣ ਆਪਰੇਟਰ ਦੀ ਹੈ: ਵੱਖਰਾ ਪ੍ਰੋਵੀਜ਼ਨਿੰਗ ਮਾਰਗ, ਜਾਂ ਸੁਧਾਰਿਆ ਸਰਵਰ ਪਛਾਣ ਡਿਜ਼ਾਈਨ। PEAP ਨੂੰ ਕਮਜ਼ੋਰ ਕਰਨਾ ਜਾਂ ਕੋਈ ਵੀ ਨਾਮ ਸਵੀਕਾਰ ਕਰਨਾ ਪ੍ਰਮਾਣਿਕਤਾ ਨੀਤੀ ਨੂੰ ਸੁਧਾਰਨ ਦੀ ਬਜਾਏ ਬਦਲ ਦਿੰਦਾ ਹੈ।
ਬਦਲ ਕਲਾਇੰਟ ’ਤੇ ਘੜਨ ਵਾਲੀ ਚੀਜ਼ ਨਹੀਂ ਹੈ। ਸਮਰਥਿਤ ਵਿਵਸਥਾ ਲਿਖਤੀ ਰੂਪ ਵਿੱਚ ਮੰਗੋ, ਫਿਰ ਉਹ ਜਵਾਬ ਪ੍ਰੋਫਾਈਲ ਨਾਲ ਰੱਖੋ।
ਪਛਾਣ ਦੀ ਅਸੰਗਤੀ ਨੂੰ ਮਿਆਦ ਪੁੱਗੇ ਸਰਟੀਫਿਕੇਟ ਤੋਂ ਵੱਖਰਿਆਂ ਪਛਾਣੋ
ਨਾਮ ਦੀ ਅਸੰਗਤੀ ਅਤੇ ਮਿਆਦ ਪੁੱਗਿਆ ਸਰਟੀਫਿਕੇਟ ਵੱਖਰੀਆਂ ਅਸਫਲਤਾਵਾਂ ਹਨ, ਅਤੇ ਲਾਗ ਉਨ੍ਹਾਂ ਨੂੰ ਵੱਖਰਿਆਂ ਕਰਦਾ ਹੈ। ਕਿਹੜਾ ਫੀਲਡ ਬਦਲਣਾ ਹੈ ਇਹ ਤੈਅ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸੁਨੇਹਾ ਪੜ੍ਹੋ।
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan -n 50 --no-pager
ਇੱਛਤ AAA ਪਛਾਣ ਸੈੱਟ ਕਰਨਾ ਸਰਟੀਫਿਕੇਟ ਦਾ ਨਵੀਨੀਕਰਣ ਨਹੀਂ ਕਰਦਾ ਅਤੇ ਨਾ ਹੀ ਇਸ ਦੇ ਜਾਰੀਕਰਤਾ ’ਤੇ ਭਰੋਸਾ ਸਥਾਪਿਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਸਰਟੀਫਿਕੇਟ ਦਾ ਨਵੀਨੀਕਰਣ ਗਲਤ ਉਮੀਦ ਕੀਤੇ ਨਾਮ ਨੂੰ ਠੀਕ ਨਹੀਂ ਕਰਦਾ। ਦੂਜਾ ਪਛਾਣ ਫੀਲਡ ਸੋਧਣ ਤੋਂ ਪਹਿਲਾਂ ਪੜ੍ਹੋ ਕਿ ਕਿਹੜੀ ਪ੍ਰਮਾਣਿਕਤਾ ਅਸਫਲ ਹੋਈ। ਫਿਰ ਕਨਫਿਗਰੇਸ਼ਨ ਦੁਬਾਰਾ ਲੋਡ ਕਰੋ ਅਤੇ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਲੋਡ ਕੀਤਾ ਕਨੈਕਸ਼ਨ ਤੁਹਾਡੇ ਸੈੱਟ ਕੀਤੇ ਮੁੱਲ ਨੂੰ ਦਿਖਾਉਂਦਾ ਹੈ, ਕਿਉਂਕਿ ਕਦੇ ਲੋਡ ਨਾ ਹੋਈ ਸੋਧੀ ਫਾਈਲ ਕੁਝ ਨਹੀਂ ਬਦਲਦੀ। ਦੋਵੇਂ ਨਾਮ ਅਤੇ ਉਨ੍ਹਾਂ ਦੀਆਂ ਪਰਤਾਂ ਤੈਨਾਤੀ ਨੋਟਾਂ ਵਿੱਚ ਲਿਖੋ।