এসএসএইচ কী কীভাবে সংরক্ষণ করবেন?


66

আমি সম্প্রতি পাসওয়ার্ডের পরিবর্তে এসএসএইচ কীগুলি ব্যবহার শুরু করেছি (অবশ্যই গিটহাবকে ধন্যবাদ), তাই দয়া করে মনে রাখবেন যে আমি এই পুরো ধারণার চেয়ে বেশ নতুন। বর্তমানে আমার কীগুলি কেবল ~ / .ssh এর আওতায় রয়েছে তবে আমি নিশ্চিত নই যে এটি একটি ভাল অনুশীলন কিনা। উদাহরণস্বরূপ, যদি আমার একাধিক মেশিন থাকে তবে আমার ব্যক্তিগত কীগুলি নকল করতে হবে যা আমার মনে হয় অযাচিত। অথবা, যদি আমার এইচডিডি কাপুটতে যায়, তবে আমি সেই কীগুলি হারাব, যা (আমার ধারণা) এছাড়াও অনাকাঙ্ক্ষিত।

সুতরাং, নিরাপদে, সুবিধামত এবং নির্ভরযোগ্যতার সাথে এসএসএইচ কী সংরক্ষণের সর্বোত্তম অনুশীলনগুলি কী?

মনে হচ্ছে একটি স্মার্টকার্ড ব্যবহার করা একটি বিকল্প ( জিপিজি / এসএসএস কী (লিনাক্স) সংরক্ষণের জন্য স্মার্টকার্ড দেখুন - আমার কী দরকার? ), এটি কি সেরা?

আপডেট: প্রশ্নের কারণ হ'ল অনেক পরিষেবা (যেমন গিটহাব, এডাব্লুএস ইসি 2) পরিষেবাটি কীভাবে ব্যবহার করতে এসএসএইচ কী সেট আপ করতে পারে তার গাইডেন্স সরবরাহ করে তবে কোনও পটভূমির সামান্যই (যেমন, আপনার যদি ইতিমধ্যে কী তৈরি করা হয় তবে কী করবেন দ্বারা ssh-keygen[1], নিরাপত্তা ব্যবস্থা সুপারিশ করা হয় কি)। এবং তথ্য স্পষ্টত গুরুত্বহীন কিনা তা স্পষ্ট নয় বা আপনি এটি 'ডিফল্টরূপে' জেনে আশা করবেন।

এই পয়েন্ট অবধি উত্তরগুলি সংক্ষিপ্ত করতে (তবে দয়া করে সেগুলি পড়ুন, এবং আপনার কিছু যোগ করতে থাকলে do দয়া করে করুন): মনে হয় এই ক্ষেত্রে ঠিক আছে যদি আপনি আপনার প্রাইভেট কীগুলি কেবল ~ / .ssh এ রেখে দেন, যতক্ষণ না আপনি এগুলি অন্য লোকদের কাছ থেকে রাখুন; তবে নিশ্চিত হয়ে নিন যে কোনও আপলোড হারালে (যা সাধারণত ক্ষেত্রে হয়) হারাতে পারলে কোনও নতুন কী আপলোড বা উত্পন্ন করার জন্য পরিষেবাটি অ্যাক্সেস করার আপনার অন্য উপায় রয়েছে।

[1] গিটহাব কীভাবে একাধিক কী পরিচালনা করতে সহায়তা দিত ।


এই লিঙ্কটি ভাঙ্গা হ'ল
কেজে মূল্য

@KJ দাম, ইন্টারনেট সংরক্ষণাগারের ধন্যবাদ Wayback মেশিন , পৃষ্ঠা এখনো তার মূল লিঙ্ক-এ আছে অনলাইনে আছে, যদিও। ২ সেপ্টেম্বর, ২০১১ পৃষ্ঠাগুলি সংরক্ষণাগারভুক্ত পৃষ্ঠার অনুলিপিটি একাধিক এসএসএইচ কীতে পাওয়া যাবে ।
চাঁদপয়েন্ট

উত্তর:


41

উদাহরণস্বরূপ, যদি আমার একাধিক মেশিন থাকে তবে আমার ব্যক্তিগত কীগুলি নকল করতে হবে যা আমার মনে হয় অযাচিত।

না, আসলে আপনি না। আপনার যদি একাধিক মেশিন থাকে তবে আপনি প্রত্যেকটির জন্য একটি পৃথক ব্যক্তিগত কী তৈরি করুন। প্রতিটি ব্যক্তিগত কী জন্য, একই প্রক্রিয়াটি ব্যবহার করে কেবল গিটহাবে সংশ্লিষ্ট পাবলিক কী আপলোড করুন।

এছাড়াও, যদি আমার এইচডিডি কাপাপটে যায়, আমি আমার প্রাইভেট কীটি হারাব, যা আমার ধারণাও অনাকাঙ্ক্ষিত।

আসলে তা না; আপনি যদি আপনার ব্যক্তিগত কী হারিয়ে ফেলেন তবে কেবল একটি নতুন তৈরি করুন এবং সংশ্লিষ্ট পাবলিক কী আপলোড করুন।

এটির জন্য মূল্যবান, আপনি ঠিক বলেছেন যে একটি ব্যক্তিগত কী নকল করা অত্যন্ত অনাকাঙ্ক্ষিত। আদর্শভাবে, একটি প্রাইভেট কী একটি ফাইলে তৈরি করা উচিত ( ~/.ssh/id_rsaউদাহরণস্বরূপ) এবং সেই ফাইলটি কখনই ছেড়ে দেওয়া উচিত নয় - অর্থাৎ এটি কখনই অনুলিপি করা, সরানো এবং বিশেষত কোনও নেটওয়ার্কের মাধ্যমে স্থানান্তরিত হওয়া উচিত নয়। (উদাহরণস্বরূপ, আমি এগুলি ব্যাকআপগুলি থেকে বাদ দিই) অসম্পূর্ণ প্রমাণীকরণের প্রোটোকলের প্রকৃতির কারণে আপনাকে কেবল নিজের ব্যক্তিগত কীটি অন্যের হাত থেকে দূরে রাখার বিষয়ে চিন্তা করতে হবে। আপনি যদি কিছুটা ওভারবোর্ডে যান এবং আপনি নিজেই এটির ট্র্যাক হারিয়ে ফেলেন তবে এটি সাধারণত কোনও বড় বিষয় নয়। (এটি অসম্পূর্ণ এনক্রিপশন ব্যক্তিগত কীগুলি, যেমন জিপিজি কীগুলি, যা আপনি সম্ভবত ধরে রাখতে চান তা নিয়ে বিভ্রান্ত হওয়ার দরকার নেই ))


14
এটি কেবলমাত্র তখনই কাজ করে যদি আপনার ব্যক্তিগত সার্ভিসগুলিতে অ্যাক্সেস দেওয়ার অন্যান্য কোনও পদ্ধতি থাকে যা ব্যক্তিগত কী ব্যবহার করে। আপনার যদি সেই ব্যাকআপ অ্যাক্সেস থাকে তবেই আপনি নতুন সর্বজনীন কী আপলোড করতে পারেন।
তিনি TREE

2
@ ট্রাই: ঠিক আছে, তবে আমার অভিজ্ঞতায় এটি এমন সার্ভারের সন্ধান পাওয়া খুব বিরল যা অ্যাক্সেসের কিছু বিকল্প পদ্ধতি সরবরাহ করে না (বা কমপক্ষে এসএসএইচ ছাড়াই কোনও অতিরিক্ত পাবলিক কী যোগ না করে)।
ডেভিড জেড

3
ধন্যবাদ, এটি অনেক কিছুই পরিষ্কার করে দেয়। সত্যই, বেসরকারী এসএসএইচ কী হারিয়ে যাওয়া কোনও সমস্যার মতো মনে হচ্ছে না, যেহেতু আমি সেখানে যে সমস্ত পরিষেবাদি ব্যবহার করছি সেখানে সর্বদা নতুন আপলোড করার জন্য কোনও পরিষেবা অ্যাক্সেস করার অন্য উপায় বলে মনে হয়।
আন্তন স্ট্রোগনফ

3
এডাব্লুএস প্রাইভেট কী ছাড়া অন্য কোনও ধরণের অ্যাক্সেস সরবরাহ করে না। একবার আপনি নিজের ব্যক্তিগত কীটি হারিয়ে ফেললে আপনাকে অ্যাক্সেস পেতে ড্রাইভটি সংযোগ বিচ্ছিন্ন করতে হবে এবং এর সাথে বোকা বানাতে হবে।
আসাদ সা Saeedদুদ্দিন

1
নোট করুন যে আপনি যদি সুরক্ষাটির অন্য স্তরটি চান তবে আপনার ব্যক্তিগত কীতে একটি পাসওয়ার্ড রাখতে পারেন।
sudo

8

আমি যুক্ত করব যে আপনি যদি উভয়টি চালানোর জন্য একই ব্যবহারকারীর অ্যাকাউন্টটি ব্যবহার করেন তবে আপনার ব্রাউজারটি দ্বারা ~ / .ssh / পঠনযোগ্য।

চেষ্টা করে দেখুন! আপনার ব্রাউজারটি আপনার হোম ডিরেক্টরিতে আপনার ব্যক্তিগত কীতে দেখান। এটা মজা.

সুতরাং আমি অন্য ব্যবহারকারীর অ্যাকাউন্টের হোম ডিরেক্টরিতে ssh-key সংরক্ষণ করার পরামর্শ দেব।

পাসফ্রেজ সুরক্ষা কীগুলিতে একটি শব্দ

  • আজকাল, এলোমেলো পাসওয়ার্ডগুলি ক্র্যাক করা অত্যন্ত দ্রুত super পরীক্ষা করে দেখুন হ্যাশ বিড়াল
    • (যদিও এলোমেলো এবং দীর্ঘ 12+ চর পাসওয়ার্ডগুলি এখনও জোর করার জন্য যথেষ্ট সময় নেয়)
    • সুতরাং আপনি যখন দীর্ঘ ভাল পাসফ্রেস ব্যবহার করেন ততক্ষণে এইএস এনক্রিপ্ট হওয়া এসএস কীগুলি অদূর ভবিষ্যতের জন্য অকাট্য। গিথুব সুপারিশগুলি দেখুন
  • সুতরাং কিছু ওয়েবসাইট আপনার কী ডাব্লু / ও জাভাস্ক্রিপ্ট অনুমান করতে পারে। এবং তারপরে কী-অফলাইনে কী-জোর করে।
  • এবং ব্রাউজারগুলি আপনার ক্লিপবোর্ড ডাব্লু / জেএসেও সন্ধান করতে পারে। সুতরাং খুব দীর্ঘ পাসফ্রেজগুলি অনুলিপি-আটকানো আপনাকে আরও পরিশীলিত জাভাস্ক্রিপ্ট আক্রমণ থেকে ঝুঁকির মধ্যে ফেলেছে।

look_at_keys.html

 9 <HTML>
10 <HEAD>
11 <TITLE>look at keys</TITLE>
12 </HEAD>
13 <FRAMESET cols="20%, 80%">
14   <FRAMESET rows="100, 200">
15       <FRAME src="/Users/yourname/.ssh/stuff.pem">
16       <FRAME src="blah.html">
17   </FRAMESET>
18   <FRAME src="contents_of_frame3.html">
19 </FRAMESET>
20 </HTML>

17
পরিষ্কার হওয়ার জন্য, কেবল ব্রাউজারটি আপনার ব্যক্তিগত কীটি পড়তে পারে যার অর্থ ব্রাউজারে চলমান কোনও ওয়েবসাইট এটি করতে পারে না।
Ajedi32

6
তবে, যদি আপনি ব্রাউজারের প্রক্রিয়াতে কোনও প্রক্রিয়া ইনজেক্ট করেন। তারপরে আপনি ব্রাউজারের নিয়ন্ত্রণও নিতে পারেন। সুতরাং এই যুক্তি পুরোপুরি বৈধ।
বিগস্যাক 10

তবে তারপরে আপনাকে সেই প্রক্রিয়াটি হ্যাক করতে হবে যা আপনার ব্রাউজারগুলির প্রসেসিং ইউনিটের প্রক্রিয়া নিবন্ধে প্রক্রিয়াগুলিকে সংযুক্ত করে।
Skid Kadda

8

এক্সপেনশন ( http://lechnology.com/software/keeagent/ ) সহ কীপাস 2 ( http://keepass.info/ ) নামে একটি খুব সুন্দর সরঞ্জাম রয়েছে

আপনি সেখানে পাসওয়ার্ড, এসএসএইচ কী এবং আরও অনেক কিছু সংরক্ষণ করতে পারেন (অফিশিয়াল কিপাস পৃষ্ঠায় অনেক বেশি দরকারী এক্সটেনশন রয়েছে)
আপনি যদি নিজের এসএসএইচ কীগুলির সাথে অটোমেটিক্যালি লগইন করতে চান তবে আপনাকে কেবল কিজেন্টের সাথে পুটি, পেজেন্ট এবং কিপাস ইনস্টল করতে হবে। আপনি যদি এটি সঠিকভাবে কনফিগার করে থাকেন তবে আপনাকে পিটিটিওয়াই, পেজেন্ট বা ফাইলজিলায় কীগুলি সেটআপ করতে হবে না।

আমি নিজে এটি ব্যবহার করি এবং এটি সম্পর্কে আমি খুব খুশি। আমার কাছে 30 টিরও বেশি ভিপিএস এবং রুট সার্ভার রয়েছে যা বিভিন্ন এসএসএইচ কীগুলির একটি নির্দিষ্ট পরিমাণের সাথে রয়েছে এবং কেবলমাত্র আমাকে কিপাস খুলতে হবে (এটি আমার প্রাথমিক পাসওয়ার্ড নিরাপদ নয়) এবং তারপরে আমার পাসফ্রেজটি কনসোলটিতে টাইপ করতে হবে।


3

আমি ব্যক্তিগত কী সংরক্ষণের পরামর্শ দিচ্ছি:

  • অফলাইন (মেঘের মধ্যে নেই)
  • একাধিক জায়গায়
  • এর সাথে সম্পর্কিত যেকোন কিছু বাদ দিয়ে যেমন, আপনার এনক্রিপ্ট করা ডেটার জন্য একটি কী, এটি ডেটা থেকে পৃথক স্থানে সংরক্ষণ করুন

আমি বলব, সেরা জায়গাটি হ'ল:

  • একটি বাহ্যিক হার্ড ড্রাইভ
  • একটি ফ্ল্যাশ কী
  • একটি কম্পিউটার ইন্টারনেটে প্লাগ ইন না

আরও ভাল, কেবল এটি মুদ্রণ করুন এবং এটি একটি ফায়ার প্রুফে নিরাপদে রাখুন।


4
সুরক্ষা / সেরা অনুশীলনগুলি ব্যবহারিকতার সাথে একত্রে কাজ করে। যদি কোনও সুরক্ষা কৌশল কোনও সিস্টেম ব্যবহারের ক্ষমতাকে বাধাগ্রস্থ করে, তবে আক্রমণকারীর চেয়ে এটি ব্যবহারকারীকে ছাড়িয়ে যাবে।
zaTricky

1

আমার একটি টার ফাইল রয়েছে যা আমার ব্যবহারকারীর ডায়ার সেটআপ রয়েছে (.bashrc, .ssh / এবং অন্যান্য কনফিগারেশন ফাইল) যা আমি একটি নিরাপদ স্থানে রেখেছি। আমি যখনই কোথাও একটি নতুন শেল অ্যাকাউন্ট পেয়েছি, আমি তার মধ্যে ট্যারি ফাইলটি আনজিপ করি।

আপনার নির্ভরযোগ্য সার্ভারগুলিতে আপনাকে কেবল নিজের ব্যক্তিগত কীগুলি রাখা উচিত, অন্যথায় আপনার কেবলমাত্র সেই সার্ভারের জন্য সার্ভারে একটি নতুন ব্যক্তিগত কী তৈরি করা উচিত এবং আপনার যে জিনিসটিতে এটি অ্যাক্সেস থাকতে চান সেগুলিতে অ্যাক্সেসের অনুমতি দিন।

ব্যক্তিগতভাবে, আমি কেবল আমার .ssh / স্টাফ সর্বত্র সর্বত্র অনুলিপি করা স্বাচ্ছন্দ্য বোধ করি (এটির অর্থ নিয়মিত এসএস কী দ্বারা তাত্ক্ষণিকভাবে এসএসএস অ্যাক্সেস পাওয়া যায়, কারণ এটি ইতিমধ্যে অনুমোদিত_কিজ ফাইলে রয়েছে)।


আমার ধারণা, এনক্রিপ্ট করা ~ / .ssh একটি ইউএসবি স্টিকের চারপাশে ঝুলানো হার্ডওয়ারের ব্যর্থতার ক্ষেত্রে নতুন কী তৈরি এবং আপলোড করার প্রয়োজনীয়তা থেকে বাঁচাতে পারে। তবে, যেহেতু খুব অল্প সংখ্যক সার্ভার রয়েছে যা আমি অ্যাক্সেস করতে এসএসএইচ কীগুলি ব্যবহার করি (এবং আমি খুব কম সংখ্যক মেশিনই সংযুক্ত করেছি), নতুন কী উত্পন্ন করার ফলে খুব বেশি ওভারহেডের কারণ হবে না।
অ্যান্টন স্ট্রোগনফ

2
এটি কোর্সের জন্য ঘোড়া এবং আপনি কীগুলি কী ব্যবহার করেন তার উপর নির্ভর করে। ইতোমধ্যে এনক্রিপ্ট করা এসএসএইচ লিঙ্কের উপরে কোনও এসএসএস প্রাইভেট কী অনুলিপি করতে আমার কোনও সমস্যা দেখছি না। তবে যদি আপনি লক্ষ্য মেশিনে বিশ্বাস না করেন এবং কার কাছে রুট অ্যাক্সেস রয়েছে তা জানেন না, আপনি যে সার্ভারটি হারাতে পারবেন না সেটিতে আপনার কোনও কিছুই রাখা উচিত নয়।
এইটবিটটনি

আপনি নিজের ব্যক্তিগত কীটি অন্য কারও সার্ভারে রাখতে চান না। সেই সার্ভারে রুট অ্যাক্সেস সহ যে কেউ আপনার ব্যক্তিগত কীটি পড়তে পারেন এবং তারপরে তারা সেই ব্যক্তিগত কীতে আপনার অ্যাক্সেস করে এমন সিস্টেমে আপনাকে ছদ্মবেশ তৈরি করতে পারে। সার্ভারে অ্যাক্সেসের জন্য আপনার জনসাধারণের কীটি রাখা উচিত। এবং আপনি যদি কোনও ব্যক্তিগত কী ডিক্রিপ্ট করার জন্য কোনও রিমোট মেশিনে ব্যবহার করে থাকেন তবে পাসফ্রেজটি এতটা সহায়তা করে বলে মনে করবেন না।
Codeguy007

আপনি ssh- এর মাধ্যমে ssh- এজেন্ট ফরোয়ার্ড করতে পারেন। এইভাবে আপনাকে সার্ভারে প্রাইভেট কী সঞ্চয় করতে হবে না বা নেট এর মাধ্যমে আপনার পাসফ্রেজ পাঠানোর দরকার নেই। stackoverflow.com/questions/12257968/...
Codeguy007

1

আপনি আপনার ssh কীগুলি একটি এনক্রিপ্ট করা পার্টিশনের ভিতরে একটি পৃথক ডিরেক্টরিতে সঞ্চয় করতে পারেন। তারপরে আপনি সেই ডিরেক্টরিটির সাথে এসএস পয়েন্টিং ব্যবহার করতে পারেন -i:

ssh -i identity_file me@example.com

সম্পূর্ণ বিবরণ ( man ssh):

-আই পরিচয়_ ফাইল

এমন একটি ফাইল নির্বাচন করে যা থেকে জনসাধারণের কী প্রমাণীকরণের জন্য পরিচয় (ব্যক্তিগত কী) পড়ে। প্রোটোকল সংস্করণ 1 এর জন্য ডিফল্ট হ'ল ~ / .ssh / পরিচয় এবং prot / .ssh / id_dsa, ~ / .ssh / id_ecdsa, ~ / .ssh / id_ed25519 এবং prot / .ssh / id_rsa প্রোটোকল সংস্করণ 2 এর জন্য এছাড়াও কনফিগারেশন ফাইলের প্রতি হোস্ট ভিত্তিতে নির্দিষ্ট করা উচিত।
একাধিক -i বিকল্প (এবং কনফিগারেশন ফাইলগুলিতে একাধিক পরিচয় নির্দিষ্ট করা) পাওয়া সম্ভব। যদি শংসাপত্র ফাইলের নির্দেশিকা দ্বারা কোনও শংসাপত্র স্পষ্টভাবে নির্দিষ্ট না করা থাকে তবে ssh পরিচয় ফাইল নামগুলিতে -cert.pub যুক্ত করে প্রাপ্ত ফাইল নাম থেকে শংসাপত্রের তথ্য লোড করার চেষ্টা করবে।

সুরক্ষার প্রতি আমার দৃষ্টিভঙ্গি হ'ল আমি তথ্যটি ব্যক্তিগত এবং সাধারণ হিসাবে ভাগ করি। আমি আমার পুরো হোম পার্টিশনটি এনক্রিপ্ট করতে চাই না, এ কারণেই আমি গোপন ফাইলগুলি (যেমন এর মতো ~/.ssh) একটি এনক্রিপ্ট করা পার্টিশনে কপি করি ।

আমি মনে করি এটি কিছু বরং দক্ষ সুরক্ষা দেয়, কারণ ম্যালওয়্যার ~ / .ssh তে কিছুই খুঁজে পাবে না এবং সম্ভবত এটি আপনার অবস্থানটি সন্ধান করতে আপনার পুরো সিস্টেম বা শেল প্রোফাইলগুলি স্ক্যান করবে না।

-F configfile 

ফাইল কনফিগার করার পথ নির্ধারণ করে।

PS আমি একটি উপনাম তৈরি করব alias ssh='ssh -i ... -F ...'এবং এটি আপনার প্রোফাইলে রাখব।

পিপিএস আমি এটি এখনও পরীক্ষা করে দেখিনি, এবং অন্যান্য প্রোগ্রাম (গিটের মতো) কীভাবে এই এসএসএস সেটিংস সহ কাজ করবে তা আমি জানি না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.