ಪ್ರತ್ಯೇಕತೆಗಾಗಿ, cgroups, namespaces, Seccomp ಮತ್ತು SELinux ಬಳಕೆಯನ್ನು ಆಧರಿಸಿ ಸಾಂಪ್ರದಾಯಿಕ ಲಿನಕ್ಸ್ ಕಂಟೇನರ್ ವರ್ಚುವಲೈಸೇಶನ್ ತಂತ್ರಜ್ಞಾನಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಧಾರಕವನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಲು ಸವಲತ್ತು ಪಡೆದ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು, ಮೂಲ ಹಕ್ಕುಗಳೊಂದಿಗೆ ಬಬಲ್ವ್ರ್ಯಾಪ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತದೆ (ಸೂಯಿಡ್ ಫ್ಲ್ಯಾಗ್ನೊಂದಿಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ ಫೈಲ್) ಮತ್ತು ನಂತರ ಕಂಟೇನರ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಿದ ನಂತರ ಸವಲತ್ತುಗಳನ್ನು ಮರುಹೊಂದಿಸುತ್ತದೆ.
ನೇಮ್ಸ್ಪೇಸ್ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಬಳಕೆದಾರ ನೇಮ್ಸ್ಪೇಸ್ಗಳ ಸಕ್ರಿಯಗೊಳಿಸುವಿಕೆ, ಕಂಟೈನರ್ಗಳಲ್ಲಿ ನಿಮ್ಮದೇ ಆದ ಪ್ರತ್ಯೇಕ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ಬಳಸಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ, ಇದು ಕಾರ್ಯಾಚರಣೆಗೆ ಅಗತ್ಯವಿಲ್ಲ, ಏಕೆಂದರೆ ಇದು ಅನೇಕ ವಿತರಣೆಗಳಲ್ಲಿ ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ (ಬಬಲ್ವ್ರ್ಯಾಪ್ ಅನ್ನು ಸೀಮಿತ ಸೂಯ್ಡ್ ಅಳವಡಿಕೆಯಾಗಿ ಇರಿಸಲಾಗಿದೆ. ಬಳಕೆದಾರ ನೇಮ್ಸ್ಪೇಸ್ ಸಾಮರ್ಥ್ಯಗಳ ಉಪವಿಭಾಗ - ಪ್ರಸ್ತುತ ಒಂದನ್ನು ಹೊರತುಪಡಿಸಿ ಎಲ್ಲಾ ಬಳಕೆದಾರ ಮತ್ತು ಪ್ರಕ್ರಿಯೆ ಗುರುತಿಸುವಿಕೆಗಳನ್ನು ಪರಿಸರದಿಂದ ಹೊರಗಿಡಲು, CLONE_NEWUSER ಮತ್ತು CLONE_NEWPID ಮೋಡ್ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ). ಹೆಚ್ಚುವರಿ ರಕ್ಷಣೆಗಾಗಿ, ನಿಯಂತ್ರಣದಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು
Bubblewrap ಪ್ರೋಗ್ರಾಂಗಳನ್ನು PR_SET_NO_NEW_PRIVS ಮೋಡ್ನಲ್ಲಿ ಪ್ರಾರಂಭಿಸಲಾಗಿದೆ, ಇದು ಹೊಸ ಸವಲತ್ತುಗಳನ್ನು ಪಡೆಯುವುದನ್ನು ನಿಷೇಧಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ, ಸೆಟ್ಯೂಡ್ ಫ್ಲ್ಯಾಗ್ ಇದ್ದರೆ.
ಡೀಫಾಲ್ಟ್ ಆಗಿ ಹೊಸ ಮೌಂಟ್ ನೇಮ್ಸ್ಪೇಸ್ ಅನ್ನು ರಚಿಸುವ ಮೂಲಕ ಫೈಲ್ ಸಿಸ್ಟಮ್ ಮಟ್ಟದಲ್ಲಿ ಪ್ರತ್ಯೇಕತೆಯನ್ನು ಸಾಧಿಸಲಾಗುತ್ತದೆ, ಇದರಲ್ಲಿ ಖಾಲಿ ರೂಟ್ ವಿಭಾಗವನ್ನು tmpfs ಬಳಸಿ ರಚಿಸಲಾಗುತ್ತದೆ. ಅಗತ್ಯವಿದ್ದರೆ, ಬಾಹ್ಯ FS ವಿಭಾಗಗಳನ್ನು ಈ ವಿಭಾಗಕ್ಕೆ “ಮೌಂಟ್ —ಬೈಂಡ್” ಮೋಡ್ನಲ್ಲಿ ಲಗತ್ತಿಸಲಾಗಿದೆ (ಉದಾಹರಣೆಗೆ, “bwrap —ro-bind /usr /usr” ಆಯ್ಕೆಯೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಿದಾಗ, /usr ವಿಭಾಗವನ್ನು ಮುಖ್ಯ ವ್ಯವಸ್ಥೆಯಿಂದ ಫಾರ್ವರ್ಡ್ ಮಾಡಲಾಗುತ್ತದೆ. ಓದಲು-ಮಾತ್ರ ಕ್ರಮದಲ್ಲಿ). ನೆಟ್ವರ್ಕ್ ಸಾಮರ್ಥ್ಯಗಳು CLONE_NEWNET ಮತ್ತು CLONE_NEWUTS ಫ್ಲ್ಯಾಗ್ಗಳ ಮೂಲಕ ನೆಟ್ವರ್ಕ್ ಸ್ಟಾಕ್ ಪ್ರತ್ಯೇಕತೆಯೊಂದಿಗೆ ಲೂಪ್ಬ್ಯಾಕ್ ಇಂಟರ್ಫೇಸ್ಗೆ ಪ್ರವೇಶಿಸಲು ಸೀಮಿತವಾಗಿವೆ.
ಇದೇ ಯೋಜನೆಯಿಂದ ಪ್ರಮುಖ ವ್ಯತ್ಯಾಸ
ಹೊಸ ಬಿಡುಗಡೆಯು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಬಳಕೆದಾರ ನೇಮ್ಸ್ಪೇಸ್ಗಳು ಮತ್ತು ಪ್ರಕ್ರಿಯೆಯ ಪಿಡ್ ನೇಮ್ಸ್ಪೇಸ್ಗಳನ್ನು ಸೇರಲು ಬೆಂಬಲದ ಅನುಷ್ಠಾನಕ್ಕೆ ಗಮನಾರ್ಹವಾಗಿದೆ. ನೇಮ್ಸ್ಪೇಸ್ಗಳ ಸಂಪರ್ಕವನ್ನು ನಿಯಂತ್ರಿಸಲು, “--ಬಳಕೆದಾರರು”, “--ಬಳಕೆದಾರರು2” ಮತ್ತು “-pidns” ಫ್ಲ್ಯಾಗ್ಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
ಈ ವೈಶಿಷ್ಟ್ಯವು ಸೆಟ್ಯೂಡ್ ಮೋಡ್ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ ಮತ್ತು ರೂಟ್ ಹಕ್ಕುಗಳನ್ನು ಪಡೆಯದೆಯೇ ಕಾರ್ಯನಿರ್ವಹಿಸಬಹುದಾದ ಪ್ರತ್ಯೇಕ ಮೋಡ್ನ ಬಳಕೆಯ ಅಗತ್ಯವಿರುತ್ತದೆ, ಆದರೆ ಸಕ್ರಿಯಗೊಳಿಸುವಿಕೆಯ ಅಗತ್ಯವಿರುತ್ತದೆ
ಸಿಸ್ಟಮ್ನಲ್ಲಿ ಬಳಕೆದಾರ ನೇಮ್ಸ್ಪೇಸ್ಗಳು (ಡೆಬಿಯನ್ ಮತ್ತು RHEL/CentOS ನಲ್ಲಿ ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ) ಮತ್ತು ಸಾಧ್ಯತೆಯನ್ನು ಹೊರತುಪಡಿಸುವುದಿಲ್ಲ
ಮೂಲ: opennet.ru