Ingress کا استعمال ایپلیکیشن آنے والی ٹریفک کو منظم کرنے اور SSL ختم کرنے کے لیے بھی کیا جاتا ہے۔ اس کے برعکس، راز کو خفیہ معلومات اور درخواست کے لیے TLS سرٹیفکیٹس کو ذخیرہ کرنے کے لیے استعمال کیا جاتا ہے۔
یہ پوسٹ وضاحت کرے گی:
- کبرنیٹس کے راز کیا ہیں؟
- شرط: پرائیویٹ کلید اور سرٹیفکیٹ تیار کریں۔
- Kubernetes میں خفیہ TLS کیسے بنائیں؟
- Yaml فائل کے ذریعے ایک راز کیسے بنایا جائے؟
- کبرنیٹس پوڈ کے ساتھ راز کو کیسے سرایت کریں؟
- نتیجہ
کبرنیٹس کے راز کیا ہیں؟
The Secrets Kubernetes کے وسائل میں سے ایک ہیں، جو خفیہ معلومات کو ذخیرہ کرنے کے لیے استعمال ہوتے ہیں جیسے صارف کے لاگ ان کی اسناد، چابیاں، سرٹیفکیٹس، یا ٹوکن۔ رازوں کو انفرادی طور پر تخلیق کیا جا سکتا ہے اور پوڈ سے منسلک کیا جا سکتا ہے. یہ ڈویلپر کو کوڈ میں خفیہ ڈیٹا فراہم کرنے سے روکتا ہے اور سیکیورٹی کی ایک اضافی پرت بھی فراہم کرتا ہے۔ مختلف قسم کے راز بنائے اور استعمال کیے جاسکتے ہیں۔ سب سے زیادہ استعمال شدہ راز یہ ہیں:
عمومی راز: عام راز بنیادی معلومات جیسے پاس ورڈز، ٹوکنز، API کیز، OAuth کیز وغیرہ کو ذخیرہ کرنے کے لیے استعمال کیے جاتے ہیں۔
TLS راز: TLS راز نجی کلیدوں اور سرٹیفکیٹس کو ذخیرہ کرنے کے لیے استعمال کیے جاتے ہیں جن پر CA کے دستخط ہوتے ہیں۔ Kubernetes کے اندر چلنے والی ایپلی کیشنز کی حفاظت کو یقینی بنانے اور کلسٹر کے اندر مواصلات کو محفوظ بنانے کے لیے، صارف کو عام طور پر TLS راز بنانے اور پوڈ میں شامل کرنے کی ضرورت ہوتی ہے۔
ڈاکر رجسٹری: اسے رجسٹری سے تصاویر کو آسانی سے کھینچنے کے لیے ڈاکر رجسٹری کی سند کو ذخیرہ کرنے کے لیے استعمال کیا جاتا ہے۔
شرط: پرائیویٹ کلید اور سرٹیفکیٹ تیار کریں۔
سیکیورٹی میں بہتری کے لیے سرٹیفکیٹ اور نجی کلید بنانے کے لیے، OpenSSL کا استعمال کریں جو CSR (سرٹیفکیٹ پر دستخط کرنے کی درخواست) اور نجی کلید تخلیق کرتا ہے۔ پھر، خود دستخط شدہ یا CA سرٹیفکیٹ بنانے کے لیے CSR کا استعمال کریں۔
ونڈوز پر اوپن ایس ایل کمانڈز کو استعمال کرنے کے لیے، صارفین کو گٹ انسٹال کرنے کی ضرورت ہے۔ اس مقصد کے لیے ہمارے لنک پر عمل کریں ' ونڈوز پر گٹ انسٹال کریں۔ 'مضمون.
گٹ انسٹال کرنے کے بعد، نجی کلید اور دستخط شدہ سرٹیفکیٹ بنانے کے لیے درج ذیل ہدایات پر عمل کریں۔
مرحلہ 1: گٹ باش ٹرمینل لانچ کریں۔
تلاش کریں ' گٹ باش اسٹارٹ مینو میں اور ٹرمینل لانچ کریں:
موجودہ ڈائریکٹری کو چیک کرنے کے لیے استعمال کریں ' پی ڈبلیو ڈی ' کمانڈ:
پی ڈبلیو ڈیفی الحال، ہم %USERPROFILE% ڈائریکٹری میں کام کر رہے ہیں:
مرحلہ 2: نئی ڈائرکٹری بنائیں
سرٹیفکیٹس اور نجی کلید کو بچانے کے لیے ایک نئی ڈائرکٹری بنائیں:
mkdir سرٹیفکیٹ'کا استعمال کرتے ہوئے نئی تخلیق کردہ ڈائریکٹری پر جائیں سی ڈی ' کمانڈ:
سی ڈی سرٹیفکیٹ
مرحلہ 3: نجی کلید بنائیں
اب، دی گئی کمانڈ کے ذریعے نجی کلید بنائیں۔ یہاں، پیدا کردہ نجی کلید کو 'میں محفوظ کیا جائے گا mycert.key ”:
openssl genpkey - الگورتھم آر ایس اے -باہر mycert.key
مرحلہ 4: CSR پیدا کریں۔
دستخط شدہ سرٹیفکیٹ حاصل کرنے کے لیے CSR (سرٹیفکیٹ سروس کی درخواست) تیار کرنے کے لیے، دی گئی کمانڈ کا استعمال کریں:
openssl req -نئی -چابی mycert.key -باہر mycert.csr
مرحلہ 5: سرٹیفکیٹ تیار کریں۔
آخر میں، پیدا کردہ نجی کلید اور CSR کا استعمال کرتے ہوئے، ایک سرٹیفکیٹ بنائیں اور اسے 'میں محفوظ کریں mycert.crt 'فائل. اس مقصد کے لیے درج ذیل کمانڈ پر عمل کریں:
اوپن ایس ایل ایکس 509 -req میں mycert.csr -سائنکی mycert.key -باہر mycert.crt -دن 365
TLS سرٹیفکیٹ تیار کرنے کے بعد، صارف مندرجہ ذیل سیکشن پر عمل کرکے خفیہ TLS بنا سکتا ہے۔
Kubernetes میں خفیہ TLS کیسے بنائیں؟
Kubernetes کلسٹر کے اندر اور باہر ایپلی کیشن کی حفاظت اور محفوظ مواصلات کو یقینی بنانے کے لیے، TLS (ٹرانسپورٹ لیئر سیکیورٹی) سرٹیفکیٹس ضروری ہیں جو ڈیٹا انکرپٹنگ میں استعمال ہوتے ہیں۔ Kubernetes راز ہمیں خفیہ TLS کے ذریعے چلنے والے پوڈز کے ساتھ TLS سرٹیفکیٹ کو سرایت کرنے کی اجازت دیتا ہے۔ Kubernetes میں خفیہ TLS بنانے کے لیے، درج ذیل ہدایات پر عمل کریں۔
مرحلہ 1: منی کیوب کلسٹر شروع کریں۔
منی کیوب کلسٹر شروع کرنے کے لیے، پہلے، ونڈوز پاور شیل کو بطور ایڈمنسٹریٹر لانچ کریں۔ اس کے بعد، 'کا استعمال کرتے ہوئے کلسٹر بنائیں اور چلائیں۔ minikube شروع ' کمانڈ:
minikube شروع
مرحلہ 2: نوڈس حاصل کریں۔
یہ چیک کرنے کے لیے Kubernetes نوڈ تک رسائی حاصل کریں کہ آیا کلسٹر شروع ہوا ہے یا نہیں:
minikube نوڈس حاصل کریں
مرحلہ 3: خفیہ TLS بنائیں
'کا استعمال کرتے ہوئے Kubernetes میں TLS راز بنائیں kubectl خفیہ بنائیں
مرحلہ 4: راز حاصل کریں۔
تصدیق کے لیے، دی گئی کمانڈ کا استعمال کرتے ہوئے Kubernetes کے راز کو درج کریں:
kubectl خفیہ حاصل کریںیہاں، آپ دیکھ سکتے ہیں کہ ہم نے مؤثر طریقے سے ' ڈیمو خفیہ 'جس پر مشتمل ہے' 2 ڈیٹا کی قدریں:
مرحلہ 5: راز کی وضاحت کریں۔
یہ دیکھنے کے لیے کہ کس طرح ڈیٹا کو خفیہ طور پر دیکھا یا ذخیرہ کیا جاتا ہے، 'کا استعمال کرتے ہوئے راز کی وضاحت کریں۔ kubectl describe secret
آپ دیکھ سکتے ہیں کہ اقدار بائٹس میں محفوظ ہیں اور کوبرنیٹس کنفیگ میپس کے برعکس براہ راست نہیں دیکھی جا سکتی ہیں۔
Yaml فائل کے ذریعے ایک خفیہ TLS کیسے بنایا جائے؟
yaml فائل کے ذریعے ایک خفیہ TLS بنانے کے لیے، پہلے ایک ' secret.yml 'فائل، شامل کریں tls base64 انکوڈ شدہ سرٹیفکیٹ میں ' tls.crt ' کلید ، اور شامل کریں۔ بیس 64 انکوڈ شدہ کلید میں ' tls.key '
مظاہرے کے لیے، درج کردہ مراحل پر عمل کریں۔
مرحلہ 1: Yaml فائل بنائیں
نام کی ایک فائل بنائیں secret.yml اور دیئے گئے کوڈ کو پیسٹ کریں:
apiVersion : v1ڈیٹا :
tls.crt : 'بیس 64 انکوڈ شدہ سرٹیفکیٹ'
tls.key : 'بیس 64 انکوڈ شدہ کلید'
قسم : خفیہ
میٹا ڈیٹا :
نام : mytls-secret
نام کی جگہ : پہلے سے طے شدہ
قسم : kubernetes.io/tls
مندرجہ بالا ٹکڑوں میں، 'tls.crt' اور 'tls.key' کلیدی اقدار کو اپنے اصل سرٹیفکیٹ اور کلیدی اقدار سے تبدیل کریں:
مرحلہ 2: ایک راز بنائیں
اب، 'کے ذریعے خفیہ یامل فائل کو لاگو کریں kubectl apply -f
آؤٹ پٹ سے پتہ چلتا ہے کہ ہم نے کامیابی سے ' mytls-secret 'yaml فائل کا استعمال کرتے ہوئے:
نوٹ: TLS سرٹیفکیٹ اور پرائیویٹ کلید دیکھیں
بیس 64 انکوڈ شدہ سرٹیفکیٹ کو دیکھنے اور اسے یامل فائل میں استعمال کرنے کے لیے، 'چلائیں cat
بیس 64 انکوڈ شدہ کلید کو دیکھنے کے لیے، استعمال کریں ' cat
Kubernetes Pod کے ساتھ خفیہ TLS کو کیسے ایمبیڈ کیا جائے؟
خفیہ TSL بنانے کے بعد، صارف اسے Kubernetes پوڈ کے ساتھ ایمبیڈ کر سکتا ہے۔ ایسا کرنے کے لیے درج ذیل ہدایات کا استعمال کریں۔
مرحلہ 1: Yaml فائل بنائیں
ایک فائل بنائیں جس کا نام ' pod.yml فائل کو دبائیں اور نیچے کا ٹکڑا فائل میں پیسٹ کریں:
apiVersion: v1قسم: پھلی
میٹا ڈیٹا:
نام: ڈیمو پوڈ
spec:
کنٹینرز:
- نام: html-cont
تصویر: rafia098 / html-img: 1.0
envFrom:
- secretRef:
نام: ڈیمو سیکریٹ
مندرجہ بالا ٹکڑوں میں:
- ' قسم کلید Kubernetes وسائل کی وضاحت کرتی ہے جسے صارف بنا رہا ہے۔
- ' نام ' کلید پوڈ کا نام ترتیب دے گی۔
- ' کنٹینرز ' کلید کنٹینر کی معلومات کو محفوظ کرے گی۔
- ' نام 'کنٹینرز' کلید کے نیچے کی کلید کنٹینر کا نام سیٹ کرے گی۔
- ' تصویر ” کلید کنٹینر کے اندر ایپلیکیشن بنانے اور شروع کرنے کے لیے ایپلیکیشن یا کنٹینر امیج فراہم کرے گی۔
- ' envFrom ” کلید دیگر Kubernetes وسائل سے ماحول کے متغیر کو سیٹ کرے گی۔ یہاں، پوڈ میں خفیہ TLS کو سرایت کرنے کے لیے، ' secretRef ایک خفیہ حوالہ فراہم کرنے کے لیے استعمال کیا جاتا ہے۔ مندرجہ بالا خفیہ TLS کو سرایت کرنے کے لیے، 'نام' کلید میں راز کا نام بتائیں۔
مرحلہ 2: پوڈ بنائیں یا اپ گریڈ کریں۔
اگلا، فولڈر کھولیں جہاں ' pod.yml فائل بنائی گئی ہے:
سی ڈی C:\Users\Dell\Documents\Kubernetes\Secret
'کا استعمال کرتے ہوئے پوڈ کو بنانے یا دوبارہ ترتیب دینے کے لئے yaml فائل کا اطلاق کریں۔ kubectl لاگو کریں ' کمانڈ:
kubectl لاگو کریں -f pod.yml
مرحلہ 3: Kubernetes Pods تک رسائی حاصل کریں۔
تصدیق کے لیے، Kubernetes pods کی فہرست بنائیں:
kubectl حاصل podیہاں، آپ دیکھ سکتے ہیں کہ ہم نے ' ڈیمو پوڈ ' کامیابی سے:
مرحلہ 4: پوڈ کی وضاحت کریں۔
یہ چیک کرنے کے لیے کہ آیا پوڈ نے خفیہ TLS کو سرایت کیا ہے یا نہیں، نیچے دی گئی کمانڈ کا استعمال کرتے ہوئے پوڈ کی وضاحت کریں:
kubectl پوڈ ڈیمو پوڈ کی وضاحت کرتا ہے۔درج ذیل آؤٹ پٹ سے پتہ چلتا ہے کہ ہم نے پوڈ کے ساتھ TLS راز کو کامیابی کے ساتھ سرایت کر لیا ہے۔
ہم نے خفیہ TLS بنانے اور اسے پوڈ میں چلنے والی Kubernetes ایپلیکیشن کے ساتھ ایمبیڈ کرنے کا طریقہ بتایا ہے۔
نتیجہ
Kubernetes میں خفیہ TLS بنانے کے لیے، پہلے TLS پر دستخط شدہ سرٹیفکیٹ اور نجی کلید بنائیں۔ اس کے بعد، Kubernetes کلسٹر شروع کریں اور چلائیں ' kubectl خفیہ بنائیں