2015-10-24 8 views
5

मैं समझता हूँ कि डोकर डेमॉन runs as root तो मैं इस से कहा रहा हूँ करने की आवश्यकता है इस तरह अगर कंटेनर समझौता किया गया, हमलावरों मेजबान के सिस्टम फ़ाइलों में परिवर्तन कर सकते के रूप में कुछ सुरक्षा के प्रभाव पैदा कर सकता है।रनिंग डोकर सुरक्षित रूप से

हमले के मामले में क्षति को कम करने के लिए मुझे क्या सावधानी बरतनी चाहिए?

क्या कोई ऐसा अभ्यास है जिसे डॉकर डिमन चलाने पर मुझे अवगत होना चाहिए? मैंने एक वीएम के लिए एक वानर रखने के बारे में सोचा है और इसके बजाए वीएम में डॉकर चलाया है।

+0

यह वास्तव में मुझे प्रोग्रामिंग प्रश्न की तरह नहीं दिखता है ... शायद [यूनिक्स/लिनक्स एसई] (http://linux.stackexchange.com), या [सुरक्षा एसई] (http: // security.stackexchange.com), या यदि आपके लिनक्स डिस्ट्रो के लिए एक डिस्ट्रो विशिष्ट एसई है (यदि कोई है, तो [यह] (http://askubuntu.com)) बेहतर होगा। यह सुनिश्चित नहीं है कि आपको एक अच्छा उत्तर कहां से अधिक होने की संभावना है, इसलिए अपने डॉकर से संबंधित प्रश्नों के चारों ओर ब्राउज़ करें (और यदि आप अन्यत्र पूछते हैं तो इस प्रश्न को हटाएं, एसई साइटों के बीच डुप्लिकेट से बचें)। – hyde

+0

@hyde समझा। किसी भी तरह से मैं इसके बजाय सवाल स्थानांतरित कर सकता हूं या इसे दोबारा पोस्ट कर सकता हूं? – jkris

+2

यह निश्चित रूप से प्रोग्रामिंग के बारे में है। जिस तरह से कार्यक्रम स्थापित और स्थापित किया गया है, वही सावधानी और अभ्यास का अर्थ यहां हो सकता है। अगर मैं कर सकता तो मैं करीबी के खिलाफ वोट दूंगा। –

उत्तर

4

डॉकर सुरक्षा अभ्यास के बारे में जानकारी का मुख्य स्रोत "Docker security" पर पृष्ठ है।

केवल विश्वसनीय उपयोगकर्ताओं को आपके डॉकर डिमन को नियंत्रित करने की अनुमति दी जानी चाहिए।
यह कुछ शक्तिशाली डॉकर सुविधाओं का प्रत्यक्ष परिणाम है।

विशेष रूप से, डॉकर आपको डॉकर होस्ट और अतिथि कंटेनर के बीच निर्देशिका साझा करने की अनुमति देता है; और यह आपको कंटेनर के अभिगम अधिकारों को सीमित किए बिना ऐसा करने की अनुमति देता है।

यदि आप आरईएसटी एपीआई का पर्दाफाश करते हैं, तो आपको https पर ऐसा करना चाहिए।

अंत में, यदि आप एक सर्वर पर डोकर चलाने के लिए, यह सर्वर में विशेष रूप से डोकर चलाते हैं, और डोकर

वी एम के बारे में द्वारा नियंत्रित कंटेनरों के भीतर अन्य सभी सेवाओं को स्थानांतरित करने की सिफारिश की है, "Are Docker containers really secure? देखना "

सबसे बड़ी समस्या लिनक्स में सबकुछ नामित नहीं है। वर्तमान में, सिस्टम के प्रक्रिया दृश्य को बदलने के लिए डॉकर पांच नामस्थानों का उपयोग करता है: प्रक्रिया, नेटवर्क, माउंट, होस्टनाम, साझा मेमोरी।

इन उपयोगकर्ता सुरक्षा के कुछ स्तर देना हालांकि यह कोई व्यापक तरह से KVM (Kernel-based Virtual Machine) की तरह, है।
वर्चुअल मशीन में एक केवीएम पर्यावरण प्रक्रियाओं में सीधे मेजबान कर्नेल से बात नहीं करते हैं। उनके पास /sys और /sys/fs, /proc/* जैसे कर्नेल फ़ाइल सिस्टम तक कोई पहुंच नहीं है।

संबंधित मुद्दे