Cyber Security Academy · पाठ

पॉड सुरक्षा और नेटवर्क नीतियाँ

वर्कलोड को अलग रखना।

पाठ 3, कुल 4 में से13 चरण

पॉड सुरक्षा और नेटवर्क नीतियाँ, CoddyKit पर Cyber Security Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Cyber Security Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

कार्यभारों का पृथक्करण

दो नियंत्रण यह सीमित करते हैं कि किसी समझौता किए गए पॉड से क्या कराया जा सकता है: पॉड सुरक्षा पॉड के विशेषाधिकारों को सीमित करती है, और नेटवर्क नीतियाँ यह सीमित करती हैं कि कौन-से पॉड एक-दूसरे से संपर्क कर सकते हैं। साथ मिलकर, ये प्रभाव-क्षेत्र को सीमित करते हैं।

  • पॉड सुरक्षा नोड तक पलायन को रोकती है।
  • नेटवर्क नीतियाँ पॉडों के बीच पार्श्व गति को रोकती हैं।

खतरनाक पॉड सेटिंग्स

पॉड विनिर्देश के कई फ़ील्ड अनुमति दिए जाने पर जोखिम को बहुत बढ़ा देते हैं।

  • privileged: true होस्ट-जैसी लगभग पूरी पहुँच प्रदान करता है।
  • hostPID, hostNetwork, hostIPC नेमस्पेस पृथक्करण को तोड़ते हैं।
  • hostPath वॉल्यूम नोड की निर्देशिकाओं को माउंट करते हैं।
  • SYS_ADMIN जैसी जोड़ी गई क्षमताएँ पलायन को संभव बनाती हैं।
  • रूट के रूप में चलाना (runAsUser: 0)।

पॉड सुरक्षा प्रवेश

पॉड सुरक्षा प्रवेश (PSA) ने PodSecurityPolicy का स्थान लिया। यह प्रत्येक नेमस्पेस में तीन अंतर्निर्मित मानक लागू करता है।

  • विशेषाधिकार-युक्त: कोई प्रतिबंध नहीं (कार्यभारों के लिए इससे बचें)।
  • आधारभूत: ज्ञात विशेषाधिकार-वृद्धियों को रोकता है।
  • प्रतिबंधित: सुदृढ़ सर्वोत्तम अभ्यास (गैर-रूट, कोई विशेषाधिकार नहीं, क्षमताएँ हटाई गई हों)।
# Enforce the restricted standard on a namespace
kubectl label namespace prod \
  pod-security.kubernetes.io/enforce=restricted

सुदृढ़ securityContext

securityContext के साथ पॉड और कंटेनर स्तर पर न्यूनतम-विशेषाधिकार सिद्धांत निर्धारित करें।

  • गैर-रूट उपयोगकर्ता के रूप में चलाएँ और रूट फ़ाइल सिस्टम को केवल-पठन योग्य रखें।
  • सभी लिनक्स क्षमताएँ हटाएँ, फिर केवल आवश्यक क्षमताएँ जोड़ें।
  • विशेषाधिकार-वृद्धि की अनुमति न दें।
# securityContext fields (YAML)
# runAsNonRoot: true
# readOnlyRootFilesystem: true
# allowPrivilegeEscalation: false
# capabilities: drop: [ALL]
kubectl apply -f hardened-deploy.yaml

मानकों से आगे: नीति इंजन

PSA से अधिक विस्तृत नियमों के लिए, प्रवेश नियंत्रक अनुकूलित नीतियाँ लागू करते हैं।

  • OPA गेटकीपर रेगो बाध्यताओं का मूल्यांकन करता है।
  • कायवर्नो YAML नीतियों का उपयोग करता है और सत्यापन के साथ-साथ रूपांतरण भी कर सकता है।

इनकी सहायता से hostPath पर रोक लगाई जा सकती है, हस्ताक्षरित इमेज अनिवार्य की जा सकती हैं या पूरे क्लस्टर में लेबल लागू किए जा सकते हैं।

# Apply a Kyverno policy that disallows privileged pods
kubectl apply -f disallow-privileged.yaml

डिफ़ॉल्ट रूप से खुला नेटवर्क

डिफ़ॉल्ट रूप से, सभी पॉड सभी नेमस्पेसों में मौजूद अन्य सभी पॉडों तक पहुँच सकते हैं। जब तक आप नेटवर्क नीतियाँ नहीं जोड़ते, तब तक कोई विभाजन नहीं होता। यही समतल नेटवर्क कारण है कि एक समझौता किया गया पॉड पूरे क्लस्टर को स्कैन और उस पर आक्रमण कर सकता है।

# From a pod, the flat network lets you reach any service
curl http://internal-db.prod.svc.cluster.local:5432

नेटवर्क नीति की मूल बातें

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

  • चयनकर्ता लेबल के आधार पर पॉडों से मेल खाते हैं।
  • नियम विशिष्ट पॉडों, नेमस्पेसों या सीआईडीआर से आने वाले या उनकी ओर जाने वाले ट्रैफ़िक की अनुमति देते हैं।
  • नीति का समर्थन करने वाला CNI (कैलिको, सिलियम) आवश्यक है।

पहले डिफ़ॉल्ट-अस्वीकृति, फिर अनुमति

अनुशंसित तरीका यह है कि प्रत्येक नेमस्पेस के लिए डिफ़ॉल्ट-अस्वीकृति की आधाररेखा लागू की जाए और फिर आवश्यक प्रवाहों के लिए स्पष्ट अनुमति नियम बनाए जाएँ।

# Default-deny all ingress in a namespace (YAML)
# kind: NetworkPolicy spec: podSelector: {} policyTypes: [Ingress]
kubectl apply -f default-deny.yaml

# Then allow only frontend -> backend
kubectl apply -f allow-frontend.yaml

जावक ट्रैफ़िक और मेटाडेटा अवरोधन

जावक नीतियाँ आवक नीतियों जितनी ही महत्वपूर्ण हैं।

  • यह सीमित करें कि पॉड किन बाहरी एंडपॉइंट्स तक पहुँच सकते हैं (इससे डेटा-निकासी और कमांड-एंड-कंट्रोल सीमित होते हैं)।
  • नोड के क्रेडेंशियल चुराने से रोकने के लिए पॉडों से क्लाउड मेटाडेटा IP 169.254.169.254 तक पहुँच रोकें।
  • DNS और आंतरिक पूर्व-पश्चिम ट्रैफ़िक को सीमित करें।

रनटाइम सुरक्षा

स्थिर नीति को रनटाइम पहचान का पूरक समर्थन मिलता है।

  • फाल्को संदिग्ध सिस्टम कॉल पर चेतावनी देता है (कंटेनर में शेल, संवेदनशील माउंट)।
  • seccomp प्रोफ़ाइल उन सिस्टम कॉलों को सीमित करती हैं जिन्हें कोई कंटेनर कर सकता है।
  • AppArmor/एसईलिनक्स नोड पर अनिवार्य पहुँच नियंत्रण जोड़ते हैं।
# Apply the runtime/default seccomp profile (securityContext)
# seccompProfile: type: RuntimeDefault
kubectl apply -f seccomp-deploy.yaml

पृथक्करण का परीक्षण

अवरोधन की पुष्टि करते समय, किसी परीक्षण पॉड से पॉड-पार संपर्क और पलायन के मूल उपाय आज़माएँ तथा पुष्टि करें कि नीतियाँ उन्हें रोकती हैं। यह कार्य नियंत्रित नेमस्पेस में करें और बाद में परीक्षण पॉड हटा दें।

किसी भी ऐसे पॉड की रिपोर्ट करें जो विशेषाधिकार-युक्त रूप से चलता हो, या ऐसे किसी नेमस्पेस की जिसमें डिफ़ॉल्ट-अस्वीकृति न हो; साथ में सटीक मेनिफेस्ट सुधार दें।

त्वरित जाँच

अपने पृथक्करण संबंधी ज्ञान की पुष्टि करें।

पुनरावलोकन

आपने कार्यभारों को अलग करना सीखा।

  • पॉड सुरक्षा प्रवेश (प्रतिबंधित) और securityContext पलायन को रोकते हैं।
  • गेटकीपर/कायवर्नो अनुकूलित प्रवेश नीतियाँ लागू करते हैं।
  • नेटवर्क डिफ़ॉल्ट रूप से खुला होता है; पहले डिफ़ॉल्ट-अस्वीकृति लागू करें, फिर स्पष्ट अनुमतियाँ दें।
  • जावक नियम, मेटाडेटा अवरोधन और फाल्को सुरक्षा को और मजबूत करते हैं।

अगला विषय: आपूर्ति शृंखला और गुप्त-सूचनाओं को सुरक्षित करना।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Cyber Security Academy सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
303

अक्सर पूछे जाने वाले प्रश्न

क्या “पॉड सुरक्षा और नेटवर्क नीतियाँ” पाठ निःशुल्क है?

हाँ — Cyber Security Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “पॉड सुरक्षा और नेटवर्क नीतियाँ” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“पॉड सुरक्षा और नेटवर्क नीतियाँ” में मैं क्या सीखूँगा?

वर्कलोड को अलग रखना। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Cyber Security Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Cyber Security Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Cyber Security Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“पॉड सुरक्षा और नेटवर्क नीतियाँ” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Cyber Security Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Cyber Security Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Kubernetes थ्रेट मॉडल
  2. RBAC और सेवा खाते
  3. पॉड सुरक्षा और नेटवर्क नीतियाँ
  4. सप्लाई चेन और सीक्रेट सुरक्षित करना
← Cyber Security Academy पर वापस जाएँ