ನಾನು 20 ವರ್ಷಗಳಿಗೂ ಹೆಚ್ಚು ಕಾಲ ಐಟಿಯಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದೇನೆ, ಆದರೆ ಹೇಗಾದರೂ ನಾನು ಕಂಟೈನರ್ಗಳಿಗೆ ಹೋಗಲಿಲ್ಲ. ಸಿದ್ಧಾಂತದಲ್ಲಿ, ಅವರು ಹೇಗೆ ರಚನೆಯಾಗಿದ್ದಾರೆ ಮತ್ತು ಅವರು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತಾರೆ ಎಂಬುದನ್ನು ನಾನು ಅರ್ಥಮಾಡಿಕೊಂಡಿದ್ದೇನೆ. ಆದರೆ ಪ್ರಾಯೋಗಿಕವಾಗಿ ನಾನು ಅವರನ್ನು ಎಂದಿಗೂ ಎದುರಿಸಲಿಲ್ಲವಾದ್ದರಿಂದ, ಅವರ ಹುಡ್ ಅಡಿಯಲ್ಲಿ ಗೇರ್ಗಳು ಎಷ್ಟು ನಿಖರವಾಗಿ ತಿರುಗುತ್ತವೆ ಮತ್ತು ತಿರುಗಿದವು ಎಂದು ನನಗೆ ಖಚಿತವಿಲ್ಲ.
ಅದಲ್ಲದೆ, ಅವರ ಭದ್ರತೆ ಹೇಗಿದೆ ಎಂದು ನನಗೆ ತಿಳಿದಿರಲಿಲ್ಲ. ಆದರೆ ಮತ್ತೊಮ್ಮೆ, ಸಿದ್ಧಾಂತವು ಉತ್ತಮವಾಗಿದೆ, ಮತ್ತು ಹಳೆಯ ಹಾಡು "ಭದ್ರತೆ ಹೆಚ್ಚಾದಂತೆ, ಉಪಯುಕ್ತತೆ ಕಡಿಮೆಯಾಗುತ್ತದೆ" ನನ್ನ ತಲೆಯಲ್ಲಿ ಅಂಟಿಕೊಂಡಿತು. ಹಾಗಾಗಿ ಕಂಟೇನರ್ಗಳೊಂದಿಗೆ ಎಲ್ಲವನ್ನೂ ಮಾಡಲು ತುಂಬಾ ಸುಲಭವಾದ ಕಾರಣ, ಅಲ್ಲಿ ಸುರಕ್ಷತೆಯು ಸಮಾನವಾಗಿರುತ್ತದೆ ಎಂದು ನಾನು ಭಾವಿಸಿದೆ. ಅದು ಬದಲಾದಂತೆ, ನಾನು ಸರಿ.
ತ್ವರಿತವಾಗಿ ಪ್ರಾರಂಭಿಸಲು, ನಾನು ಕೋರ್ಸ್ಗಳಿಗೆ ಸೈನ್ ಅಪ್ ಮಾಡಿದ್ದೇನೆ
ಶೀಲಾ ಎ. ಬರ್ಟಾ ಮತ್ತು ಸೋಲ್ ಓಝಾನ್ ಕಲಿಸಿದ ಕೋರ್ಸ್, ಡಾಕರ್ ಕಂಟೈನರ್ಗಳು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ ಮತ್ತು ಕುಬರ್ನೆಟ್ಗೆ ನಿಯೋಜಿಸಿದಾಗ ಅವರು ತೆಗೆದುಕೊಳ್ಳುವ ಪ್ರಯಾಣದ ವಿವರಣೆಯೊಂದಿಗೆ ತಕ್ಷಣವೇ ಪ್ರಾರಂಭವಾಯಿತು. ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಹ್ಯಾಂಡ್ಸ್-ಆನ್ ಕ್ಲಾಸ್ ಆಗಿತ್ತು - ವಿದ್ಯಾರ್ಥಿಗಳು ತರಗತಿಯ ಮೊದಲು ತಮ್ಮ ಯಂತ್ರಗಳಲ್ಲಿ ಡಾಕರ್ ಮತ್ತು ಮೈಕ್ರೋಕ್ 8 ಗಳನ್ನು ಸ್ಥಾಪಿಸಬೇಕಾಗಿತ್ತು - ಪರಿಕರಗಳು ಪರಸ್ಪರ ಹೇಗೆ ಸಂವಹನ ನಡೆಸುತ್ತವೆ ಎಂಬುದನ್ನು ನೋಡಲು, ದುರ್ಬಲ ಅಂಶಗಳನ್ನು ಹುಡುಕಲು ಮತ್ತು ಮುಖ್ಯವಾಗಿ ಅವುಗಳನ್ನು ನಿರ್ಬಂಧಿಸಲು ಪ್ರಯತ್ನಿಸಿ.
ದುರದೃಷ್ಟವಶಾತ್, ಕೋರ್ಸ್ಗಳು ಎರಡು ದಿನಗಳ ನಂತರ "ರಾಜಕುಮಾರ" ಆಗಲು ಭರವಸೆ ನೀಡಿದ್ದರೂ, ಎಲ್ಲವೂ ಪ್ರಾರಂಭವಾಗಿದೆ ಎಂದು ನಾನು ಭಾವಿಸಿದೆ, ಮತ್ತು ನಾನು ಇನ್ನೂ ಕಲಿಯಲು ಬಹಳಷ್ಟು ಇದೆ.
ನನ್ನ ಉನ್ನತ ಅವಲೋಕನಗಳಿಗೆ ಧುಮುಕುವ ಮೊದಲು, ಕಂಟೇನರ್ ಎಂದರೇನು ಎಂಬುದನ್ನು ವಿವರಿಸಲು ಮುಖ್ಯವಾಗಿದೆ. ಅಭಿವೃದ್ಧಿ ಜಗತ್ತಿನಲ್ಲಿ, ನಿಮ್ಮ ವೈಯಕ್ತಿಕ ಗಣಕದಲ್ಲಿ ಬರೆಯಲಾದ ಕೋಡ್ ಸಂಪೂರ್ಣವಾಗಿ ಕೆಲಸ ಮಾಡಲು ಸಾಮಾನ್ಯವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ, ಆದರೆ ನೀವು ಅದನ್ನು ಎಲ್ಲೋ ಸರ್ವರ್ನಲ್ಲಿ ಚಲಾಯಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ, ಅದು ಸರಳವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ. ಕಂಟೇನರ್ಗಳು ಸ್ವಯಂ-ಒಳಗೊಂಡಿರುವ ಯಂತ್ರಗಳನ್ನು ಒದಗಿಸುವ ಮೂಲಕ ಈ ಸಮಸ್ಯೆಯನ್ನು ನಿವಾರಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತವೆ, ಅವುಗಳು ಯಾವಾಗಲೂ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ ಎಂದು ತಿಳಿದುಕೊಂಡು ನೀವು ಒಂದು ಸರ್ವರ್ನಿಂದ ಇನ್ನೊಂದಕ್ಕೆ ಸುಲಭವಾಗಿ ಚಲಿಸಬಹುದು. ಹೆಸರೇ ಸೂಚಿಸುವಂತೆ, ಅವುಗಳು ಕೋಡ್, ಲೈಬ್ರರಿಗಳು ಮತ್ತು ಕೆಲಸವನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಅಗತ್ಯವಿರುವ ಇತರ ಸಾಫ್ಟ್ವೇರ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ. ಕುಬರ್ನೆಟ್ಸ್, ಮತ್ತೊಂದೆಡೆ
ಕೆಂಪು ಮತ್ತು ನೀಲಿ ತಂಡದ ದೃಷ್ಟಿಕೋನದಿಂದ ನನ್ನ ಕೆಲವು ಸಂಶೋಧನೆಗಳನ್ನು ಕೆಳಗೆ ನೀಡಲಾಗಿದೆ.
ಕೆಂಪು ತಂಡ
ಹೆಚ್ಚಿನ ಕಂಟೇನರ್ ವಿಷಯವು ರೂಟ್ ಆಗಿ ಚಲಿಸುತ್ತದೆ: ಇದರರ್ಥ ಧಾರಕವು ರಾಜಿ ಮಾಡಿಕೊಂಡರೆ, ನೀವು ಕಂಟೇನರ್ಗೆ ಸಂಪೂರ್ಣ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುತ್ತೀರಿ. ಇದು ಮುಂದಿನ ಹಂತಗಳನ್ನು ಹೆಚ್ಚು ಸುಲಭಗೊಳಿಸುತ್ತದೆ.
ಕಂಟೇನರ್ ಒಳಗೆ ಡಾಕರ್.ಸಾಕ್ ಅನ್ನು ಅಳವಡಿಸುವುದು ಅಪಾಯಕಾರಿ: ನೀವು ಕಂಟೇನರ್ನಲ್ಲಿ ರೂಟ್ ಹೊಂದಿದ್ದರೆ ಮತ್ತು ಡಾಕರ್ ಸಾಕೆಟ್ (/var/run/docker.sock) ಹೊಂದಿರುವ ಕಂಟೇನರ್ನಲ್ಲಿ ಡಾಕರ್ ಅನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿದರೆ, ನೀವು ಯಾವುದೇ ಇತರ ಕಂಟೇನರ್ಗೆ ಪ್ರವೇಶವನ್ನು ಒಳಗೊಂಡಂತೆ ಸಂಪೂರ್ಣ ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಅನ್ವೇಷಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿರುತ್ತೀರಿ. ಅಂತಹ ಪ್ರವೇಶವನ್ನು ನೆಟ್ವರ್ಕ್ ಪ್ರತ್ಯೇಕತೆ ಅಥವಾ ಇತರ ವಿಧಾನಗಳಿಂದ ತಡೆಯಲಾಗುವುದಿಲ್ಲ.
ಪರಿಸರ ಅಸ್ಥಿರಗಳು ಸಾಮಾನ್ಯವಾಗಿ ರಹಸ್ಯ ಡೇಟಾವನ್ನು ಹೊಂದಿರುತ್ತವೆ: ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ, ಜನರು ಸಾಮಾನ್ಯ ಪರಿಸರ ವೇರಿಯಬಲ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಕಂಟೇನರ್ಗೆ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಕಳುಹಿಸುತ್ತಾರೆ. ಆದ್ದರಿಂದ ನೀವು ಖಾತೆಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿದ್ದರೆ, ನಂತರ ನಿಮ್ಮ ಅಧಿಕಾರವನ್ನು ವಿಸ್ತರಿಸುವ ಸಲುವಾಗಿ ನೀವು ಈ ಪರಿಸರ ವೇರಿಯಬಲ್ಗಳ ಮೇಲೆ ಕಣ್ಣಿಡಬಹುದು.
ಡಾಕರ್ API ಬಹಳಷ್ಟು ಮಾಹಿತಿಯನ್ನು ನೀಡಬಹುದು: ಡಾಕರ್ API, ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಕಾನ್ಫಿಗರ್ ಮಾಡಿದಾಗ, ಅನುಮತಿಯಿಲ್ಲದೆ ರನ್ ಆಗುತ್ತದೆ ಮತ್ತು ಒಂದು ಟನ್ ಮಾಹಿತಿಯನ್ನು ಉತ್ಪಾದಿಸಬಹುದು. ಶೋಡಾನ್ ಬಳಸಿ, ನೀವು ತೆರೆದ ಪೋರ್ಟ್ಗಳ ಪಟ್ಟಿಯನ್ನು ಸುಲಭವಾಗಿ ಕಾಣಬಹುದು, ನಂತರ ಕ್ಲಸ್ಟರ್ ಬಗ್ಗೆ ವಿವರವಾದ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಬಹುದು - ಮತ್ತು ಅದರ ಸಂಪೂರ್ಣ ಕ್ಯಾಪ್ಚರ್ಗೆ ಮುಂದುವರಿಯಿರಿ. TrendMicro ಈ ಬಗ್ಗೆ ಬರೆದಿದ್ದಾರೆ
ನೀಲಿ ತಂಡ
ಕಂಟೇನರ್ ವಿಷಯಗಳನ್ನು ರೂಟ್ ಆಗಿ ರನ್ ಮಾಡಬೇಡಿ: ರೂಟ್ ಆಗಿ ಚಲಾಯಿಸಲು ಸುಲಭವಾಗಿದ್ದರೂ, ನೀವು ಅದನ್ನು ಮಾಡಬಾರದು. ಬದಲಿಗೆ, uid ಅನ್ನು ಪ್ರದರ್ಶಿಸುವ ಮೂಲಕ ಮರುಹೊಂದಿಸುವ ಅನುಮತಿಗಳೊಂದಿಗೆ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ರನ್ ಮಾಡಿ, CLI ನಿಂದ ಚಾಲನೆಯಲ್ಲಿರುವಾಗ --user ಆಯ್ಕೆಯನ್ನು ಬಳಸಿ ಅಥವಾ ಡಾಕರ್ಫೈಲ್ನಲ್ಲಿ USER ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವ ಮೂಲಕ.
ಕಂಟೈನರ್ಗಳಲ್ಲಿ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಸ್ಥಾಪಿಸಲು ಅನುಮತಿಸಬೇಡಿ: ಪ್ರತಿಯೊಂದು ದಾಳಿಯು ಏನನ್ನಾದರೂ ನೆಡುವುದರೊಂದಿಗೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. nmap ನಿಂದ ifconfig ವರೆಗೆ ಡಾಕರ್ ಸ್ವತಃ (ಒಂದು ಕಂಟೇನರ್ ಒಳಗೆ), ಕಂಟೇನರ್ನಲ್ಲಿ ಯಾವುದನ್ನಾದರೂ ಸ್ಥಾಪಿಸುವುದು ಸಾಮಾನ್ಯವಾಗಿದೆ. ಅದೇ ಕಾರಣಕ್ಕಾಗಿ, ನೀವು ಯಾವಾಗಲೂ ಎಲ್ಲಾ ಬಳಕೆಯಾಗದ ಪೋರ್ಟ್ಗಳನ್ನು ನಿರ್ಬಂಧಿಸಬೇಕು. ನಿಮ್ಮ ಯಂತ್ರವು ಸೋಂಕಿಗೆ ಒಳಗಾದಾಗ ನಿಯಂತ್ರಣ ಆಜ್ಞೆಗಳನ್ನು ರವಾನಿಸುವುದನ್ನು ತಡೆಯಲು ಇದು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಕಾರ್ಯಕ್ರಮಗಳ ಸ್ಥಾಪನೆಯನ್ನು ತಡೆಗಟ್ಟುವುದರ ಜೊತೆಗೆ, ಕಾರ್ಯವನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಅಗತ್ಯವಿರುವ ಕನಿಷ್ಟ ಸಂಖ್ಯೆಯ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಕಂಟೇನರ್ನಲ್ಲಿಯೇ ಸ್ಥಾಪಿಸಲಾಗಿದೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು ಯೋಗ್ಯವಾಗಿದೆ.
ಡಾಕರ್.ಕಾಲ್ಚೀಲವನ್ನು ರಕ್ಷಿಸಿ: ಇದನ್ನು ರಕ್ಷಿಸಬೇಕು ಏಕೆಂದರೆ ಕಂಟೇನರ್ ಮತ್ತು ಕ್ಲಸ್ಟರ್ ನಡುವಿನ ಸಂವಹನವನ್ನು ಈ ಸಾಕೆಟ್ ಮೂಲಕ ಸಂಸ್ಕರಿಸಲಾಗುತ್ತದೆ. ಈ ಲೇಖನದಲ್ಲಿ ನಾನು ವಿವರವಾಗಿ ಹೋಗಲು ಬಯಸುವುದಿಲ್ಲವಾದ್ದರಿಂದ, ಓದಿ
ಪರಿಸರ ವೇರಿಯಬಲ್ಗಳ ಬದಲಿಗೆ ಡಾಕರ್ ರಹಸ್ಯಗಳನ್ನು ಬಳಸಿ: ರಹಸ್ಯಗಳಿವೆ
ಲೇಖನವು ಕಂಟೈನರ್ಗಳಲ್ಲಿ ನಿಮ್ಮ ಆಸಕ್ತಿಯನ್ನು ಹೆಚ್ಚಿಸಿದ್ದರೆ, ನೀವು ಸುಲಭವಾಗಿ ಡಾಕರ್ ಅಥವಾ ಮೈಕ್ರೋಕ್ 8 ಗಳನ್ನು ಸ್ಥಾಪಿಸಬಹುದು (ಕುಬರ್ನೆಟ್ಸ್ನ ಸಣ್ಣ ಆವೃತ್ತಿ).
ಅನುಸ್ಥಾಪನೆಯ ನಂತರ ನೀವು ಹೋಗಬಹುದು
ನೀವು ಡಾಕರ್ನಲ್ಲಿ ಸಮಗ್ರ ಕೋರ್ಸ್ ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಬಯಸಿದರೆ ಅಥವಾ ತೆಗೆದುಕೊಳ್ಳಬೇಕಾದರೆ, ಪ್ರಾಯೋಗಿಕ ಸ್ಪೀಕರ್ಗಳು ಅದರ ಎಲ್ಲಾ ಸಾಧನಗಳನ್ನು ಪರಿಶೀಲಿಸುತ್ತಾರೆ: ಮೂಲಭೂತ ಅಮೂರ್ತತೆಗಳಿಂದ ನೆಟ್ವರ್ಕ್ ನಿಯತಾಂಕಗಳು, ವಿವಿಧ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ಗಳು ಮತ್ತು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳು, ನಂತರ ಪ್ರಯತ್ನಿಸಿ "
ಮೂಲ: www.habr.com