VPN ਬਟਨ ਪ੍ਰਬੰਧਕ ਲਈ ਕੰਮ ਕਰਦਾ ਹੈ ਅਤੇ ਬਾਕੀ ਸਾਰਿਆਂ ਲਈ ਫੇਲ ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਕੋਈ sudoers ਵਿੱਚ ਇੱਕ ਲਾਈਨ ਜੋੜਦਾ ਹੈ। ਉਹ ਲਾਈਨ ਆਮ ਤੌਰ 'ਤੇ ਉਸ ਸਮੱਸਿਆ ਤੋਂ ਵੱਧ ਚਿਰ ਜੀਵਦੀ ਹੈ ਜਿਸ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਉਹ ਬਣੀ ਸੀ, ਅਤੇ ਅਕਸਰ ਬਟਨ ਦੀ ਲੋੜ ਤੋਂ ਵੱਧ ਅਧਿਕਾਰ ਦਿੰਦੀ ਹੈ। ਨੀਤੀ ਦੀ ਸੋਧ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚੋ ਕਿ ਸਮਰਥਿਤ ਕਨੈਕਸ਼ਨ ਦਾ ਮਾਲਕ ਇਹ ਕੰਮ ਪਹਿਲਾਂ ਹੀ ਕਰ ਸਕਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਹੇਠਾਂ ਦੀਆਂ ਤਿੰਨ ਸ਼ਰਤਾਂ ਤੈਅ ਕਰਦੀਆਂ ਹਨ ਕਿ sudo ਸ਼ਾਮਲ ਹੈ ਜਾਂ ਨਹੀਂ।

ਸ਼ਰਤ 1: ਸਮਰਥਿਤ ਮਾਲਕ ਇਹ sudo ਤੋਂ ਬਿਨਾਂ ਕਰ ਸਕਦਾ ਹੈ

ਬਹੁਤੇ Linux ਡੈਸਕਟਾਪਾਂ 'ਤੇ ਨੈੱਟਵਰਕ ਮੈਨੇਜਰ ਪਹਿਲਾਂ ਹੀ VPN ਕਨੈਕਸ਼ਨਾਂ ਦਾ ਮਾਲਕ ਹੁੰਦਾ ਹੈ, ਅਤੇ ਇਸ ਦਾ ਪ੍ਰਮਾਣੀਕਰਨ sudo ਦੀ ਬਜਾਏ polkit ਰਾਹੀਂ ਜਾਂਦਾ ਹੈ। ਜਿਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਕਨੈਕਸ਼ਨ ਚੁੱਕਣ ਦੀ ਆਗਿਆ ਹੈ, ਉਹ ਕਿਸੇ ਵੀ root ਨਿਯਮ ਤੋਂ ਬਿਨਾਂ ਹੁਕਮ ਲਾਈਨ ਤੋਂ ਇਹ ਕਰ ਸਕਦਾ ਹੈ। ਬਟਨ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਚਾਹੀਦਾ ਹੈ ਇਹ ਮੰਨਣ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚੋ ਕਿ ਮੈਨੇਜਰ ਕੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਜੇ ਜਵਾਬ ਹਾਂ ਹੈ, ਤਾਂ sudoers ਤਬਦੀਲੀ ਉਹ ਸਮੱਸਿਆ ਹੱਲ ਕਰ ਰਹੀ ਹੈ ਜੋ ਹੈ ਹੀ ਨਹੀਂ।

nmcli connection show
nmcli connection up "Work VPN"

ਜੇ ਮੈਨੇਜਰ ਮਨਾ ਕਰਦਾ ਹੈ, ਤਾਂ ਕਾਰਨ ਪੜ੍ਹੋ: ਗੁੰਮ polkit ਨਿਯਮ, ਕਿਸੇ ਹੋਰ ਵਰਤੋਂਕਾਰ ਦੀ ਮਾਲਕੀ ਵਾਲਾ ਕਨੈਕਸ਼ਨ ਜਾਂ ਅਜਿਹੀ ਥਾਂ ਰੱਖੀ ਪ੍ਰੋਫਾਈਲ ਜਿੱਥੋਂ ਵਰਤੋਂਕਾਰ ਇਸਨੂੰ ਪੜ੍ਹ ਨਹੀਂ ਸਕਦਾ। ਇਹਨਾਂ ਵਿੱਚੋਂ ਹਰ ਇੱਕ ਲਈ sudo ਨਿਯਮ ਨਾਲੋਂ ਤੰਗ ਸਮਰਥਿਤ ਹੱਲ ਹੈ। ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਵਧਾਉਣਾ ਆਖਰੀ ਉਪਾਅ ਹੈ, ਪਹਿਲਾ ਨਹੀਂ।

ਸ਼ਰਤ 2: ਨਿਯਮ ਇੱਕ ਚੱਲਣਯੋਗ ਫਾਈਲ ਅਤੇ ਇਸਦੇ ਆਰਗੂਮੈਂਟਾਂ ਦਾ ਨਾਮ ਲੈਂਦਾ ਹੈ

