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

ਝੰਡਾ ਅਸਲ ਵਿੱਚ ਕੀ ਬਦਲਦਾ ਹੈ

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

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

ਹਰ ਗਲਤੀ ਨੂੰ ਇੱਕ ਪੂਰਵ-ਸ਼ਰਤ ਨਾਲ ਮਿਲਾਓ

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

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

ਲੱਛਣ ਨਹੀਂ, ਲੋੜ ਜਾਂਚੋ

ਉਸ ਘੱਟੋ-ਘੱਟ ਕਾਲ ਤੋਂ ਸ਼ੁਰੂ ਕਰੋ ਜੋ ਇਮੇਜ ਦਸਤਾਵੇਜ਼ ਕਰਦੀ ਹੈ, ਇਸਨੂੰ ਚਲਾਓ, ਅਤੇ ਅਸਫਲਤਾ ਦਾ ਸਹੀ ਪਾਠ ਰੱਖੋ। ਫਿਰ ਇੱਕ ਵਾਰ ਵਿੱਚ ਇੱਕ ਇਜਾਜ਼ਤ ਸ਼ਾਮਲ ਕਰੋ ਅਤੇ ਨੋਟ ਕਰੋ ਕਿ ਕਿਹੜੇ ਜੋੜ ਨੇ ਨਤੀਜਾ ਬਦਲਿਆ।

ls -l /dev/net/tun
docker run --rm --cap-add NET_ADMIN --device /dev/net/tun image:tag
ip -br link show type tun

ਜੋ ਕੰਟੇਨਰ ਯੰਤਰ ਵੇਖ ਸਕਦਾ ਹੈ ਅਤੇ ਸਮਰੱਥਾ ਰੱਖਦਾ ਹੈ ਪਰ ਫਿਰ ਵੀ ਅਸਫਲ ਹੁੰਦਾ ਹੈ, ਉਹ ਤੁਹਾਨੂੰ ਦੱਸਦਾ ਹੈ ਕਿ ਸਮੱਸਿਆ ਕਿਤੇ ਹੋਰ ਹੈ। ਇਹ ਇੱਕ ਲਾਭਦਾਇਕ ਨਤੀਜਾ ਹੈ, ਅਤੇ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਮੋਡ ਇਸਨੂੰ ਲੁਕਾ ਦਿੰਦਾ।

ਹੋਸਟ 'ਤੇ ਯੰਤਰ ਦੀਆਂ ਇਜਾਜ਼ਤਾਂ ਵੀ ਜਾਂਚੋ, ਕਿਉਂਕਿ ਸਹੀ ਤਰ੍ਹਾਂ ਦਿੱਤਾ ਯੰਤਰ ਨੋਡ ਗਲਤ ਗਰੁੱਪ ਮਾਲਕੀ ਨਾਲ ਗੁੰਮ ਇਜਾਜ਼ਤ ਵਰਗੀ ਹੀ ਗਲਤੀ ਪੈਦਾ ਕਰਦਾ ਹੈ।

ਜੋ ਸਭ ਤੋਂ ਸੰਗਡੀ ਇਜਾਜ਼ਤ ਕੰਮ ਕਰੇ ਉਹ ਲਿਖੋ

ਤੈਨਾਤੀ ਨੂੰ ਲੋੜੀਂਦੇ ਹਰ ਯੰਤਰ ਅਤੇ ਸਮਰੱਥਾ ਨੂੰ, ਉਹਨਾਂ ਨੂੰ ਜਾਇਜ਼ ਠਹਿਰਾਉਣ ਵਾਲੀ ਗਲਤੀ ਨਾਲ ਲਿਖੋ। ਇਹੀ ਰਿਕਾਰਡ ਅਗਲੇ ਵਿਅਕਤੀ ਨੂੰ ਕੁਝ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਹਟਾਉਣ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਕੰਟੇਨਰ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਵਾਲਾ ਦੱਸੇ ਜਾਣ 'ਤੇ ਲੇਖਾ-ਪਰੀਖਕ ਇਹੀ ਮੰਗੇਗਾ।

ਆਸ-ਪਾਸ ਦੇ ਸੰਦਰਭ ਦੀ ਵੀ ਸਮੀਖਿਆ ਕਰੋ, ਕਿਉਂਕਿ ਹੋਸਟ ਨੈੱਟਵਰਕਿੰਗ, ਹੋਸਟ ਮਾਊਂਟ ਅਤੇ ਰਨਟਾਈਮ ਵਿਕਲਪ ਹਰੇਕ ਇਜਾਜ਼ਤ ਦੇ ਪ੍ਰਭਾਵ ਨੂੰ ਚੌੜਾ ਕਰ ਸਕਦੇ ਹਨ। ਉਹਨਾਂ ਸਭ ਨੂੰ ਜੋੜਨ ਵਾਲੀ ਵੱਖਰੀ ਪ੍ਰਯੋਗਸ਼ਾਲਾ ਕਾਲ ਉਤਪਾਦਨ ਸੰਰਚਨਾ ਨਹੀਂ ਹੈ, ਭਾਵੇਂ ਇਹ ਕਿੰਨੀ ਵੀ ਚੰਗੀ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰੇ। ਤੈਨਾਤੀ ਨੂੰ ਪੂਰਾ ਕਹਿਣ ਤੋਂ ਪਹਿਲਾਂ ਐਪਲੀਕੇਸ਼ਨ, ਇਸਦਾ DNS ਵਿਵਹਾਰ ਅਤੇ ਟਨਲ ਅਸਫਲਤਾ ਦੀ ਜਾਂਚ ਕਰੋ। ਇੰਟਰਫ਼ੇਸ ਬਣਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਬਾਹਰ ਜਾਣ ਦੀ ਨੀਤੀ ਨਹੀਂ ਹੈ, ਅਤੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਟਨਲ ਕਰ ਸਕਣ ਵਾਲਾ ਕੰਟੇਨਰ ਵੀ ਐਪਲੀਕੇਸ਼ਨ ਵੱਲੋਂ ਭੇਜੀ ਹਰ ਚੀਜ਼ ਨੂੰ ਰੂਟ ਕਰਦਾ ਹੈ।

ਸੰਬੰਧਿਤ ਲੇਖ