0Pricing
Cyber Security Academy · درس

أمان Pods وسياسات الشبكة

عزل أعباء العمل.

أمان Pods وسياسات الشبكة درس مجاني في Cyber Security Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cyber Security Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.

عزل أعباء العمل

يحدّ ضابطان مما يمكن لـ Pod مخترق فعله: يقيّد Pod Security امتيازات Pod، بينما تقيّد Network Policies أي Pods يمكنها التواصل فيما بينها. ويحاصران معًا نطاق الضرر.

  • يمنع Pod Security محاولات الهروب إلى العقدة.
  • تمنع Network Policies الحركة الجانبية بين Pods.

إعدادات Pod الخطرة

توسّع عدة حقول في مواصفات Pod نطاق المخاطر بدرجة كبيرة إذا سُمح بها.

  • يمنح privileged: true وصولًا شبه كامل إلى المضيف.
  • تُعطّل hostPID وhostNetwork وhostIPC عزل مساحات الأسماء.
  • تقوم وحدات التخزين hostPath بتحميل أدلة العقدة.
  • تمكّن capabilities المضافة، مثل SYS_ADMIN، من الهروب.
  • التشغيل كمستخدم root (runAsUser: 0).

Pod Security Admission

حلّ Pod Security Admission (PSA) محل PodSecurityPolicy. وهو يفرض ثلاثة معايير مضمّنة لكل مساحة أسماء.

  • Privileged: غير مقيّد (تجنّب استخدامه لأعباء العمل).
  • Baseline: يحظر تصعيدات الامتياز المعروفة.
  • Restricted: أفضل ممارسة مُحصّنة (دون root، ودون امتيازات، مع إسقاط capabilities).
# Enforce the restricted standard on a namespace
kubectl label namespace prod \
  pod-security.kubernetes.io/enforce=restricted

securityContext مُحصّن

حدّد مبدأ أقل امتياز على مستوى Pod والحاوية باستخدام securityContext.

  • شغّل العملية كمستخدم غير root، واجعل نظام الملفات الجذري للقراءة فقط.
  • أسقط جميع Linux capabilities، ثم أضف ما يلزم فقط.
  • امنع تصعيد الامتيازات.
# securityContext fields (YAML)
# runAsNonRoot: true
# readOnlyRootFilesystem: true
# allowPrivilegeEscalation: false
# capabilities: drop: [ALL]
kubectl apply -f hardened-deploy.yaml

ما بعد المعايير: محركات السياسات

للحصول على قواعد أكثر ثراءً من PSA، تفرض وحدات تحكم القبول سياسات مخصصة.

  • يقيّم OPA Gatekeeper قيود Rego.
  • يستخدم Kyverno سياسات YAML، ويمكنه تعديل الموارد والتحقق منها.

يمكن لهذه الأدوات حظر hostPath، واشتراط الصور الموقّعة، أو فرض التسميات على مستوى العنقود بأكمله.

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

الشبكات المفتوحة افتراضيًا

يمكن لجميع Pods افتراضيًا الوصول إلى جميع Pods الأخرى عبر جميع مساحات الأسماء. ولا يوجد تقسيم إلى قطاعات حتى تضيف Network Policies. ولهذا تتيح الشبكة المسطّحة لـ Pod واحد مخترق فحص العنقود بأكمله ومهاجمته.

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

أساسيات Network Policy

Network Policies هي قواعد مرتبطة بمساحات الأسماء، تحدد Pods وتسمح بحركة مرور واردة أو صادرة محددة. وهي تراكمية: يؤدي تطبيق أي سياسة على Pod إلى تحويله إلى الرفض الافتراضي في الاتجاه المشمول.

  • تطابق المحددات Pods حسب التسمية.
  • تسمح القواعد بحركة المرور من Pods أو مساحات أسماء أو CIDRs محددة وإليها.
  • يلزم استخدام CNI يدعم السياسات، مثل Calico أو Cilium.

الرفض الافتراضي ثم السماح

النمط الموصى به هو وضع خط أساس للرفض الافتراضي لكل مساحة أسماء، ثم إضافة قواعد سماح صريحة للتدفقات المطلوبة.

# 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

حظر المرور الصادر وبيانات التعريف

لا تقل سياسات المرور الصادر أهمية عن سياسات المرور الوارد.

  • قيّد نقاط النهاية الخارجية التي يمكن لـ Pods الوصول إليها (للحد من استخراج البيانات واتصالات C2).
  • احظر عنوان IP لبيانات تعريف السحابة 169.254.169.254 من Pods لمنع سرقة بيانات اعتماد العقدة.
  • قيّد DNS وحركة المرور الداخلية بين الخدمات (east-west).

الحماية وقت التشغيل

تكمّل سياسات وقت السكون آليات الكشف وقت التشغيل.

  • يطلق Falco تنبيهات عند استدعاءات النظام المشبوهة (مثل تشغيل shell داخل الحاوية أو عمليات التحميل الحساسة).
  • تقيّد ملفات تعريف seccomp استدعاءات النظام التي يمكن للحاوية إجراؤها.
  • تضيف AppArmor/SELinux تحكمًا إلزاميًا بالوصول على العقدة.
# Apply the runtime/default seccomp profile (securityContext)
# seccompProfile: type: RuntimeDefault
kubectl apply -f seccomp-deploy.yaml

اختبار العزل

عند التحقق من الاحتواء، حاول إجراء اتصالات بين Pods واستخدام آليات الهروب من Pod اختباري، وتأكد من أن السياسات تحظرها. نفّذ ذلك في مساحة أسماء خاضعة للتحكم، ثم أزل Pods الاختبار بعد الانتهاء.

أبلغ عن أي Pod يعمل بامتيازات privileged أو أي مساحة أسماء تفتقر إلى الرفض الافتراضي، مع إصلاح البيان الدقيق.

تحقق سريع

تحقّق من معرفتك بعزل أعباء العمل.

مراجعة

تعلّمت كيفية عزل أعباء العمل.

  • يمنع Pod Security Admission (restricted) وsecurityContext عمليات الهروب.
  • يفرض Gatekeeper/Kyverno سياسات قبول مخصصة.
  • الشبكات مفتوحة افتراضيًا؛ طبّق الرفض الافتراضي ثم أضف قواعد سماح صريحة.
  • تضيف قواعد المرور الصادر وحظر بيانات التعريف وFalco طبقات حماية إضافية.

التالي: تأمين سلسلة التوريد والأسرار.

الأسئلة الشائعة

هل درس «أمان Pods وسياسات الشبكة» مجاني؟

نعم — نص درس «أمان Pods وسياسات الشبكة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cyber Security Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.

ماذا ستتعلم في «أمان Pods وسياسات الشبكة»؟

عزل أعباء العمل. تتمرن على Cyber Security Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Cyber Security Academy؟

لا تُشترط خبرة سابقة. Cyber Security Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «أمان Pods وسياسات الشبكة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Cyber Security Academy هذا؟

نعم. كل درس في Cyber Security Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. نموذج تهديدات Kubernetes
  2. RBAC وحسابات الخدمة
  3. أمان Pods وسياسات الشبكة
  4. تأمين سلسلة التوريد والأسرار
← العودة إلى Cyber Security Academy