ਜੇ sudo ਸੱਚਮੁੱਚ ਜ਼ਰੂਰੀ ਹੈ, ਤਾਂ ਨਿਯਮ ਨੂੰ ਸਹੀ ਹੁਕਮ ਅਤੇ ਜਿੱਥੇ ਸੰਭਵ ਹੋਵੇ, ਉਹ ਆਰਗੂਮੈਂਟ ਦੱਸਣੇ ਚਾਹੀਦੇ ਹਨ ਜੋ ਇਹ ਵਰਤ ਸਕਦਾ ਹੈ। ਜੋ ਨਿਯਮ ਵਰਤੋਂਕਾਰ ਨੂੰ ਰੈਪਰ ਸਕ੍ਰਿਪਟ ਚਲਾਉਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਉਹ ਉਸ ਸਕ੍ਰਿਪਟ ਦੀਆਂ ਆਗਿਆਵਾਂ ਜਿੰਨਾ ਹੀ ਸੁਰੱਖਿਅਤ ਹੈ, ਕਿਉਂਕਿ ਵਰਤੋਂਕਾਰ ਬਦਲ ਸਕਦਾ ਹੈ ਕਿ root ਕੀ ਚਲਾਏਗਾ। ਹੁਕਮ ਤੋਂ ਬਾਅਦ ਵਾਈਲਡਕਾਰਡ ਵਾਲਾ ਨਿਯਮ ਉਸੇ ਸਮੱਸਿਆ ਦਾ ਛੋਟਾ ਰੂਪ ਹੈ।

sudo -l -U alice
ls -l /usr/local/sbin/vpn-up

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

ਜੇ ਹੁਕਮ ਨੂੰ ਕੰਮ ਕਰਨ ਲਈ ਵਰਤੋਂਕਾਰ-ਨਿਯੰਤਰਿਤ ਫਾਈਲ ਚਾਹੀਦੀ ਹੈ ਤਾਂ ਰੁਕੋ। ਤਦ ਡਿਜ਼ਾਈਨ ਗਲਤ ਹੈ, ਅਤੇ ਕੋਈ ਵੀ sudoers ਸੰਟੈਕਸ ਇਸਨੂੰ ਸੁਰੱਖਿਅਤ ਨਹੀਂ ਬਣਾਏਗਾ।

ਸ਼ਰਤ 3: ਪੂਰੀ ਨੀਤੀ ਪਾਰਸ ਹੁੰਦੀ ਹੈ, ਸਿਰਫ਼ ਤੁਹਾਡੀ ਲਾਈਨ ਨਹੀਂ

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

sudo visudo -c
sudo visudo -cf /etc/sudoers.d/vpn-launcher

ਜਾਂਚ ਫੇਲ ਹੋਣ 'ਤੇ ਫਾਈਲ ਅਤੇ ਲਾਈਨ ਦੱਸਦੀ ਹੈ, ਅਤੇ ਉਹੀ ਰਿਪੋਰਟ ਲਾਹੇਵੰਦ ਹਿੱਸਾ ਹੈ। ਜਾਣੀ-ਪਛਾਣੀ ਗਲਤੀ ਨੂੰ ਜ਼ਬਰਦਸਤੀ ਸੰਭਾਲਣ ਦੀ ਬਜਾਏ ਸੰਪਾਦਕ ਰਾਹੀਂ ਇੱਛਤ ਬਦਲਾਅ ਠੀਕ ਕਰੋ, ਕਿਉਂਕਿ ਟੁੱਟੀ ਨੀਤੀ ਇੱਕੋ ਸਮੇਂ ਸਾਰੇ ਪ੍ਰਬੰਧਕਾਂ ਨੂੰ ਬਾਹਰ ਕਰ ਸਕਦੀ ਹੈ। ਸ਼ਾਮਲ ਕਰਨ ਵਾਲੀ ਡਾਇਰੈਕਟਰੀ ਦੀਆਂ ਫਾਈਲਾਂ ਨੂੰ ਵੀ ਮੈਨੁਅਲ ਵੱਲੋਂ ਮੰਗੀ ਮਾਲਕੀ ਅਤੇ ਮੋਡ ਚਾਹੀਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ ਉਹਨਾਂ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਜਾਂ ਰੱਦ ਕੀਤਾ ਜਾਵੇਗਾ। ਸੰਟੈਕਸ ਸਿਰਫ਼ ਪਹਿਲਾ ਦਰਵਾਜ਼ਾ ਹੈ: ਇਸਨੂੰ ਪਾਰ ਕਰਨ ਤੋਂ ਬਾਅਦ ਨਿਯਮ ਦੁਬਾਰਾ ਪੜ੍ਹੋ ਅਤੇ ਪੁੱਛੋ ਕਿ ਇਹ ਅਸਲ ਵਿੱਚ ਕੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।

ਜੇ ਬਦਲਾਅ ਨੂੰ ਕੰਮ ਕਰਾਉਣ ਦਾ ਇੱਕੋ ਇੱਕ ਤਰੀਕਾ ਸੰਟੈਕਸ ਜਾਂਚ ਬੰਦ ਕਰਨਾ ਹੈ ਤਾਂ ਰੁਕੋ। ਉਹ ਨੀਤੀ ਨਹੀਂ, ਉਹ ਰੀਬੂਟ ਦੀ ਉਡੀਕ ਕਰ ਰਿਹਾ ਰੁਕਾਵਟ ਹੈ।

ਰਿਕਵਰੀ: ਅਜੇ ਵੀ ਕੰਮ ਕਰਨ ਵਾਲਾ ਸੈਸ਼ਨ ਰੱਖੋ

ਸੰਭਾਲਣ ਤੋਂ ਪਹਿਲਾਂ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਅਧਿਕਾਰਤ ਪ੍ਰਬੰਧਕੀ ਸੈਸ਼ਨ ਪਹਿਲਾਂ ਹੀ ਖੁੱਲ੍ਹਾ ਹੈ ਅਤੇ ਮਸ਼ੀਨ ਵਿੱਚ ਦੂਜਾ ਰਾਹ ਮੌਜੂਦ ਹੈ। sudoers ਦੀ ਗਲਤੀ ਤੁਹਾਡੀ ਇਸਨੂੰ ਠੀਕ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਖੋਹ ਸਕਦੀ ਹੈ, ਅਤੇ ਡੈਸਕਟਾਪ ਦਾ ਬਟਨ ਉਸ ਜੋਖਮ ਦੇ ਯੋਗ ਨਹੀਂ। ਜੇ sudo ਪਹਿਲਾਂ ਹੀ ਟੁੱਟਿਆ ਹੈ, ਤਾਂ ਆਪਣਾ ਰਾਹ ਬਣਾਉਣ ਦੀ ਬਜਾਏ ਸਿਸਟਮ ਦਾ ਦਸਤਾਵੇਜ਼ੀ ਰਿਕਵਰੀ ਪਾਥ ਵਰਤੋ।

sudo -n true
id

pkexec ਵਰਗੇ ਬਦਲ ਆਪਣੀ ਸਥਾਪਨਾ ਅਤੇ ਨੀਤੀ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ, ਇਸ ਲਈ ਉਹ ਗਾਰੰਟੀਸ਼ੁਦਾ ਦੂਜਾ root ਪ੍ਰੌਂਪਟ ਨਹੀਂ ਹਨ। ਸਥਾਨਕ ਪ੍ਰਮਾਣੀਕਰਨ ਨੂੰ VPN ਭੇਤ ਦੇਣ ਤੋਂ ਵੀ ਵੱਖ ਰੱਖੋ: sudo ਨਿਯਮ ਗੈਰਹਾਜ਼ਰ ਸੀਕ੍ਰੇਟ ਏਜੰਟ ਨਹੀਂ ਖੋਲ ਸਕਦਾ, ਅਤੇ ਇਹ ਗੇਟਵੇ ਦੇ MFA ਨੂੰ ਪੂਰਾ ਨਹੀਂ ਕਰਦਾ। ਸੁਧਾਰ ਤੋਂ ਬਾਅਦ ਆਮ ਖਾਤੇ ਨੂੰ ਸਿਰਫ਼ ਇੱਛਤ ਕਾਰਵਾਈ ਕਰਦਿਆਂ ਪਰਖੋ, ਫਿਰ ਮੈਨੇਜਰ ਦੇ ਆਮ ਨਿਯੰਤਰਣ ਵਰਤੋ।

ਫੈਸਲਾ ਤਦ ਪੂਰਾ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਦੱਸ ਸਕੋ ਕਿ ਕਿਹੜੀ ਸ਼ਰਤ ਨੇ sudo ਨੂੰ ਜਾਇਜ਼ ਠਹਿਰਾਇਆ, ਨਿਯਮ ਕੀ ਨਾਮ ਲੈਂਦਾ ਹੈ, ਪੂਰੀ ਨੀਤੀ ਪਾਰਸ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਨਾ ਹੋਣ 'ਤੇ ਤੁਸੀਂ ਕਿਵੇਂ ਰਿਕਵਰ ਕਰਦੇ। ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਵਾਲਾ ਲਾਂਚਰ ਜੋ ਤੁਹਾਡੀ ਪ੍ਰਬੰਧਕੀ ਪਹੁੰਚ ਖੋਹ ਲਵੇ, ਮਾੜਾ ਸੌਦਾ ਹੈ, ਅਤੇ ਆਮ ਤੌਰ 'ਤੇ ਇਸ ਤੋਂ ਬਚਿਆ ਜਾ ਸਕਦਾ ਹੈ।

ਸੰਬੰਧਿਤ ਲੇਖ