কুবারনেটসে কীভাবে গোপন টিএলএস তৈরি করবেন

Kubaranetase Kibhabe Gopana Ti Ela Esa Tairi Karabena



Kubernetes হল একটি ওপেন-সোর্স টুল যা ক্লাস্টারের ভিতরে কন্টেইনারাইজড অ্যাপ্লিকেশন চালানো এবং পরিচালনা করতে ব্যবহৃত হয়। এটি গোপন এবং প্রবেশের মাধ্যমে অ্যাপ্লিকেশনের শংসাপত্রগুলি নিয়ন্ত্রণ, চালানো এবং সুরক্ষিত করার জন্য বিভিন্ন কাজ সম্পাদন করে।

ইনগ্রেস অ্যাপ্লিকেশন ইনকামিং ট্র্যাফিক পরিচালনা করতে এবং SSL সমাপ্তির জন্য ব্যবহৃত হয়। বিপরীতে, গোপনীয় তথ্য এবং আবেদনের জন্য TLS শংসাপত্র সংরক্ষণ করতে গোপনীয়তা ব্যবহার করা হয়।

এই পোস্টটি ব্যাখ্যা করবে:







Kubernetes গোপন কি?

Secrets হল Kubernetes সম্পদগুলির মধ্যে একটি, যা ব্যবহারকারীর লগইন শংসাপত্র, কী, সার্টিফিকেট বা টোকেনের মতো গোপনীয় তথ্য সংরক্ষণ করতে ব্যবহৃত হয়। গোপনীয়তা পৃথকভাবে তৈরি করা যেতে পারে এবং পডের সাথে সংযুক্ত করা যেতে পারে। এটি বিকাশকারীকে কোডে গোপনীয় তথ্য সরবরাহ করতে বাধা দেয় এবং নিরাপত্তার একটি অতিরিক্ত স্তরও প্রদান করে। বিভিন্ন ধরণের গোপনীয়তা তৈরি এবং ব্যবহার করা যেতে পারে। সর্বাধিক ব্যবহৃত গোপনীয়তা হল:



জেনেরিক সিক্রেট: জেনেরিক গোপনীয়তাগুলি প্রাথমিক তথ্য যেমন পাসওয়ার্ড, টোকেন, API কী, OAuth কী এবং আরও অনেক কিছু সংরক্ষণ করতে ব্যবহার করা হয়।



TLS গোপন: TLS গোপনীয়তাগুলি CA দ্বারা স্বাক্ষরিত ব্যক্তিগত কী এবং শংসাপত্রগুলি সংরক্ষণ করতে ব্যবহৃত হয়৷ Kubernetes-এর অভ্যন্তরে চলমান অ্যাপ্লিকেশনগুলির নিরাপত্তা নিশ্চিত করতে এবং ক্লাস্টারের মধ্যে যোগাযোগ সুরক্ষিত করার জন্য, ব্যবহারকারীকে সাধারণত পডে TLS গোপনীয়তা তৈরি এবং এম্বেড করতে হবে।





ডকার রেজিস্ট্রি: এটি সহজেই রেজিস্ট্রি থেকে চিত্রগুলি টানতে ডকার রেজিস্ট্রি শংসাপত্র সংরক্ষণ করতে ব্যবহৃত হয়।

পূর্বশর্ত: ব্যক্তিগত কী এবং শংসাপত্র তৈরি করুন

নিরাপত্তার উন্নতির জন্য শংসাপত্র এবং ব্যক্তিগত কী তৈরি করতে, OpenSSL ব্যবহার করুন যা CSR (শংসাপত্র স্বাক্ষর করার অনুরোধ) এবং ব্যক্তিগত কী তৈরি করে। তারপর, স্ব-স্বাক্ষরিত বা CA শংসাপত্রগুলি তৈরি করতে CSR ব্যবহার করুন৷



উইন্ডোজে OpenSSL কমান্ডগুলি ব্যবহার করতে, ব্যবহারকারীদের গিট ইনস্টল করতে হবে। এই উদ্দেশ্যে আমাদের লিঙ্ক অনুসরণ করুন ' উইন্ডোজে গিট ইনস্টল করুন ' নিবন্ধ।

