डॉकटर कंटेनर के आंतरिक तक पहुंच को कैसे प्रतिबंधित करें?


14

मैं अपना ऐप डॉकटर इमेज के रूप में ग्राहकों तक पहुंचाना चाहता हूं। लेकिन यह सुनिश्चित करना महत्वपूर्ण है कि एंड-यूज़र कंटेनर के अंदर कुछ भी न बदले। उपयोगकर्ता केवल कंटेनर को चलाने / रोकने और नेटवर्क के माध्यम से कंटेनर के साथ बातचीत करने में सक्षम होना चाहिए।

क्या कंटेनर के इंटर्नल तक पहुंच को रोकना संभव है? क्या उस कंटेनर से बनाई गई छवि की अखंडता को सत्यापित करना संभव है?


2
जब तक आप docker host को मैनेज नहीं करते मुझे विश्वास है कि आप नहीं कर सकते। इस पहुंच को रोककर आप किस समस्या को हल करने के लिए तैयार हैं?
तनीसीबाई

जैसा कि टेन्सीबाई का उल्लेख है, यह निर्भर करता है। यदि आपको यह जानने की आवश्यकता है कि कंटेनर सुरक्षा कारणों से अनमॉडिफाइड है, तो आपको मूल रूप से इसे अपने सर्वर पर चलाना होगा। यदि आप लोगों को इसे संशोधित करने से बस हतोत्साहित करना चाहते हैं तो वे चीजों को तोड़ना नहीं चाहते हैं, शायद ऐसे तरीके हैं जो आप कर सकते हैं। आपके उपयोग के मामले का वर्णन करने से यहां मदद मिलेगी।
अरोरा ००००

जवाबों:


11

संक्षेप में, आप अपने ग्राहकों को उन कंटेनरों को संशोधित करने से नहीं रोक सकते जो वे अपने स्वयं के बुनियादी ढांचे में चलाते हैं। कंटेनर बायनेरिज़ की तरह नहीं होते हैं जिन्हें बाधित किया जा सकता है; वे रनटाइम वातावरण हैं। आपके द्वारा कंटेनर के अंदर वितरित कोड, हालांकि, बाधित हो सकता है।

आपका प्रश्न किसी तृतीय-पक्ष समर्थन समस्या से संबंधित है: क्लाइंट अपने स्वयं के वातावरण में चलने वाले सॉफ़्टवेयर को संशोधित करते हैं। यदि आप आपके द्वारा आपूर्ति किए जाने वाले कंटेनरों को संचालित करने के लिए उपकरण प्रदान करते हैं (उदाहरण के लिए निगरानी और लॉगिंग), तो ग्राहकों को सहमत होना चाहिए (सॉफ्टवेयर लाइसेंस के भाग के रूप में) उनके लिए अनधिकृत संशोधन न करें। यह सभी प्रकार के तृतीय-पक्ष सॉफ़्टवेयर पर लागू होता है, न कि केवल कंटेनरों पर।

आपकी स्थिति के आधार पर, आपके पास एक क्लाउड इन्फ्रास्ट्रक्चर में चलने वाले सॉफ़्टवेयर ए सर्विस (सास) के रूप में अपना ऐप प्रदान करने का विकल्प भी हो सकता है।

यदि आपके क्लाइंट को आपके कंटेनर को उनके बुनियादी ढांचे पर चलाने की आवश्यकता है, और संशोधन प्रतिबंधों का पालन करने से इनकार करते हैं, तो आप शायद उनके सॉफ़्टवेयर के उपयोग का समर्थन करने का प्रयास नहीं करना चाहते हैं।


6

डॉकर कंटेनर में उपयोगकर्ता की पहुंच को रोकने के लिए कोई साधन प्रदान नहीं करता है, हालांकि छवि डेवलपर के रूप में आप कुछ रणनीति का पालन कर सकते हैं

  • अपने सॉफ़्टवेयर को देखें (माणिक, अजगर और आदि)
  • एक आधार छवि से अपनी छवि बनाएं जिसमें शेल नहीं है, और अन्य बायनेरिज़ जो उपयोगकर्ता छवि को रौंदने के लिए उपयोग कर सकते हैं।

बेशक वे हमेशा कंटेनर का निर्यात कर सकते हैं और इसे वापस ला सकते हैं लेकिन वे चरम उपाय हैं ...


रूबी और पायथन को आचार संहिता के लिए उदाहरण के रूप में क्यों दिया जाता है? उन भाषाओं में कोड आमतौर पर निष्पादित ओएस पर स्पष्ट-पाठ स्रोत फ़ाइलों के रूप में रखे जाते हैं। क्या सी + +, सी #, जावा जैसी संकलित भाषा का उपयोग करना पसंद नहीं किया जाएगा या जेएस की तरह "छोटा" किया जा सकता है?
AjaxLeung

5

आप डोकर समूह से उपयोगकर्ताओं को निकालने और के लिए sudos बना सकते हैं docker startऔर docker stop


3
केवल तभी संभव / प्रभावी है जब आप उन सर्वरों के मालिक हों ...
Dan Cornilescu

5

यदि आपका ग्राहक पैसा निवेश करने के लिए तैयार है तो आपको डॉकर एंटरप्राइज संस्करण के साथ जाना चाहिए। Docker EE में आपके पास एक उपकरण है जो UCP(Universal Control Plane) UCP है । यूसीपी द्वारा आप भूमिकाएं बना सकते हैं और अधिकारों का उपयोग कर सकते हैं और कंटेनर को बदलने / संशोधित करने के लिए उपयोगकर्ता को प्रतिबंधित कर सकते हैं।

यदि आप एक महीने के परीक्षण लाइसेंस वाले डीडीसी (डॉकर डेटा सेंटर) की तुलना में यूसीपी का परीक्षण करना चाहते हैं जो आपको अपनी आवश्यकताओं के अनुसार चीजों को विस्तृत करने में मदद करेगा।

आशा है कि यह मदद करेगा!

धन्यवाद!


1
डॉकटर समूहों के बारे में समाधान के रूप में, यह काम करता है यदि आप केवल
डॉक

2

अपने वितरण को स्क्रिप्ट के माध्यम से दें। सभी प्रकार के प्रतिबंधों और जांचों को स्क्रिप्ट में रखें।


2
यह कंटेनर तक पहुंच को कैसे रोकेगा? यो समझाने की कोशिश करें कि आपका प्रस्ताव वास्तव में ओपी की समस्या को कैसे हल करेगा।
माइकल ले बारबियर ग्रुएनवाल्ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.