منصوبے کے بارے میں

Nirmata Runtime For Kyverno Nirmata Runtime ایک Kubernetes مقامی رن ٹائم سیکیورٹی ٹول ہے جو eBPF کا استعمال کرتے ہوئے کرنل کی سطح پر ورک لوڈ کے رویے کی نگرانی اور نفاذ کرتا ہے۔ یہ ہر نوڈ پر DaemonSet کے طور پر کام کرتا ہے، اور کلسٹر وسیع RuntimePolicy کسٹم ریسورس کے ذریعے منتخب کیے گئے پوڈز پر eBPF پروگرام منسلک کرتا ہے۔ بنیادی صلاحیتیں RuntimePolicy پانچ اقسام کے ورک لوڈ رویوں کو کنٹرول کرتی ہے: 1. فائل اوپن – کون سی فائلیں ایک عمل کھولتا ہے 2. بائنری اجرا – کون سی بائنریز چلاتا ہے 3. نیٹ ورک منزلیں – ٹریفک کہاں بھیجتا ہے 4. ایپلیکیشن پروٹوکولز – کون سے پروٹوکول استعمال کرتا ہے 5. DNS ریزولوشنز – کون سے ڈومین نام حل کرتا ہے فیصلے کرنل میں کیے جاتے ہیں، لہٰذا ناقابلِ اجازت آپریشن کبھی مکمل نہیں ہوتے۔ یہ Kyverno جیسے ایڈمیشن کنٹرولرز کی تکمیل کرتا ہے، جو پوڈ اسپیکس کو اسٹارٹ اپ سے پہلے توثیق کرتے ہیں، اصل رن ٹائم رویے کو نافذ کرکے۔ اہم خصوصیات - نفاذ یا نگرانی کے موڈ: پالیسیاں آپریشنز کو روک سکتی ہیں (mode: enforce) یا صرف نتائج رپورٹ کر سکتی ہیں (mode: monitor)، ہر پالیسی کی ترتیب کے ساتھ۔ - CEL سے چلنے والے قواعد: Kyverno کی لائبریریوں کے ساتھ Common Expressions Language (CEL) استعمال کرتا ہے، جس میں لفظی اقدار، اظہاریے، اور دوبارہ قابلِ استعمال متغیرات شامل ہیں۔ - ڈیفالٹ ڈینی بذریعہ اجازت فہرست: deny.values: ["*"] مقرر کرنے سے رویہ تمام-منع-سوائے-اجازت یافتہ ہو جاتا ہے۔ - Kubernetes مقامی آؤٹ پٹ: نتائج پوڈ کے namespace میں OpenReports Report آبجیکٹس کے طور پر لکھے جاتے ہیں، ہر نوڈ کی اسٹیٹس شرائط اور Prometheus کاؤنٹرز کے ساتھ۔ - سلیکٹر اسکوپنگ: پالیسیاں لیبل سلیکٹرز کے ذریعے پوڈز اور namespaces کو نشانہ بنا سکتی ہیں، کلسٹر بھر میں۔ - متواتر دوبارہ تشخیص: evaluationInterval بیرونی ذرائع سے حاصل کردہ ڈینی لسٹوں کو تازہ رکھنے کے لیے پالیسی اظہاریوں کو دوبارہ چلاتا ہے۔ فوری آغاز Helm کے ذریعے انسٹال کریں: helm install kyverno-runtime oci://ghcr.io/nirmata/charts/kyverno-runtime --namespace kyverno-runtime --create-namespace مثال: کسی پوڈ کے لیے مخصوص IP ایڈریس بلاک کریں: apiVersion: runtime.nirmata.io/v1alpha1 kind: RuntimePolicy metadata: name: block-address-sample spec: mode: enforce podSelector: matchLabels: app: egress-client behaviors: - network: deny: values: - "8.8.8.8" حدود (پری-1.0) - ایگریس صرف IPv4 ہے؛ IPv6 لٹریلز تعاون یافتہ نہیں ہیں۔ - فائل اوپن اور exec نفاذ کے لیے کرنل میں BPF-LSM فعال ہونا ضروری ہے (lsm= بوٹ پیرامیٹر)۔ - نیٹ ورک، پروٹوکول، اوپن، اور exec مشاہدات eBPF کاؤنٹرز سے پول کیے جاتے ہیں، اس لیے نتائج میں تاخیر ہو سکتی ہے اور وہ گنتی رکھتے ہیں ترتیب نہیں۔ DNS سوالات ریئل ٹائم میں سٹریم ہوتے ہیں۔ - استثنیات ابھی تعاون یافتہ نہیں ہیں۔ دستاویزات کوئیک اسٹارٹ، تصورات، تنصیب، پلیٹ فارم سپورٹ (EKS, GKE, AKS, Bottlerocket)، مثالیں، شیڈو AI کا پتہ لگانا، مسئلہ حل کرنا، اور RuntimePolicy CRD، CEL اظہاریوں، اور میٹرکس کے حوالہ جاتی دستاویزات شامل ہیں۔ لائسنس Apache License 2.0