এই প্রোটোকলে, ব্যবহারকারীদের প্রমাণীকরণ করতে হবে। তারা পাসওয়ার্ড, ব্যক্তিগত RSA কী সম্বলিত ফাইল, হার্ডওয়্যার ডিভাইস যেমন লেজার ন্যানো এস এবং লেজার ন্যানো এক্স ইত্যাদির মাধ্যমে এটি করতে পারে।
কিছু প্রমাণীকরণের উপায় অন্যদের চেয়ে বেশি সুরক্ষিত: একটি ব্যক্তিগত কী সংরক্ষণ করার জন্য ডিজাইন করা একটি হার্ডওয়্যার ডিভাইস ব্যবহার করে এটি বের করা সম্ভব না করেই এটি একটি ফাইলে ব্যক্তিগত কী সংরক্ষণ করার চেয়ে বেশি নিরাপদ। দুর্ভাগ্যবশত সবচেয়ে নিরাপদ বেশী ব্যবহার করা আরো বেদনাদায়ক. যে ব্যবহারকারীদের একটি ডিভাইসে তাদের চাবি আছে তাদের সাথে ডিভাইসটি বহন করতে হবে, প্রতিবার SSH সেশন শুরু করার সময় তাদের পিন কোড টাইপ করতে হবে, ইত্যাদি প্রবেশাধিকার নিরাপত্তা অগ্রাধিকার নয়.
সুতরাং প্রশ্ন হল: ব্যবহারকারীর অভিজ্ঞতা পরিবর্তন না করেই কি একটি ফাইলের (যা কিছু ম্যালওয়্যার দ্বারা চুরি করা যেতে পারে) তুলনায় আরো নিরাপদে প্রমাণীকরণ উপাদান সংরক্ষণ করা সম্ভব?
এবং উত্তর হল: হ্যাঁ, একটি TPM ব্যবহার করে!
কিছু ইতিহাস
বেশ কিছু সময়ের জন্য, কম্পিউটার সরাসরি একটি নিরাপত্তা চিপ এম্বেড করতে সক্ষম হয়েছে। ট্রাস্টেড প্ল্যাটফর্ম মডিউল (TPM) নামের এই চিপটি পাবলিক-কী ক্রিপ্টোগ্রাফিতে ব্যবহৃত প্রাইভেট কীগুলিকে রক্ষা করার ক্ষমতা সহ অনেক বৈশিষ্ট্য প্রদান করে।
যেহেতু এটি কম্পিউটারে এম্বেড করা আছে, এটি ব্যবহার করার জন্য কম্পিউটারে একটি ডিভাইস প্লাগ করার প্রয়োজন নেই। তাই এটি একটি হার্ডওয়্যার ডিভাইসের তুলনায় কম সুরক্ষিত হিসাবে বিবেচিত হয় যা কম্পিউটার থেকে আলাদা জায়গায় সংরক্ষণ করা যেতে পারে (এটি এই নীতিটি কার্যকর করতে সক্ষম করে যে ডিভাইসটি কম্পিউটারের সাথে সংযুক্ত না থাকলেও, কোনও ম্যালওয়্যার এতে সঞ্চিত গোপনীয়তা ব্যবহার করতে পারে না)।
তাই TPM "সর্বোত্তম নিরাপত্তা" নয়, কিন্তু এটি এখনও ফাইল ব্যবহার করার চেয়ে অনেক বেশি নিরাপদ $HOME/.ssh/id_rsa
ব্যক্তিগত কী সংরক্ষণ করতে।
লিনাক্সে OpenSSH এর সাথে TPM কিভাবে ব্যবহার করা যেতে পারে? নামে একটি প্রকল্প নিয়ে tpm2-pkcs11
, সহ বহু বছর ধরে অনেক ওয়েবসাইটে উপলব্ধ নির্দেশাবলী অনুসরণ করুন এর কোড সংগ্রহস্থল থেকে অফিসিয়াল ডকুমেন্টেশন.
এখন, খবর কি? এই সফ্টওয়্যারটি এখন অবশেষে উবুন্টু এবং ডেবিয়ানে প্যাকেজ করা হয়েছে, যা এটি বেশিরভাগ লিনাক্স ব্যবহারকারীদের জন্য উপলব্ধ করে!
আরও স্পষ্টভাবে এখানে একটি টাইমলাইন রয়েছে:
- 2014 সালে, TPM 2.0-এর প্রধান স্পেসিফিকেশন প্রকাশিত হয়েছিল। সফ্টওয়্যার থেকে একটি TPM-এর সাথে ইন্টারঅ্যাক্ট করার জন্য, একটি প্রমিতকরণের প্রচেষ্টা ছিল এবং দুটি অসামঞ্জস্যপূর্ণ সফ্টওয়্যার স্ট্যাক তৈরি করা হয়েছিল: একটি বিশ্বস্ত কম্পিউটিং গ্রুপ (TCG), যাকে বলা হয় TPM সফ্টওয়্যার স্ট্যাক (টিএসএস), এবং আইবিএম থেকেও ডাকা হয়েছে TPM সফ্টওয়্যার স্ট্যাক.
- 2018 সালে, প্রকল্প
tpm2-pkcs11
TCG-এর TSS ব্যবহার করে একটি TPM 11-এ একটি PKCS#2.0 ইন্টারফেস প্রদান করার জন্য তৈরি করা হয়েছিল। PKCS#11 একটি স্ট্যান্ডার্ড যা একটি অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস (API) নামক সংজ্ঞায়িত করে ক্রিপ্টোকি ক্রিপ্টোগ্রাফিক কী সংরক্ষণ করার জন্য টোকেন ব্যবহার করতে। যেহেতু OpenSSH ব্যবহারকারীর প্রমাণীকরণের জন্য একটি PKCS#11 ইন্টারফেস ব্যবহার করে সমর্থিত, এটি SSH প্রমাণীকরণের জন্য ব্যবহৃত কীগুলি সংরক্ষণ করতে TPM ব্যবহার করে সক্ষম করে। - ফেব্রুয়ারি 2019 সালে
tpm2-pkcs11
যোগ করা হয়েছিল ফেডোরা 29. - 2019 সালের সেপ্টেম্বরে, CentOS 8 এই প্যাকেজের সাথে মুক্তি পায়।
- এপ্রিল 2020,
tpm2-pkcs11
যোগ করা হয়েছিল ডেবিয়ান সাইড. দুর্ভাগ্যবশত এটি প্রোগ্রাম ধারণ করেনিtpm2_ptool
যা সহজে কী তৈরি করতে প্রয়োজনীয়। এই সমস্যা রিপোর্ট করা হয়েছে ডেবিয়ান বাগ #968310. - 2021 সালের জানুয়ারিতে, ডেবিয়ানের প্যাকেজ ছিল স্থায়ী (এবং রক্ষণাবেক্ষণকারী আমার সাহায্য স্বীকার করেছেন!)
- এপ্রিল 2021 এ, উবুন্টু 21.04 হিরসুট হিপ্পো সঙ্গে মুক্তি পায় স্থির প্যাকেজ.
- 2021 সালের আগস্টে, ডেবিয়ান 11 ডার্ট সঙ্গে মুক্তি পায় স্থির প্যাকেজ
এখন tpm2-pkcs11
ডেবিয়ান, উবুন্টু এবং তালিকাভুক্ত অন্যান্য লিনাক্স ডিস্ট্রিবিউশনে উপলব্ধ রিপোলজি.
tpm2-pkcs11 ব্যবহার করা হচ্ছে
ডেবিয়ান 11-এ, টিপিএম দ্বারা নিরাপদে সংরক্ষিত একটি নতুন এসএসএইচ কী তৈরি এবং ব্যবহার করার পদক্ষেপগুলি এখানে রয়েছে:
- কমান্ড ইনস্টল করুন
tpm2_ptool
এবং লাইব্রেরিlibtpm2_pkcs11.so.1
, যা দুটি প্যাকেজ দ্বারা সরবরাহ করা হয়:
2. পরীক্ষা করুন যে সিস্টেমটি একটি TPM 2.0 ব্যবহার করতে পারে৷ নিম্নলিখিত চেকগুলির মধ্যে একটি ব্যর্থ হলে, এর অর্থ হতে পারে যে সিস্টেমে একটি TPM নেই, বা একটি TPM 1.2 আছে, বা একটি TPM 2.0 আছে যা BIOS সেটিংসে নিষ্ক্রিয় করা হয়েছে:
3. বর্তমান ব্যবহারকারীকে গ্রুপে যুক্ত করুন যারা TPM ডিভাইস অ্যাক্সেস করতে পারে /dev/tpmrm0
. ডেবিয়ান এবং উবুন্টুতে, ব্যবহারকারীদের নামের একটি গ্রুপের অন্তর্ভুক্ত হতে হবে tss
(কনফিগারেশনের জন্য ধন্যবাদ tpm-udev
প্যাকেজ) নিম্নলিখিত কমান্ডটি বর্তমান ব্যবহারকারীকে এই গ্রুপে যুক্ত করে:
একটি ব্যবহারকারীর দোকান শুরু করুন, একটি পাসওয়ার্ড দ্বারা সুরক্ষিত এবং একটি SOPIN এবং একটি কী তৈরি করুন, উদাহরণস্বরূপ "NIST P-256" ("secp256r1" নামেও পরিচিত) নামক বক্ররেখার একটি উপবৃত্তাকার কার্ভ কী:
4. সংক্ষিপ্ত রূপ SOPIN মানে নিরাপত্তা কর্মকর্তার ব্যক্তিগত সনাক্তকরণ নম্বর এবং এটি PKCS#11 এর স্পেসিফিকেশন থেকে একটি ধারণা। সাধারণ ব্যবহারের ক্ষেত্রে, এটি একটি "পুনরুদ্ধার পাসওয়ার্ড" হিসাবে দেখা যেতে পারে যা পাসওয়ার্ডটি পরিবর্তন করতে সক্ষম করে যখন এটি হারিয়ে যায়।
5. এই নতুন কীটির সর্বজনীন কী প্রদর্শন করুন:
6. একটি সার্ভারে নতুন সর্বজনীন কী কনফিগার করুন, উদাহরণস্বরূপ এটি লিখে $HOME/.ssh/authorized_keys
অথবা GitHub-এর অ্যাকাউন্ট সেটিংসে বা অন্য কোনো স্থানে যেখানে SSH পাবলিক কী ব্যবহার করা হয়।
7. SSH ক্লায়েন্ট ব্যবহার করার জন্য কনফিগার করুন tpm2-pkcs11
সার্ভারের সাথে সংযোগ করতে, উদাহরণস্বরূপ এটি লিখে $HOME/.ssh/config
(মক্কেলের পক্ষে):
সার্ভারের সাথে সংযোগ করুন (NB পূর্ববর্তী ধাপটি এড়িয়ে যেতে পারে:
ভবিষ্যতে কাজ
পূর্ববর্তী বিভাগে উপস্থাপন করা হয়েছে কিভাবে TPM-এ একটি নতুন কী তৈরি করা যায়। যদিও এটি এসএসএইচ প্রমাণীকরণকে সুরক্ষিত করতে একটি TPM ব্যবহার করতে সক্ষম করে, সেখানে দুটি বৈশিষ্ট্য রয়েছে যা ব্যক্তিগত কী সংরক্ষণ করার জন্য ফাইলগুলি ব্যবহার করার জন্য এটিকে একটি বাস্তব বিকল্প হিসাবে তৈরি করতে প্রয়োজন:
- বৈশিষ্ট্য #1: নতুন তৈরি করার পরিবর্তে একটি TPM-এ বিদ্যমান SSH কীগুলি আমদানি করা (যা TPM সঞ্চয়স্থানে মসৃণ রূপান্তর সক্ষম করে, কীগুলির ব্যাক আপ করা, কম্পিউটারটি নষ্ট বা হারিয়ে গেলে ইত্যাদি)।
- বৈশিষ্ট্য #2: পাসওয়ার্ড ছাড়াই SSH কী ব্যবহার করা, যেমন অরক্ষিত ব্যক্তিগত কী ফাইল (এই বৈশিষ্ট্যটি কী ফাইলের চেয়ে বেশি সুরক্ষিত কারণ সুরক্ষিত কী টিপিএম থেকে বের করা যায় না)।
আমি উভয় বৈশিষ্ট্য বাস্তবায়ন করেছি tpm2-pkcs11
এবং সেগুলিকে পুল রিকোয়েস্টে জমা দেন #681 এবং #695. বৈশিষ্ট্য #1 এছাড়াও মে মাসে সাপ্তাহিক অনলাইন কলের সময় উপস্থাপন করা হয়েছিল tpm.dev সম্প্রদায় এবং রেকর্ডিং পাওয়া যায় https://developers.tpm.dev/posts/14389750.
সুতরাং উভয় বৈশিষ্ট্য ভবিষ্যতের রিলিজে উপলব্ধ হওয়ার সম্ভাবনা রয়েছে tpm2-pkcs11
.
যাইহোক, কৌতূহলী পাঠকদের জন্য যারা এর অভ্যন্তরীণ বিষয়গুলি বুঝতে চান tpm2-pkcs11
, আমি SSTIC 2021 সম্মেলনে তাদের সম্পর্কে একটি নিবন্ধ প্রকাশ করেছি, যার নাম TPM 2.0 দিয়ে SSH প্রমাণীকরণ রক্ষা করা (ইংরেজিতে নিবন্ধ, ফ্রেঞ্চে উপস্থাপনা). তাছাড়া যে পাঠকরা একটি বাস্তব TPM স্পর্শ না করে কিছু চেষ্টা করতে চান তারা এই নিবন্ধের "একটি TPM 2.0 অনুকরণ" বিভাগে আগ্রহী হতে পারেন।
(চিত্রণ: রেনার নাপার, ফ্রি আর্ট লাইসেন্স)
- এসইও চালিত বিষয়বস্তু এবং পিআর বিতরণ। আজই পরিবর্ধিত পান।
- প্লেটোএআইস্ট্রিম। Web3 ডেটা ইন্টেলিজেন্স। জ্ঞান প্রসারিত. এখানে প্রবেশ করুন.
- অ্যাড্রিয়েন অ্যাশলির সাথে ভবিষ্যত মিন্টিং। এখানে প্রবেশ করুন.
- PREIPO® এর সাথে PRE-IPO কোম্পানিতে শেয়ার কিনুন এবং বিক্রি করুন। এখানে প্রবেশ করুন.
- উত্স: https://www.ledger.com/blog/ssh-with-tpm
- : আছে
- : হয়
- :না
- :কোথায়
- $ ইউপি
- 1
- 11
- 13
- 14
- 15%
- 2014
- 2018
- 2019
- 2020
- 2021
- 30
- 8
- 80
- a
- ক্ষমতা
- সক্ষম
- সম্পর্কে
- প্রবেশ
- হিসাব
- স্বীকৃত
- যোগ
- যোগ
- যোগ করে
- উকিল
- এছাড়াও
- বিকল্প
- an
- এবং
- উত্তর
- কোন
- API
- আবেদন
- এপ্রিল
- রয়েছি
- শিল্প
- প্রবন্ধ
- AS
- At
- আগস্ট
- অনুমোদিত
- প্রমাণীকরণ
- সহজলভ্য
- সমর্থন
- BE
- পরিণত
- হয়েছে
- উভয়
- ভাঙা
- নম
- কিন্তু
- by
- কল
- CAN
- না পারেন
- বহন
- কেস
- মামলা
- সিজিআই
- পরিবর্তন
- চেক
- চেক
- চিপ
- মক্কেল
- কোড
- কম্পিউটার
- কম্পিউটার
- কম্পিউটিং
- ধারণা
- সম্মেলন
- কনফিগারেশন
- সংযোগ করা
- সংযুক্ত
- বিবেচিত
- পারা
- সৃষ্টি
- নির্মিত
- তৈরি করা হচ্ছে
- ক্রিপ্টোগ্রাফিক
- ক্রিপ্টোগ্রাফি
- অদ্ভুত
- বর্তমান
- বাঁক
- সংজ্ঞায়িত
- পরিকল্পিত
- দেব
- যন্ত্র
- ডিভাইস
- DID
- বিভিন্ন
- কঠিন
- সরাসরি
- অক্ষম
- প্রদর্শন
- ডিস্ট্রিবিউশন
- do
- ডকুমেন্টেশন
- না
- সময়
- সহজে
- প্রচেষ্টা
- উপবৃত্তাকার
- বসান
- এম্বেড করা
- সক্ষম করা
- সম্ভব
- প্রয়োগ
- ইংরেজি
- ইত্যাদি
- কখনো
- প্রতি
- উদাহরণ
- বিদ্যমান
- অভিজ্ঞতা
- নির্যাস
- ব্যর্থ
- বৈশিষ্ট্য
- বৈশিষ্ট্য
- ফেব্রুয়ারি
- ফাইল
- নথি পত্র
- পরিশেষে
- স্থায়ী
- অনুসরণ
- জন্য
- বিনামূল্যে
- ফরাসি
- থেকে
- ভবিষ্যৎ
- উত্পাদন করা
- GitHub
- গ্রুপ
- হার্ডওয়্যারের
- হার্ডওয়্যার ডিভাইস
- হার্ডওয়্যার ডিভাইস
- আছে
- এখানে
- কিভাবে
- কিভাবে
- এইচটিএমএল
- HTTP
- HTTPS দ্বারা
- i
- আইবিএম
- শনাক্ত
- if
- বাস্তবায়িত
- আমদানি
- in
- সুদ্ধ
- বেমানান
- আরম্ভ করা
- পরিবর্তে
- নির্দেশাবলী
- গর্ভনাটিকা
- আগ্রহী
- ইন্টারফেস
- মধ্যে
- সমস্যা
- IT
- এর
- জানুয়ারী
- জানুয়ারী 2021
- JPG
- চাবি
- কী
- পরিচিত
- খতিয়ান
- লেজার ন্যানো
- লেজার ন্যানো S
- লেজার ন্যানো এক্স
- কম
- মত
- সম্ভবত
- লিনাক্স
- তালিকাভুক্ত
- অবস্থান
- নষ্ট
- প্রধান
- করা
- তৈরি করে
- মেকিং
- ম্যালওয়্যার
- অনেক
- উপাদান
- সর্বোচ্চ প্রস্থ
- মে..
- গড়
- মানে
- মডিউল
- অধিক
- পরন্তু
- সেতু
- অনেক
- my
- নামে
- ন্যানো
- প্রয়োজনীয়
- প্রয়োজন
- প্রয়োজন
- নতুন
- সংবাদ
- না।
- এখন
- of
- অফিসার
- on
- ONE
- ওগুলো
- অনলাইন
- or
- ক্রম
- অন্যান্য
- অন্যরা
- প্যাকেজ
- গাঁটবন্দী
- প্যাকেজ
- বেদনাদায়ক
- পাসওয়ার্ড
- পাসওয়ার্ড
- সম্পাদন করা
- ব্যক্তিগত
- জায়গা
- মাচা
- Plato
- প্লেটো ডেটা ইন্টেলিজেন্স
- প্লেটোডাটা
- প্লাগ
- সম্ভব
- অবিকল
- উপহার
- উপস্থাপন
- আগে
- নীতি
- অগ্রাধিকার
- ব্যক্তিগত
- ব্যক্তিগত কী
- ব্যক্তিগত কী
- প্রোগ্রামিং
- প্রকল্প
- রক্ষা করা
- রক্ষিত
- রক্ষা
- প্রোটোকল
- প্রদান
- প্রদত্ত
- উপলব্ধ
- প্রকাশ্য
- পাবলিক কী
- সর্বজনীন কী
- প্রকাশিত
- প্রশ্ন
- পাঠকদের
- বাস্তব
- রেকর্ডিং
- মুক্তি
- মুক্ত
- রিপোর্ট
- প্রয়োজনীয়
- আরএসএ
- s
- অধ্যায়
- নিরাপদ
- নিরাপদে
- নিরাপত্তা
- দেখা
- সেপ্টেম্বর
- সেশন
- সেটিংস
- বিভিন্ন
- পাশ
- সহজ
- So
- সফটওয়্যার
- কিছু
- সবিস্তার বিবরণী
- স্পেসিফিকেশনের
- স্ট্যাক
- মান
- ধাপ
- প্রারম্ভিক ব্যবহারের নির্দেশাবলী
- এখনো
- অপহৃত
- স্টোরেজ
- দোকান
- সঞ্চিত
- পেশ
- এমন
- সমর্থিত
- পদ্ধতি
- চেয়ে
- ধন্যবাদ
- যে
- সার্জারির
- দ্য উইকলি
- তাদের
- তাহাদিগকে
- সেখানে।
- অতএব
- তারা
- কিছু
- এই
- সময়
- টাইমলাইনে
- থেকে
- টোকেন
- স্পর্শ
- রূপান্তর
- বিশ্বস্ত
- চেষ্টা
- দুই
- আদর্শ
- উবুন্টু
- বোঝা
- দুর্ভাগ্যবশত
- ব্যবহার
- ব্যবহৃত
- ব্যবহারকারী
- ব্যবহারকারীর অভিজ্ঞতা
- ব্যবহারকারী
- ব্যবহার
- প্রয়োজন
- ছিল
- উপায়..
- উপায়
- ওয়েবসাইট
- সাপ্তাহিক
- ছিল
- কখন
- যে
- যখন
- হু
- সঙ্গে
- ছাড়া
- লেখা
- X
- বছর
- হাঁ
- zephyrnet