ਇੰਟਰੈਕਟਿਵ ਲੌਗਇਨ ਤੋਂ ਬਾਅਦ OpenConnect ਨੂੰ ਬੈਕਗਰਾਊਂਡ ਵਿੱਚ ਕਿਵੇਂ ਚਲਾਉਣਾ ਹੈ
ਲੌਗਇਨ ਫੋਰਗਰਾਊਂਡ ਵਿੱਚ ਪੂਰਾ ਕਰੋ, ਫਿਰ ਟਨਲ ਕਲਾਇੰਟ ਦੇ ਆਪਣੇ ਬੈਕਗਰਾਊਂਡ ਮੋਡ ਨੂੰ ਸੌਂਪੋ। ਉਹ ਜਾਂਚਾਂ ਜੋ ਇਸਨੂੰ ਲੱਭਣ ਅਤੇ ਰੋਕਣ ਯੋਗ ਰੱਖਦੀਆਂ ਹਨ।
ਤੁਸੀਂ MFA ਪ੍ਰੋਂਪਟ ਪੂਰਾ ਕਰਦੇ ਹੋ, ਟਨਲ ਉੱਪਰ ਆਉਂਦਾ ਹੈ, ਅਤੇ ਟਰਮੀਨਲ ਬੰਦ ਕਰਨ ਨਾਲ ਕਨੈਕਸ਼ਨ ਵੀ ਚਲਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਨਿਗਰਾਨੀ ਦੀ ਸਮੱਸਿਆ ਹੈ, ਪ੍ਰਮਾਣਿਕਤਾ ਦੀ ਨਹੀਂ, ਅਤੇ OpenConnect ਵਿੱਚ ਇਸਨੂੰ ਹੱਲ ਕਰਨ ਵਾਲਾ ਸਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਹੈ। ਹੱਲ ਇਹ ਹੈ ਕਿ ਸਟਾਰਟਅੱਪ ਤੋਂ ਬਾਅਦ, ਜਦੋਂ ਇੰਟਰੈਕਟਿਵ ਹਿੱਸਾ ਸੱਚਮੁੱਚ ਖਤਮ ਹੋ ਜਾਵੇ, ਕਲਾਇੰਟ ਨੂੰ ਬੈਕਗਰਾਊਂਡ ਵਿੱਚ ਫੋਰਕ ਹੋਣ ਦਿਓ। ਹੇਠਾਂ ਜਾਂਚਾਂ ਦਾ ਕ੍ਰਮ ਹੈ: ਇਹਨਾਂ ਨੂੰ ਕ੍ਰਮ ਵਿੱਚ ਕਰੋ ਅਤੇ ਪਹਿਲੀ ਅਜਿਹੀ ਜਾਂਚ 'ਤੇ ਰੁਕੋ ਜੋ ਤੁਹਾਡੇ ਗੇਟਵੇ 'ਤੇ ਲਾਗੂ ਨਹੀਂ ਹੁੰਦੀ।
ਲੌਗਇਨ ਸਮੇਂ ਗੇਟਵੇ ਕੀ ਮੰਗਦਾ ਹੈ, ਪੱਕਾ ਕਰੋ
ਕਮਾਂਡ ਲਿਖਣ ਤੋਂ ਪਹਿਲਾਂ ਡਿਪਲੌਇਮੈਂਟ ਵੱਲੋਂ ਲਾਜ਼ਮੀ ਕੀਤਾ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਰਸਤਾ ਲਿਖ ਲਓ। ਸਿਰਫ ਸਰਟੀਫਿਕੇਟ, ਪਾਸਵਰਡ ਅਤੇ ਟੋਕਨ, ਅਤੇ SAML ਪ੍ਰਦਾਤਾ ਰਾਹੀਂ ਬ੍ਰਾਊਜ਼ਰ ਦਾ ਚੱਕਰ—ਇਹ ਵੱਖਰੇ ਵਿਵਹਾਰ ਕਰਦੇ ਹਨ, ਅਤੇ ਬੈਕਗਰਾਊਂਡ ਮੋਡ ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਨਹੀਂ ਛੱਡ ਸਕਦਾ। ਇਹ ਵਿਕਲਪ ਸਟਾਰਟਅੱਪ ਤੋਂ ਬਾਅਦ ਕੀ ਹੁੰਦਾ ਹੈ ਬਦਲਦਾ ਹੈ, ਉਸ ਦੌਰਾਨ ਕੀ ਹੁੰਦਾ ਹੈ ਕਦੇ ਨਹੀਂ।
ਲਾਲਚ ਭਰਿਆ ਤਰੀਕਾ ਪ੍ਰੋਂਪਟ ਨੂੰ ਸਵੈਚਾਲਿਤ ਕਰਨਾ ਹੈ। ਪਾਸਵਰਡ ਪ੍ਰੋਂਪਟ ਪਛਾਣਦਿਆਂ ਹੀ ਸਥਿਰ ਜਵਾਬ ਟਾਈਪ ਕਰਨ ਵਾਲਾ ਰੈਪਰ ਉਸੇ ਪਲ ਟੁੱਟ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਗੇਟਵੇ ਇੱਕ-ਵਾਰੀ ਕੋਡ ਮੰਗਦਾ ਹੈ, ਅਤੇ ਹੋਰ ਖਾਤਿਆਂ ਵੱਲੋਂ ਪੜ੍ਹੀ ਜਾ ਸਕਣ ਵਾਲੀ ਫਾਈਲ ਵਿੱਚ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਛੱਡ ਦਿੰਦਾ ਹੈ। ਜੇ ਕਿਸੇ ਵਿਅਕਤੀ ਨੂੰ ਸੈਸ਼ਨ ਮਨਜ਼ੂਰ ਕਰਨਾ ਹੈ ਤਾਂ ਵਿਅਕਤੀ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਰੱਖੋ।
ਪਹਿਲਾ ਸੈਸ਼ਨ ਫੋਰਗਰਾਊਂਡ ਵਿੱਚ ਚਲਾਓ ਅਤੇ ਆਉਟਪੁੱਟ ਪੜ੍ਹੋ
ਇੱਕ ਵਾਰ ਆਮ ਤਰੀਕੇ ਨਾਲ ਕਨੈਕਟ ਕਰੋ ਅਤੇ ਪੂਰਾ ਹੈਂਡਸ਼ੇਕ ਛਪਣ ਦਿਓ। ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਪ੍ਰੋਟੋਕੋਲ, ਸਰਟੀਫਿਕੇਟ ਜਾਂ ਟੋਕਨ ਦਾ ਰਸਤਾ, ਸਰਵਰ ਵੱਲੋਂ ਦਿੱਤਾ ਟਨਲ ਪਤਾ, ਅਤੇ ਕਨੈਕਸ਼ਨ ਸਵੀਕਾਰ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਦੀ ਹਰ ਚੇਤਾਵਨੀ ਨੋਟ ਕਰੋ। ਉਹ ਟ੍ਰਾਂਸਕ੍ਰਿਪਟ ਤੁਹਾਡੀ ਆਧਾਰ-ਰੇਖਾ ਹੈ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਕਲਾਇੰਟ ਸਮੱਸਿਆ ਨੂੰ ਗੇਟਵੇ ਬਦਲਾਅ ਤੋਂ ਵੱਖ ਪਛਾਣਨ ਦਾ ਇੱਕੋ ਸਸਤਾ ਤਰੀਕਾ। ਇਸਨੂੰ ਟਰਮੀਨਲ ਬਫਰ ਤੋਂ ਬਾਹਰ ਸੰਭਾਲੋ।
ਫਿਰ ਉਹੀ ਕਾਲ ਬੈਕਗਰਾਊਂਡ ਮੋਡ ਅਤੇ PID ਫਾਈਲ ਜੋੜ ਕੇ ਦੁਹਰਾਓ, ਉਦਾਹਰਨ openconnect --background --pid-file /run/openconnect.pid vpn.example.net, ਅਤੇ ਤੁਹਾਡੇ ਗੇਟਵੇ ਨੂੰ ਲੋੜੀਂਦੇ ਪ੍ਰੋਟੋਕੋਲ ਤੇ ਪ੍ਰਮਾਣਿਕਤਾ ਵਿਕਲਪ ਉਸੇ ਲਾਈਨ ਵਿੱਚ ਰੱਖੋ। OpenConnect ਮੈਨੂਅਲ ਇਸ ਵਿਕਲਪ ਨੂੰ ਸਟਾਰਟਅੱਪ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ ਬੈਕਗਰਾਊਂਡ ਵਿੱਚ ਜਾਰੀ ਰੱਖਣਾ ਦੱਸਦਾ ਹੈ, ਅਤੇ ਇਸੇ ਲਈ ਇੰਟਰੈਕਟਿਵ ਪੜਾਅ ਪਹਿਲਾਂ ਖਤਮ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
ਚੱਲ ਰਹੀ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਲੱਭਣ ਅਤੇ ਰੋਕਣ ਯੋਗ ਬਣਾਓ
PID ਫਾਈਲ ਤਦ ਤੱਕ ਹੀ ਸਬੂਤ ਹੈ ਜਦੋਂ ਤੱਕ ਇਹ ਜੀਵਤ ਪ੍ਰਕਿਰਿਆ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ। ਇਸਨੂੰ ਸੇਵਾ ਖਾਤੇ ਦੀ ਮਾਲਕੀ ਵਾਲੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਰੱਖੋ, ਅਤੇ ਕੋਈ ਸਿਗਨਲ ਭੇਜਣ ਤੋਂ ਪਹਿਲਾਂ ਦਰਜ ਨੰਬਰ ਦੀ ਪ੍ਰਕਿਰਿਆ ਸਾਰਣੀ ਨਾਲ ਤੁਲਨਾ ਕਰੋ। ਰੀਬੂਟ ਅਤੇ ਕ੍ਰੈਸ਼ ਫਾਈਲ ਛੱਡ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਪੁਰਾਣੀ ਫਾਈਲ ਹੀ ਆਮ ਕਾਰਨ ਹੈ ਕਿ ਸਟਾਪ ਸਕ੍ਰਿਪਟ ਟਨਲ ਅਜੇ ਚਾਲੂ ਹੁੰਦਿਆਂ ਸਫਲਤਾ ਦੀ ਰਿਪੋਰਟ ਕਰਦੀ ਹੈ। ਜਾਂਚ ਨੂੰ ਸਟਾਪ ਪ੍ਰਕਿਰਿਆ ਦਾ ਹਿੱਸਾ ਮੰਨੋ, ਵਿਕਲਪਿਕ ਕਦਮ ਨਹੀਂ।
ਪ੍ਰਮਾਣਿਤ PID ਨੂੰ ਸਿਗਨਲ ਭੇਜੋ, ਫਿਰ ਐਗਜ਼ਿਟ ਸਥਿਤੀ 'ਤੇ ਭਰੋਸਾ ਕਰਨ ਦੀ ਥਾਂ ਪੱਕਾ ਕਰੋ ਕਿ ਟਨਲ ਇੰਟਰਫੇਸ ਸੱਚਮੁੱਚ ਗਾਇਬ ਹੋ ਗਿਆ। ਜੇ ਇੰਟਰਫੇਸ ਸੈੱਟ ਕਰਨ ਲਈ ਕਲਾਇੰਟ ਨੂੰ ਉੱਚ ਅਧਿਕਾਰ ਚਾਹੀਦੇ ਹਨ, ਤਾਂ ਸਿਗਨਲ ਉਸ ਖਾਤੇ ਤੋਂ ਆਉਣਾ ਚਾਹੀਦਾ ਹੈ ਜਿਸਨੂੰ ਭੇਜਣ ਦੀ ਇਜਾਜ਼ਤ ਹੈ।
ਬੈਕਗਰਾਊਂਡ ਮੋਡ ਨੂੰ ਸੁਪਰਵਾਈਜ਼ਰ ਹੇਠ ਨਾ ਰੱਖੋ
systemd ਅਤੇ ਇਹੋ ਜਿਹੇ ਸੁਪਰਵਾਈਜ਼ਰ ਆਪਣੇ ਸ਼ੁਰੂ ਕੀਤੇ ਪ੍ਰੋਸੈਸ ਦੀ ਮਾਲਕੀ ਦੀ ਆਸ ਰੱਖਦੇ ਹਨ, ਇਸ ਲਈ ਦੂਰ ਫੋਰਕ ਹੁੰਦਾ ਕਲਾਇੰਟ ਉਹਨਾਂ ਨੂੰ ਉਲਝਾ ਦਿੰਦਾ ਹੈ। ਸੁਪਰਵਾਈਜ਼ਰ ਲਾਂਚਰ ਦੇ ਬਾਹਰ ਜਾਣ ਨੂੰ ਦੇਖਦਾ ਹੈ ਪਰ ਅਸਲ ਕਨੈਕਸ਼ਨ ਚੱਲਦਾ ਰਹਿੰਦਾ ਹੈ, ਇਸ ਲਈ ਰੀਸਟਾਰਟ ਤਰਕ, ਸਥਿਤੀ ਰਿਪੋਰਟਿੰਗ ਅਤੇ ਸਟਾਪ ਸਮਾਂ-ਸੀਮਾਵਾਂ ਹੁਣ ਸੱਚ ਨਾ ਹੋਣ ਵਾਲੀ ਗੱਲ ਦੱਸਦੀਆਂ ਹਨ। ਯੂਨਿਟ ਨੂੰ ਸਮਰਥਿਤ ਫੋਰਗਰਾਊਂਡ ਬਣਤਰ ਵਿੱਚ ਲਿਖੋ ਅਤੇ ਡੀਮਨ ਦਾ ਕੰਮ ਸੁਪਰਵਾਈਜ਼ਰ ਨੂੰ ਦਿਓ।
--background ਉਹਨਾਂ ਸੈਸ਼ਨਾਂ ਲਈ ਰੱਖੋ ਜੋ ਕੋਈ ਵਿਅਕਤੀ ਸ਼ੁਰੂ ਕਰਕੇ ਚਲਾ ਜਾਂਦਾ ਹੈ। ਜੇ ਲੋੜ ਕਿਸੇ ਦੇ ਲੌਗਇਨ ਤੋਂ ਪਹਿਲਾਂ ਮੌਜੂਦ ਟਨਲ ਦੀ ਹੈ, ਤਾਂ ਗੁੰਮ ਹਿੱਸਾ ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਗੈਰ-ਇੰਟਰੈਕਟਿਵ ਪਛਾਣ ਅਤੇ ਉਸਦੀ ਨਵੀਨੀਕਰਨ ਯੋਜਨਾ ਹੈ, ਅਤੇ ਕੋਈ ਕਮਾਂਡ-ਲਾਈਨ ਫਲੈਗ ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਨਹੀਂ ਦਿੰਦਾ। ਬੂਟ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਫਲੈਗ ਜੋੜਨ ਨਾਲ ਅਜਿਹਾ ਟਨਲ ਬਣਦਾ ਹੈ ਜੋ ਪਹਿਲੇ ਮਿਆਦ ਪੁੱਗੇ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ 'ਤੇ ਚੁੱਪਚਾਪ ਫੇਲ ਹੁੰਦਾ ਹੈ।
ਸੈਸ਼ਨ ਕੁਕੀ ਨੂੰ ਕ੍ਰੈਡੈਂਸ਼ੀਅਲ ਮੰਨੋ
OpenConnect --authenticate ਰਾਹੀਂ ਵੱਖਰਾ ਪ੍ਰਮਾਣਿਕਤਾ ਪੜਾਅ ਦਸਤਾਵੇਜ਼ ਕਰਦਾ ਹੈ, ਅਤੇ ਨਤੀਜਾ ਸਮੱਗਰੀ --cookie-on-stdin ਨਾਲ ਵਾਪਸ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਇਹ ਜੋੜੀ ਇਕੀਕਰਨ ਕੰਮ ਲਈ ਹੈ, ਅਤੇ ਇਹ ਜੋ ਪੈਦਾ ਕਰਦੀ ਹੈ ਉਹ ਇਸਨੂੰ ਬਣਾਉਣ ਵਾਲੇ ਪਾਸਵਰਡ ਜਿੰਨਾ ਹੀ ਸੰਵੇਦਨਸ਼ੀਲ ਹੈ।
ਮੁੱਲ ਨੂੰ ਸ਼ੈੱਲ ਇਤਿਹਾਸ, ਲੌਗ ਅਤੇ ਤੁਹਾਡੇ ਵੱਲੋਂ ਖੋਲ੍ਹੇ ਕਿਸੇ ਵੀ ਟਿਕਟ ਤੋਂ ਬਾਹਰ ਰੱਖੋ। ਹੈਂਡਓਫ ਸਕ੍ਰਿਪਟ ਨੂੰ ਕੁਕੀ ਨਾਲ ਕਲਾਇੰਟ ਨੂੰ ਮਿਲੀ ਪ੍ਰਮਾਣਿਤ ਐਂਡਪੌਇੰਟ ਜਾਣਕਾਰੀ ਵੀ ਸੰਭਾਲਣੀ ਚਾਹੀਦੀ ਹੈ; ਇਸਨੂੰ ਗੁਆਉਣ 'ਤੇ ਬਾਅਦ ਦਾ ਰਨ ਉਸ ਹੋਸਟ ਨਾਲ ਜੁੜ ਸਕਦਾ ਹੈ ਜਿਸਨੂੰ ਤੁਸੀਂ ਕਦੇ ਪ੍ਰਮਾਣਿਤ ਨਹੀਂ ਕੀਤਾ, ਜੋ ਸਿਰਫ ਫੇਲ ਹੋਣ ਵਾਲੇ ਕਨੈਕਸ਼ਨ ਤੋਂ ਵੀ ਮਾੜਾ ਹੈ।
ਟਰਮੀਨਲ ਬੰਦ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸੂਚੀ ਪੂਰੀ ਕਰੋ
ਚਾਰ ਗੱਲਾਂ ਸੱਚ ਹੋਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ: ਇੰਟਰੈਕਟਿਵ ਲੌਗਇਨ ਫੋਰਗਰਾਊਂਡ ਵਿੱਚ ਖਤਮ ਹੋਇਆ, PID ਫਾਈਲ ਤੁਹਾਡੇ ਪ੍ਰਮਾਣਿਤ ਪ੍ਰੋਸੈਸ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦੀ ਹੈ, ਸੁਪਰਵਾਈਜ਼ਰ ਸਵਾਲ ਇੱਕ ਪਾਸੇ ਤੈਅ ਹੋਇਆ, ਅਤੇ ਕੁਕੀ ਕੋਲ ਸਾਦੀ ਟੈਕਸਟ ਫਾਈਲ ਨਾ ਹੋਣ ਵਾਲੀ ਸਟੋਰੇਜ ਯੋਜਨਾ ਹੈ। ਚਾਰੇ ਸੱਚ ਹੋਣ 'ਤੇ ਟਰਮੀਨਲ ਤੋਂ ਦੂਰ ਜਾਣਾ ਸੁਰੱਖਿਅਤ ਹੈ ਅਤੇ ਟਨਲ ਚੱਲਦਾ ਰਹਿੰਦਾ ਹੈ।
ਜੇ ਇਹਨਾਂ ਵਿੱਚੋਂ ਇੱਕ ਫੇਲ ਹੋਵੇ, ਤਾਂ ਬਾਕੀਆਂ ਨੂੰ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ ਉਹ ਮਦ ਠੀਕ ਕਰੋ, ਕਿਉਂਕਿ ਬਾਕੀ ਜਾਂਚਾਂ ਇਸਦੀ ਭਰਪਾਈ ਨਹੀਂ ਕਰ ਸਕਦੀਆਂ। ਪਹਿਲੇ ਰਨ ਦੀ ਫੋਰਗਰਾਊਂਡ ਟ੍ਰਾਂਸਕ੍ਰਿਪਟ ਵੀ ਰੱਖੋ: ਅਗਲੀ ਵਾਰ ਜਦੋਂ ਟਨਲ ਬਿਨਾਂ ਚੇਤਾਵਨੀ ਡਿੱਗੇ, ਉਹੀ ਆਧਾਰ-ਰੇਖਾ ਗੇਟਵੇ ਪਾਸੇ ਦੇ ਬਦਲਾਅ ਨੂੰ ਕਲਾਇੰਟ ਪਾਸੇ ਦੇ ਬਦਲਾਅ ਤੋਂ ਵੱਖ ਕਰਦੀ ਹੈ।