यहां कोई फर्क नहीं पड़ता कि फैंसी नाम का इस्तेमाल किया गया था, दोनों एक विशिष्ट समस्या का समाधान हैं: क्लासिक यूनिक्स चेरोट से बेहतर अलगाव । ऑपरेटिंग सिस्टम-स्तरीय वर्चुअलाइजेशन, कंटेनर, ज़ोन, या यहां तक कि "स्टेरॉयड के साथ चेरोट" ऐसे नाम या वाणिज्यिक शीर्षक हैं जो उपयोगकर्तास्पेस पृथक्करण की एक ही अवधारणा को परिभाषित करते हैं, लेकिन विभिन्न विशेषताओं के साथ।
चेरोट को अपनी स्थापना और निर्माण प्रणाली का परीक्षण करने के लिए एक उपकरण के रूप में 4.2 बीएसडी की रिहाई से महीनों पहले 18 मार्च 1982 को पेश किया गया था , लेकिन आज भी इसकी खामियां हैं। चूंकि चेरोट का पहला उद्देश्य केवल एक नया मार्ग प्रदान करना था , सिस्टम के अन्य पहलुओं को अलग-थलग या नियंत्रित करने की आवश्यकता होती है जो कि खुला (नेटवर्क, प्रक्रिया दृश्य, I / O थ्रूपुट) है। यह वह जगह है जहाँ पहले कंटेनर (उपयोगकर्ता-स्तरीय वर्चुअलाइजेशन) दिखाई दिए।
दोनों प्रौद्योगिकियां (फ्रीबीएसडी जेल और एलएक्ससी) सुरक्षा की एक और परत प्रदान करने के लिए यूजरस्पेस अलगाव का उपयोग करती हैं। यह कंपार्टमेंटलाइज़ेशन यह सुनिश्चित करेगा कि एक निर्धारित प्रक्रिया उसी होस्ट पर एक ही कंटेनर में अन्य प्रक्रियाओं के साथ संचार करेगी, और यदि "बाहरी दुनिया" संचार को प्राप्त करने के लिए किसी भी नेटवर्क संसाधन का उपयोग किया जाता है, तो सभी को निर्दिष्ट इंटरफ़ेस / चैनल को भेज दिया जाएगा कि यह कंटेनर है।
विशेषताएं
FreeBSD जेल:
- माना जाता है कि स्थिर तकनीक, क्योंकि यह 4.0 के बाद से FreeBSD के अंदर एक विशेषता है;
- यह उस बिंदु पर सबसे अच्छा ZFS फाइल सिस्टम लेता है जहां आप जेलों को क्लोन कर सकते हैं और आसानी से अधिक जेलों को तैनात करने के लिए जेल टेम्पलेट बना सकते हैं। कुछ और जेडएफएस पागलपन ;
- अच्छी तरह से प्रलेखित , और विकसित ;
- पदानुक्रमित जेल आपको जेल के अंदर जेल बनाने की अनुमति देती है (हमें गहराई तक जाने की आवश्यकता है!)।
allow.mount.zfs
अधिक शक्ति प्राप्त करने के लिए साथ मिलाएं , और अन्य चर जैसे children.max
अधिकतम बच्चों की जेलों को परिभाषित करते हैं।
- rctl (8) जेलों (मेमोरी, सीपीयू, डिस्क, ...) की संसाधन सीमाओं को संभाल लेगा;
- फ्रीबीएसडी जेल लिनक्स यूजरस्पेस संभालती है ;
- नेटवर्क अलगाव के साथ
vnet
, प्रत्येक जेल को अपना नेटवर्क स्टैक, इंटरफेस, एड्रेसिंग और राउटिंग टेबल रखने की अनुमति देता है;
nullfs
उन फ़ोल्डर को जोड़ने में मदद करने के लिए जो वास्तविक सर्वर पर जेल के अंदर स्थित हैं;
- बड़े पैमाने पर तैनाती और जेलों के प्रबंधन में मदद करने के लिए एक्जेल उपयोगिता;
- कर्नेल ट्यूनबेल (
sysctl
) के बहुत सारे । security.jail.allow.*
पैरामीटर उस जेल के रूट उपयोगकर्ता के कार्यों को सीमित करेंगे।
- हो सकता है, FreeBSD जेल निकट भविष्य में VPS परियोजना की कुछ विशेषताओं को लाइव माइग्रेशन की तरह विस्तारित करेगा ।
- ZFS और Docker एकीकरण के कुछ प्रयास चल रहे हैं। फिर भी प्रायोगिक।
- FreeBSD 12 जेल के अंदर भैवे का समर्थन करता है और जेल के अंदर पीएफ करता है, जिससे उन साधनों को और अलगाव मिलता है
- पिछले वर्षों के दौरान बहुत सारे दिलचस्प उपकरण विकसित किए गए थे। उनमें से कुछ इस ब्लॉग पोस्ट पर अनुक्रमित हैं ।
- विकल्प: फ्रीबीएसडी वीपीएस परियोजना
लिनक्स कंटेनर (LXC):
- नई "कर्नेल" तकनीक में लेकिन बड़े लोगों (विशेष रूप से कैनोनिकल) द्वारा समर्थन किया जा रहा है;
- LXC 1.0 से शुरू होने वाले Unprivileged कंटेनर कंटेनर के अंदर सुरक्षा में एक बड़ा कदम रखते हैं;
- कंटेनर के अंदर यूआईडी और जीआईडी मैपिंग;
- आईपीसी, माउंट, पीआईडी, नेटवर्क और उपयोगकर्ताओं को अलग करने के लिए कर्नेल नामस्थान। इन नामस्थानों को अलग तरीके से संभाला जा सकता है, जहां एक प्रक्रिया जो एक अलग नेटवर्क नेमस्पेस का उपयोग करती है , जरूरी नहीं कि भंडारण जैसे अन्य पहलुओं पर अलग हो जाएगी;
- नियंत्रण समूह (cgroups) संसाधनों का प्रबंधन और उन्हें समूहीकृत करना। CGManager वह हासिल करने वाला लड़का है।
- कंटेनरों द्वारा सुलभ कर्नेल सुविधाओं को बेहतर रूप से लागू करने के लिए अपरमोर / SELinux प्रोफाइल और कर्नेल क्षमताएं। सिस्टम कॉल को फ़िल्टर करने के लिए lxc कंटेनरों पर Seccomp भी उपलब्ध है। अन्य सुरक्षा पहलू यहां ।
लाइव माइग्रेशन कार्यक्षमता विकसित की जा रही है। - यह कहना है जब यह उत्पादन प्रयोग के लिए तैयार हो जाएगा, के बाद से डोकर / LXC यूज़रस्पेस प्रक्रिया रोकते हैं, स्नैपशॉट से निपटने के लिए, होगा विस्थापित करने और मजबूत बहुत मुश्किल है ref1 , ref2 ।लाइव माइग्रेशन बुनियादी कंटेनरों के साथ काम कर रहा है (न तो डिवाइस पास्ट्रॉथ न तो जटिल नेटवर्क सेवाएं या विशेष भंडारण कॉन्फ़िगरेशन)।
- Python3 और 2, lua, Go, Ruby और Haskell में विकास को सक्षम करने के लिए एपीआई बाइंडिंग
- केंद्रीकृत "नया क्या है" क्षेत्र। जब भी कुछ बग ठीक किया गया था या एक नई सुविधा के लिए जाँच करने की आवश्यकता थी, तो बहुत उपयोगी है। यहाँ ।
- एक दिलचस्प विकल्प lxd हो सकता है , कि हूड के तहत lxc के साथ काम करता है लेकिन, इसमें कुछ अच्छे फीचर्स हैं जैसे REST एपी, ओपनस्टैक इंटीग्रेशन, आदि।
- एक और दिलचस्प बात यह है कि उबंटू को 16.04 पर कंटेनरों के लिए डिफ़ॉल्ट फाइल सिस्टम के रूप में zfs शिपिंग लगता है । परियोजनाओं को संरेखित करने के लिए, lxd ने 2.0 संस्करण लॉन्च किया, और कुछ विशेषताएं संबंधित हैं ।
- विकल्प : ओपनवीजेड , डोकर
- डॉकटर । यहां ध्यान दें कि डॉकर नेमसपेसेस, सीग्रुप्स को "प्रति ऐप" / "प्रति सॉफ्टवेयर" अलगाव का उपयोग करता है। यहाँ महत्वपूर्ण अंतर । जबकि LXC कई प्रक्रियाओं के साथ कंटेनरों का निर्माण करता है, Docker किसी एकल प्रक्रिया के लिए यथासंभव कंटेनर को कम करता है और फिर Docker के माध्यम से प्रबंधित करता है।
- डोकर को SELinux के साथ एकीकृत करने और एक कंटेनर के अंदर क्षमताओं को कम करने का प्रयास इसे और अधिक सुरक्षित बनाने के लिए - Docker और SELinux, Dan Walsh
- डॉकर, एलएक्सडी और एलएक्ससी में क्या अंतर है
Docker अब lxc का उपयोग नहीं करता है। उनके पास अब एक विशिष्ट लिबासटेनर कहा जाता है जो निम्न-स्तरीय कर्नेल नामस्थान और cgroups सुविधाओं के साथ एकीकरण को सीधे संभालता है।
न तो प्रौद्योगिकी एक सुरक्षा रामबाण है, लेकिन दोनों एक पर्यावरण को अलग करने के लिए बहुत अच्छे तरीके हैं जो मिश्रित ऑपरेटिंग सिस्टम इंफ्रास्ट्रक्चर के कारण पूर्ण वर्चुअलाइजेशन की आवश्यकता नहीं है। सुरक्षा कर्नेल ट्यूबल, मैक और अलगाव के दस्तावेज़ीकरण पढ़ने और लागू करने के बाद आएगी, जो कि आपके लिए उन ओएस-लेवल पुण्य प्रदान करते हैं।
यह सभी देखें: