OpenVPN ਸ਼ੁਰੂ ਹੋਇਆ ਪਰ ਕੁਝ ਵੀ ਨਹੀਂ ਛਾਪਿਆ: ਪਹਿਲਾਂ log-append ਦੇਖੋ
ਹੱਥੀਂ ਸ਼ੁਰੂ ਕਰਨ ਵੇਲੇ ਦੀ ਚੁੱਪ ਨਾਕਾਮੀ ਨਹੀਂ ਹੈ। ਲੋਡ ਕੀਤੇ ਪ੍ਰੋਫ਼ਾਈਲ ਵਿੱਚ log ਅਤੇ log-append ਪੜ੍ਹੋ, ਫਿਰ ਫ਼ਾਈਲ ਅਤੇ ਉਸ ਦੇ ਸਮਾਂ-ਚਿੰਨ੍ਹਾਂ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਨਾਲ ਮਿਲਾਓ।
ਤੁਸੀਂ ਕਨਫਿਗਰੇਸ਼ਨ ਫ਼ਾਈਲ ਨਾਲ ਸ਼ੈੱਲ ਤੋਂ OpenVPN ਸ਼ੁਰੂ ਕਰਦੇ ਹੋ, ਅਤੇ ਟਰਮੀਨਲ ਬਿਨਾਂ ਕਿਸੇ ਆਉਟਪੁੱਟ ਦੇ ਉਵੇਂ ਖੜ੍ਹਾ ਰਹਿੰਦਾ ਹੈ। ਕੋਈ ਬੈਨਰ ਨਹੀਂ, ਕੋਈ ਗਲਤੀ ਨਹੀਂ, ਕੋਈ ਪ੍ਰੋਂਪਟ ਨਹੀਂ। ਲੱਗਦਾ ਹੈ ਕਿ ਸ਼ੁਰੂਆਤ ਫੇਲ੍ਹ ਹੋ ਗਈ, ਇਸ ਲਈ ਤੁਸੀਂ ਇੱਕ ਹੋਰ ਕਾਪੀ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋ, ਫਿਰ ਇੱਕ ਹੋਰ, ਅਤੇ ਮਸ਼ੀਨ ਉੱਤੇ ਕਈ ਅੱਧ-ਕਨਫਿਗਰ ਕੀਤੀਆਂ ਕਾਪੀਆਂ ਰਹਿ ਜਾਂਦੀਆਂ ਹਨ। ਇਹ ਸਭ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਪ੍ਰੋਫ਼ਾਈਲ ਵਿੱਚ ਕੋਈ ਨਿਰਦੇਸ਼ ਲੱਭੋ ਜੋ ਲੌਗ ਨੂੰ ਪਹਿਲਾਂ ਹੀ ਕਿਤੇ ਹੋਰ ਭੇਜ ਚੁੱਕਾ ਹੈ। ਚੁੱਪ ਕੰਸੋਲ ਦਾ ਗੁਣ ਹੈ, ਪ੍ਰਕਿਰਿਆ ਦਾ ਨਹੀਂ।
ਚੁੱਪ ਦੇ ਦੋ ਬਹੁਤ ਵੱਖਰੇ ਵਿਆਖਿਆ ਹਨ
ਪਹਿਲੀ ਇਹ ਹੈ ਕਿ ਪ੍ਰਕਿਰਿਆ ਠੀਕ ਚੱਲ ਰਹੀ ਹੈ ਅਤੇ ਉਸ ਫ਼ਾਈਲ ਵਿੱਚ ਲਿਖ ਰਹੀ ਹੈ ਜਿਸ ਨੂੰ ਤੁਸੀਂ ਨਹੀਂ ਦੇਖ ਰਹੇ। ਦੂਜੀ ਇਹ ਹੈ ਕਿ ਇਹ ਤੁਰੰਤ ਉਸੇ ਫ਼ਾਈਲ ਵਿੱਚ ਦਰਜ ਗਲਤੀ ਨਾਲ ਬਾਹਰ ਨਿਕਲ ਗਈ।
ਦੋਵੇਂ ਖਾਲੀ ਟਰਮੀਨਲ ਛੱਡਦੇ ਹਨ, ਅਤੇ ਇੱਕ ਸਵਾਲ ਉਨ੍ਹਾਂ ਨੂੰ ਵੱਖ ਕਰਦਾ ਹੈ: ਹੁਣ ਕੋਈ ਪ੍ਰਕਿਰਿਆ ਹੈ ਜਾਂ ਨਹੀਂ, ਅਤੇ ਜਿਸ ਫ਼ਾਈਲ ਵਿੱਚ ਲਿਖਣ ਲਈ ਕਿਹਾ ਗਿਆ ਸੀ ਉਸ ਵਿੱਚ ਕੀ ਹੈ। ਕਨਫਿਗਰੇਸ਼ਨ ਨੂੰ ਦੁਬਾਰਾ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ ਇਸ ਦਾ ਜਵਾਬ ਦਿਓ। ਆਉਟਪੁੱਟ ਲੈਣ ਲਈ ਦੁਬਾਰਾ ਸ਼ੁਰੂ ਕਰਨਾ ਹੀ ਦੋ ਕਾਪੀਆਂ ਦਾ ਇੱਕ ਟਨਲ ਜੰਤਰ ਅਤੇ ਇੱਕੋ ਪੋਰਟ ਲਈ ਲੜਨ ਦਾ ਕਾਰਨ ਬਣਦਾ ਹੈ, ਜੋ ਮੂਲ ਸਮੱਸਿਆ ਨਾਲ ਕੋਈ ਸੰਬੰਧ ਨਾ ਰੱਖਣ ਵਾਲੀਆਂ ਗਲਤੀਆਂ ਪੈਦਾ ਕਰਦਾ ਹੈ।
ਨਿਰਦੇਸ਼ ਲੱਭੋ, ਫਿਰ ਪ੍ਰਕਿਰਿਆ ਲੱਭੋ।
ps -o pid,args= -C openvpn
grep -nE '^\s*(log|log-append|cd|daemon|verb)\b' /etc/openvpn/server/server.confਚੱਲ ਰਹੀ ਪ੍ਰਕਿਰਿਆ ਵੱਲੋਂ ਵਰਤੀ ਜਾਂਦੀ ਮੰਜ਼ਿਲ ਲੱਭੋ
ਉਹ ਪ੍ਰੋਫ਼ਾਈਲ ਪੜ੍ਹੋ ਜਿਸ ਨਾਲ ਪ੍ਰਕਿਰਿਆ ਅਸਲ ਵਿੱਚ ਸ਼ੁਰੂ ਹੋਈ ਸੀ, ਉਹ ਨਹੀਂ ਜੋ ਤੁਸੀਂ ਸੋਧਿਆ। ਸੇਵਾ ਵੱਲੋਂ ਸੰਭਾਲੀ ਕਾਪੀ ਆਮ ਤੌਰ ਉੱਤੇ ਵੱਖਰਾ ਰਾਹ ਲੋਡ ਕਰਦੀ ਹੈ ਅਤੇ ਵੱਖਰੀ ਕੰਮਕਾਜੀ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਚੱਲਦੀ ਹੈ, ਇਸ ਲਈ ਸਾਪੇਖ ਫ਼ਾਈਲਨਾਮ ਕਿਸੇ ਅਜਿਹੀ ਥਾਂ ਹੱਲ ਹੁੰਦਾ ਹੈ ਜਿਸ ਦੀ ਤੁਸੀਂ ਉਮੀਦ ਨਹੀਂ ਕੀਤੀ ਸੀ।
ਸਪਸ਼ਟ cd ਨਿਰਦੇਸ਼ ਉਸ ਫ਼ਰਕ ਨੂੰ ਹੋਰ ਤਿੱਖਾ ਕਰਦਾ ਹੈ, ਕਿਉਂਕਿ ਸਾਪੇਖ ਰਾਹ ਡਾਇਰੈਕਟਰੀ ਦੀ ਤਬਦੀਲੀ ਨਾਲ ਹੁੰਦਾ ਹੈ। ਜੇ ਇਹ ਕਨਫਿਗਰੇਸ਼ਨ ਤੁਹਾਨੂੰ ਵਿਰਾਸਤ ਵਿੱਚ ਮਿਲੀ ਹੈ, ਤਾਂ ਫ਼ਾਈਲ ਉਸ ਥਾਂ ਪਈ ਹੋ ਸਕਦੀ ਹੈ ਜਿੱਥੇ ਹੁਣ ਕੋਈ ਨਹੀਂ ਲੱਭੇਗਾ।
ਫ਼ਾਈਲ ਦੇ ਬਦਲੇ ਸਮੇਂ ਦੀ ਤੁਲਨਾ ਉਸ ਪਲ ਨਾਲ ਕਰੋ ਜਦੋਂ ਤੁਸੀਂ ਸ਼ੁਰੂ ਕੀਤਾ। ਪਿਛਲੇ ਹਫ਼ਤੇ ਦਾ ਲੌਗ ਪਿਛਲੇ ਹਫ਼ਤੇ ਦਾ ਸਬੂਤ ਹੈ। ਫਿਰ ਬਦਲੀ ਫ਼ਾਈਲ ਦੀਆਂ ਆਖ਼ਰੀ ਸਤਰਾਂ ਪੜ੍ਹੋ, ਅਤੇ ਉੱਥੇ ਜੋ ਵੀ ਹੈ ਉਸ ਨੂੰ ਉਹ ਸ਼ੁਰੂਆਤੀ ਸੁਨੇਹਾ ਮੰਨੋ ਜੋ ਤੁਹਾਨੂੰ ਮਿਲਿਆ ਨਹੀਂ ਸੀ।
log ਬਨਾਮ log-append: ਸਬੂਤ ਅਤੇ ਮਿਟਾਉਣਾ
log-append ਫ਼ਾਈਲ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਚੀਜ਼ ਵਿੱਚ ਵਾਧਾ ਕਰਦਾ ਹੈ। log ਫ਼ਾਈਲ ਨੂੰ ਲਿਖਣ ਲਈ ਖੋਲ੍ਹਦਾ ਹੈ ਅਤੇ ਉਸ ਨੂੰ ਕੱਟ ਦਿੰਦਾ ਹੈ, ਇਸ ਲਈ ਦੋਵਾਂ ਵਿਚਕਾਰ ਬਦਲਣਾ ਉਹ ਰਨ ਮਿਟਾ ਸਕਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਪੜ੍ਹਨ ਵਾਲੇ ਸੀ।
ਜੇ ਕਿਸੇ ਨੇ ਡੀਬੱਗ ਕਰਦਿਆਂ ਨਿਰਦੇਸ਼ ਬਦਲਿਆ, ਤਾਂ ਪਿਛਲਾ ਸਬੂਤ ਪਹਿਲਾਂ ਹੀ ਚਲਾ ਗਿਆ ਹੈ ਅਤੇ ਫ਼ਾਈਲ ਦਾ ਆਕਾਰ ਸ਼ੱਕੀ ਤੌਰ ਉੱਤੇ ਛੋਟਾ ਦਿਸੇਗਾ। ਦੋ ਰਨਾਂ ਦੀ ਤੁਲਨਾ ਕਰਕੇ ਇਹ ਸਿੱਟਾ ਕੱਢਣ ਤੋਂ ਪਹਿਲਾਂ ਇਹ ਜਾਣਨਾ ਲਾਭਦਾਇਕ ਹੈ ਕਿ ਕੁਝ ਬਦਲਿਆ ਹੈ। ਲੌਗ ਜਾਣ-ਬੁੱਝ ਕੇ ਮਿਟਾਓ ਜਾਂ ਰੱਖੋ, ਪਰ ਜਾਣੋ ਤੁਸੀਂ ਕੀ ਕੀਤਾ। ਜਾਣ-ਬੁੱਝ ਕੇ ਹਟਾਇਆ ਸਬੂਤ ਉਸ ਸਬੂਤ ਨਾਲੋਂ ਸਮਝਣਾ ਸੌਖਾ ਹੈ ਜੋ ਤੁਸੀਂ ਅਚਾਨਕ ਗੁਆ ਦਿੱਤਾ।
ਕੋਈ ਵੀ ਚੋਣ ਗੁੰਮ ਹੋਈਆਂ ਮੁੱਢਲੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਨਹੀਂ ਬਣਾਉਂਦੀ, ਅਤੇ ਕੋਈ ਵੀ ਫ਼ਾਈਲ ਸਿਸਟਮ ਅਨੁਮਤੀਆਂ ਜਾਂ ਸੇਵਾ ਸੈਂਡਬਾਕਸ ਰਾਹੀਂ ਪਹੁੰਚ ਨਹੀਂ ਦਿੰਦੀ। ਕਨਫਿਗਰੇਸ਼ਨ ਵਿੱਚ ਸਹੀ ਦਿਸਣ ਵਾਲਾ ਰਾਹ ਫਿਰ ਵੀ ਉਸ ਖਾਤੇ ਲਈ ਨਾ-ਲਿਖਣਯੋਗ ਹੋ ਸਕਦਾ ਹੈ ਜਿਸ ਵਜੋਂ ਡੈਮਨ ਚੱਲਦਾ ਹੈ, ਅਤੇ ਫਿਰ ਡੈਮਨ ਕੁਝ ਵੀ ਦੱਸਣ ਤੋਂ ਪਹਿਲਾਂ ਫੇਲ੍ਹ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਮੰਨਣ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਫ਼ਾਈਲਨਾਮ ਹੀ ਸਮੱਸਿਆ ਹੈ, ਡਾਇਰੈਕਟਰੀ ਦਾ ਹੋਣਾ ਅਤੇ ਉਸ ਦਾ ਮਾਲਕ ਜਾਂਚੋ।
ਜਦੋਂ ਸੇਵਾ ਰੈਪਰ ਆਉਟਪੁੱਟ ਫੜਦਾ ਹੈ
systemd ਅਧੀਨ, ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਅਤੇ ਗਲਤੀਆਂ ਜਰਨਲ ਵਿੱਚ ਜਾਂਦੀਆਂ ਹਨ ਜਦੋਂ ਤੱਕ ਕੋਈ ਸਪਸ਼ਟ ਫ਼ਾਈਲ ਨਿਰਦੇਸ਼ ਪਹਿਲ ਨਹੀਂ ਲੈਂਦਾ, ਅਤੇ ਵਿਕਰੇਤਾ ਦਾ ਰੈਪਰ ਉਨ੍ਹਾਂ ਨੂੰ ਬਿਲਕੁਲ ਕਿਸੇ ਹੋਰ ਥਾਂ ਫੜ ਸਕਦਾ ਹੈ।
ਇਸੇ ਲਈ ਉਹੀ ਪ੍ਰੋਫ਼ਾਈਲ ਸ਼ੈੱਲ ਤੋਂ ਅਤੇ ਯੂਨਿਟ ਤੋਂ ਵੱਖਰਾ ਵਿਵਹਾਰ ਕਰਦਾ ਹੈ। ਯੂਨਿਟ ਦਾ ਵਾਤਾਵਰਣ, ਉਸ ਦੀ ਕੰਮਕਾਜੀ ਡਾਇਰੈਕਟਰੀ ਅਤੇ ਉਸ ਦੇ ਮਿਆਰੀ ਪ੍ਰਵਾਹ ਤੁਹਾਡੇ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈੱਲ ਨਾਲੋਂ ਵੱਖਰੇ ਹੁੰਦੇ ਹਨ। ਸਾਪੇਖ ਰਾਹ ਇੱਕ ਸੰਦਰਭ ਵਿੱਚ ਹੱਲ ਹੋ ਸਕਦਾ ਹੈ ਅਤੇ ਦੂਜੇ ਵਿੱਚ ਕਿਤੇ ਨਹੀਂ ਪਹੁੰਚਦਾ। ਜਦੋਂ ਦੋਵੇਂ ਨਾ ਮਿਲਣ, ਤਾਂ ਪ੍ਰੋਫ਼ਾਈਲ ਨਹੀਂ, ਯੂਨਿਟ ਦੀ ਪਰਿਭਾਸ਼ਾ ਪੜ੍ਹੋ।
ਇਹ ਸਿੱਟਾ ਕੱਢਣ ਦੀ ਥਾਂ ਕਿ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਇੱਕ ਟੁੱਟਾ ਹੈ, ਦੋਵੇਂ ਸ਼ੁਰੂਆਤੀ ਢੰਗਾਂ ਦੀ ਤੁਲਨਾ ਕਰੋ। ਯੂਨਿਟ ਦੀ ਕਮਾਂਡ ਲਾਈਨ ਅਤੇ ਉਸ ਦਾ ਵਾਤਾਵਰਣ ਪੜ੍ਹੋ, ਫਿਰ ਉਸੇ ਸਮੇਂ ਦੀ ਖਿੜਕੀ ਦਾ ਜਰਨਲ ਪੜ੍ਹੋ। ਜੇ ਰੈਪਰ ਆਉਟਪੁੱਟ ਨੂੰ ਆਪਣੀ ਫ਼ਾਈਲ ਵਿੱਚ ਭੇਜਦਾ ਹੈ, ਤਾਂ ਉਹ ਫ਼ਾਈਲ ਹੁਣ ਤੁਹਾਡਾ ਲੌਗ ਹੈ, ਅਤੇ ਸੁਨੇਹੇ ਕਿੱਥੇ ਗਏ ਇਸ ਲਈ OpenVPN ਨਿਰਦੇਸ਼ ਅਪ੍ਰਸੰਗਿਕ ਹਨ।
ਵਿਸਥਾਰ ਪੱਧਰ ਵਧਾਓ, ਪਰ ਉਦੋਂ ਹੀ ਜਦੋਂ ਤੁਸੀਂ ਉਹ ਪੜ੍ਹ ਸਕੋ
ਮੰਜ਼ਿਲ ਲੱਭਣ ਤੋਂ ਪਹਿਲਾਂ ਵਿਸਥਾਰ ਪੱਧਰ ਵਧਾਉਣਾ ਸਿਰਫ਼ ਉਸ ਥਾਂ ਵਧੇਰੇ ਲਿਖਤ ਪੈਦਾ ਕਰਦਾ ਹੈ ਜਿੱਥੇ ਤੁਸੀਂ ਨਹੀਂ ਦੇਖ ਰਹੇ।
ਇੱਕ ਵਾਰ ਜਾਣ ਲਓ ਕਿ ਆਉਟਪੁੱਟ ਕਿੱਥੇ ਡਿਗਦੀ ਹੈ, ਤਾਂ ਮੱਧਮ ਪੱਧਰ ਦਿਖਾਉਂਦਾ ਹੈ ਕਿ ਪ੍ਰੋਫ਼ਾਈਲ ਪਾਰਸ ਹੋ ਰਿਹਾ ਹੈ ਅਤੇ ਕਨੈਕਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਹੋ ਰਹੀ ਹੈ। ਸ਼ੁਰੂਆਤੀ ਸਮੱਸਿਆ ਲਈ ਦੋ ਜਾਂ ਤਿੰਨ ਕਾਫ਼ੀ ਹਨ। ਉੱਚੇ ਪੱਧਰ ਤਦ ਸਾਰਥਕ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਨਾਕਾਮੀ ਗੱਲਬਾਤ ਦੀ ਬਾਰੀਕੀ ਹੋਵੇ, ਅਤੇ ਉਹ ਫ਼ਾਈਲ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਵੱਡਾ ਵੀ ਕਰਦੇ ਹਨ।
ਫਿਰ ਅਸਲ ਗਲਤੀ ਪੜ੍ਹੋ। ਚੁੱਪ ਟਰਮੀਨਲ ਇਸ ਬਾਰੇ ਕੁਝ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਟਨਲ ਉੱਪਰ ਆਇਆ ਜਾਂ ਨਹੀਂ, ਅਤੇ ਫ਼ਾਈਲ ਵਿੱਚ ਦਰਜ ਨਾਕਾਮੀ ਹੀ ਠੀਕ ਕਰਨ ਯੋਗ ਹੈ।