গিট ইনস্টল করার পরে, একটি ব্যক্তিগত কী এবং স্বাক্ষরিত শংসাপত্র তৈরি করতে নীচের নির্দেশাবলী অনুসরণ করুন।

ধাপ 1: গিট ব্যাশ টার্মিনাল চালু করুন

'এর জন্য অনুসন্ধান করুন গিট ব্যাশ স্টার্ট মেনুতে এবং টার্মিনাল চালু করুন:

বর্তমান ডিরেক্টরি পরীক্ষা করতে ব্যবহার করুন ' pwd 'আদেশ:

pwd

বর্তমানে, আমরা %USERPROFILE% ডিরেক্টরিতে কাজ করছি:

ধাপ 2: নতুন ডিরেক্টরি তৈরি করুন

শংসাপত্র এবং ব্যক্তিগত কী সংরক্ষণ করতে একটি নতুন ডিরেক্টরি তৈরি করুন:

mkdir শংসাপত্র

' ব্যবহার করে নতুন তৈরি ডিরেক্টরিতে নেভিগেট করুন সিডি 'আদেশ:

সিডি শংসাপত্র

ধাপ 3: ব্যক্তিগত কী তৈরি করুন

এখন, প্রদত্ত কমান্ডের মাধ্যমে ব্যক্তিগত কী তৈরি করুন। এখানে, জেনারেট করা প্রাইভেট কী 'এ সংরক্ষণ করা হবে mycert.key ”:

openssl genpkey -অ্যালগরিদম আরএসএ -আউট mycert.key

ধাপ 4: CSR তৈরি করুন

একটি স্বাক্ষরিত শংসাপত্র পেতে CSR (শংসাপত্র পরিষেবা অনুরোধ) তৈরি করতে, প্রদত্ত কমান্ডটি ব্যবহার করুন:

openssl req -নতুন -চাবি mycert.key -আউট mycert.csr

ধাপ 5: সার্টিফিকেট তৈরি করুন

সবশেষে, জেনারেট করা প্রাইভেট কী এবং সিএসআর ব্যবহার করে একটি সার্টিফিকেট তৈরি করুন এবং এটি ' mycert.crt ' ফাইল। এই উদ্দেশ্যে, নীচের কমান্ডটি চালান:

openssl x509 - অনুরোধ -ভিতরে mycert.csr -সাইনকি mycert.key -আউট mycert.crt -দিন 365

TLS শংসাপত্র তৈরি করার পরে, ব্যবহারকারী নীচের বিভাগটি অনুসরণ করে গোপন TLS তৈরি করতে পারেন।

কুবারনেটসে গোপন টিএলএস কীভাবে তৈরি করবেন?

Kubernetes ক্লাস্টারের ভিতরে এবং বাইরে অ্যাপ্লিকেশন নিরাপত্তা এবং নিরাপদ যোগাযোগ নিশ্চিত করতে, TLS (ট্রান্সপোর্ট লেয়ার সিকিউরিটি) শংসাপত্রগুলি অপরিহার্য যেগুলি ডেটা এনক্রিপ্টিংয়ে ব্যবহৃত হয়। কুবারনেটস সিক্রেট আমাদের গোপন TLS এর মাধ্যমে চলমান পডের সাথে TLS শংসাপত্র এমবেড করতে দেয়। Kubernetes-এ একটি গোপন TLS তৈরি করতে, নিম্নলিখিত নির্দেশাবলীর মাধ্যমে যান।

ধাপ 1: Minikube ক্লাস্টার শুরু করুন

মিনিকুব ক্লাস্টার শুরু করতে, প্রথমে প্রশাসক হিসাবে Windows PowerShell চালু করুন। এর পরে, '' ব্যবহার করে ক্লাস্টার তৈরি করুন এবং চালান minikube শুরু 'আদেশ:

minikube শুরু

ধাপ 2: নোড পান

ক্লাস্টার শুরু হয়েছে কিনা তা পরীক্ষা করতে কুবারনেটস নোড অ্যাক্সেস করুন:

minikube নোড পেতে

ধাপ 3: গোপন TLS তৈরি করুন

' ব্যবহার করে কুবারনেটসে TLS সিক্রেট তৈরি করুন kubectl সিক্রেট তৈরি করুন –cert= –key= 'আদেশ। এখানে, গোপন প্রকার হতে পারে ' সাধারণ ', ' tls ', বা ' ডকার-রেজিস্ট্রি ” একটি TLS গোপন তৈরি করতে, আমরা গোপন প্রকারটিকে 'tls' হিসাবে সেট করেছি:

kubectl সিক্রেট টিএলএস ডেমো-সিক্রেট তৈরি করে --প্রত্যয়নপত্র =C:\Users\Dell\cert\mycert.crt --চাবি =C:\Users\Dell\cert\mycert.key

ধাপ 4: গোপনীয়তা পান

নিশ্চিতকরণের জন্য, প্রদত্ত কমান্ডটি ব্যবহার করে Kubernetes গোপন তালিকাটি তালিকাভুক্ত করুন:

kubectl গোপন পেতে

এখানে, আপনি দেখতে পাচ্ছেন যে আমরা কার্যকরভাবে একটি তৈরি করেছি ' ডেমো-গোপন ' ধারণকৃত ' 2 ' ডেটা মান:

ধাপ 5: গোপন বর্ণনা করুন

গোপনে ডেটা কীভাবে দেখা বা সংরক্ষণ করা হয় তা দেখতে, 'ব্যবহার করে গোপনীয়তা বর্ণনা করুন' kubectl গোপন বর্ণনা করুন 'আদেশ:

kubectl গোপন ডেমো-সিক্রেট বর্ণনা করে

আপনি দেখতে পাচ্ছেন মানগুলি বাইটে সংরক্ষণ করা হয়েছে এবং কুবারনেট কনফিগম্যাপের বিপরীতে সরাসরি দেখা যাবে না:

কিভাবে Yaml ফাইলের মাধ্যমে একটি গোপন TLS তৈরি করবেন?

একটি yaml ফাইলের মাধ্যমে একটি গোপন TLS তৈরি করতে, প্রথমে একটি তৈরি করুন “ secret.yml ” ফাইল, যোগ করুন tls base64 এনকোডেড শংসাপত্র মধ্যে ' tls.crt ” কী, এবং যোগ করুন base64 এনকোডেড কী মধ্যে ' tls.key

প্রদর্শনের জন্য, তালিকাভুক্ত পদক্ষেপগুলি অনুসরণ করুন।

ধাপ 1: Yaml ফাইল তৈরি করুন

'নামে একটি ফাইল তৈরি করুন secret.yml এবং প্রদত্ত কোড পেস্ট করুন:

apiVersion : v1

তথ্য
:

tls.crt
: 'বেস 64 এনকোডেড শংসাপত্র'

tls.key
: 'base64 এনকোডেড কী'

ধরনের
: গোপন

মেটাডেটা
:

নাম
: mytls- গোপন

নামস্থান
: ডিফল্ট

টাইপ
: kubernetes.io/tls

উপরের স্নিপেটে, আপনার মূল শংসাপত্র এবং মূল মানগুলির সাথে 'tls.crt' এবং 'tls.key' কী মানগুলি প্রতিস্থাপন করুন:

ধাপ 2: একটি গোপন তৈরি করুন

এখন, 'এর মাধ্যমে গোপন ইয়ামল ফাইলটি প্রয়োগ করুন kubectl apply -f 'আদেশ:

kubectl প্রয়োগ করুন -চ secret.yml

আউটপুট দেখায় যে আমরা সফলভাবে তৈরি করেছি ' mytls- গোপন yaml ফাইল ব্যবহার করে:

দ্রষ্টব্য: TLS শংসাপত্র এবং ব্যক্তিগত কী দেখুন

base64 এনকোডেড সার্টিফিকেট দেখতে এবং yaml ফাইলে এটি ব্যবহার করতে, “চালনা করুন cat <পাথ-টু-সার্টিফিকেট ফাইল> | বেস64 গিট ব্যাশ টার্মিনালে কমান্ড:

বিড়াল mycert.crt | বেস64

বেস 64 এনকোডেড কী দেখতে, ' ব্যবহার করুন cat <পাথ-টু-কী ফাইল> | বেস64 'আদেশ:

বিড়াল mycert.key | বেস64

কুবারনেটস পড দিয়ে কীভাবে গোপন টিএলএস এম্বেড করবেন?

গোপন TSL তৈরি করার পরে, ব্যবহারকারী এটি Kubernetes পড দিয়ে এম্বেড করতে পারেন। এটি করতে, নিম্নলিখিত নির্দেশাবলী ব্যবহার করুন.

ধাপ 1: Yaml ফাইল তৈরি করুন

'নামের একটি ফাইল তৈরি করুন pod.yml ” ফাইল করুন এবং ফাইলটিতে নীচের স্নিপেটটি পেস্ট করুন:

apiVersion: v1

প্রকার: শুঁটি

মেটাডেটা:

নাম: ডেমো-পড

বিশেষ

পাত্রে:

- নাম: html-cont

ছবি: rafia098 / html-img: 1.0

env থেকে:

- গোপন রেফ:

নাম: ডেমো-সিক্রেট

উপরের স্নিপেটে:

  • ' ধরনের ” কী ব্যবহারকারী তৈরি করছে এমন Kubernetes সম্পদ নির্দিষ্ট করে।
  • ' নাম ” কী পডের নাম সেট করবে।
  • ' পাত্রে ” কী ধারক তথ্য সংরক্ষণ করবে।
  • ' নাম 'কন্টেইনারস' কী এর অধীনে 'কী কনটেইনারের নাম সেট করবে।
  • ' ইমেজ ” কী কন্টেইনারের ভিতরে অ্যাপ্লিকেশন তৈরি এবং শুরু করতে অ্যাপ্লিকেশন বা কন্টেইনার ইমেজ প্রদান করবে।
  • ' env থেকে ” কী অন্যান্য Kubernetes সম্পদ থেকে পরিবেশ পরিবর্তনশীল সেট করবে। এখানে, একটি পডে গোপন TLS এম্বেড করতে, “ গোপন রেফ ” একটি গোপন রেফারেন্স প্রদান করতে ব্যবহৃত হয়। উপরের গোপন TLS এম্বেড করতে, 'নাম' কী-তে গোপনটির নাম উল্লেখ করুন।

ধাপ 2: পড তৈরি বা আপগ্রেড করুন

এরপরে, ফোল্ডারটি খুলুন যেখানে ' pod.yml ' ফাইল তৈরি করা হয়েছে:

সিডি C:\ব্যবহারকারী\Dell\Documents\Kubernetes\Secret

' ব্যবহার করে পড তৈরি বা পুনরায় কনফিগার করতে yaml ফাইলটি প্রয়োগ করুন kubectl প্রয়োগ করুন 'আদেশ:

kubectl প্রয়োগ করুন -চ pod.yml

ধাপ 3: কুবারনেটস পড অ্যাক্সেস করুন

যাচাইকরণের জন্য, Kubernetes পডগুলি তালিকাভুক্ত করুন:

kubectl পেতে পড

এখানে, আপনি দেখতে পাচ্ছেন আমরা তৈরি করেছি ' ডেমো-পড 'সফলভাবে:

ধাপ 4: পড বর্ণনা করুন

পড গোপন TLS এম্বেড করেছে কিনা তা পরীক্ষা করতে, নীচের কমান্ডটি ব্যবহার করে পড বর্ণনা করুন:

kubectl বর্ণনা পড ডেমো-পড

নীচের আউটপুট দেখায় যে আমরা সফলভাবে পডের সাথে টিএলএস সিক্রেট এম্বেড করেছি:

আমরা কভার করেছি কিভাবে গোপন TLS তৈরি করা যায় এবং এটিকে কুবারনেটস অ্যাপ্লিকেশনের মাধ্যমে এম্বেড করা যায়।

উপসংহার

Kubernetes-এ গোপন TLS তৈরি করতে, প্রথমে, TLS স্বাক্ষরিত শংসাপত্র এবং ব্যক্তিগত কী তৈরি করুন। এর পরে, কুবারনেটস ক্লাস্টার শুরু করুন এবং চালান “ kubectl সিক্রেট তৈরি করুন –cert= –key= 'আদেশ। ব্যবহারকারীরা yaml ম্যানিফেস্ট ব্যবহার করে গোপন TLS তৈরি করতে পারে। এই পোস্টে দেখানো হয়েছে কিভাবে গোপন TLS তৈরি করা যায় এবং কিভাবে একটি চলমান অ্যাপ্লিকেশন বা পড দিয়ে গোপনটি এমবেড করা যায়।