এসএসএইচ-কি নিষিদ্ধ থাকলে পাসওয়ার্ডটি ক্যাশে করুন


46

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

এখন; আমি তাদের মন পরিবর্তন করতে পারি না (চেষ্টা করেছি)।

অন্তত অস্থায়ীভাবে এসএসএইচ পাসওয়ার্ড সংরক্ষণ করার কোনও উপায় আছে, জিআইটি যেভাবে কোনও সংজ্ঞায়িত সময়ের জন্য ক্যাশে পাসওয়ার্ড সংরক্ষণ করতে পারে?


55
the computing center explicitly forbids SSH-keys because they are "insecure"- বিষয়টি সম্পর্কে আমার মতামত? একটি নতুন সার্ভার হোস্ট সন্ধান করুন, কারণ আপনার স্পষ্টতই অযোগ্য।
ম্যাট ক্লার্ক

18
@ ম্যাট: "কম্পিউটিং সেন্টার" শুনতে একাডেমিক গ্রিড সিস্টেমের মতো শোনাচ্ছে, যার মধ্যে আমার অনুমান প্রায় প্রতিযোগিতা নেই
মহাকর্ষ

27
তারা ভুল. অ্যাকাউন্টগুলির মেয়াদ শেষ হওয়ার পরে তারা সম্ভবত এসএসএস কীগুলি অক্ষম করতে ভুলে যাচ্ছিল, সুতরাং তারা সিদ্ধান্ত নিয়েছে যে ssh কীগুলিই সমস্যা।
জোশুয়া 16

10
মাধ্যাকর্ষণ ঠিক আছে। এটি একটি জাতীয় সুপার কম্পিউটার তাই আমি এটির সাথে আটকে আছি। এটির মূল্য কী, তার জন্য মেশিনটি দুর্দান্ত। জোশুয়া সম্ভবত ঠিক ঠিক আছে, তবে, ভাল, এটি কোনও ধরণের জন্য সঠিক নয়
ব্যবহারকারী 2667180

7
@ দ্য হ্যান্সিনেটর যদি কোনও কীলগার ইনস্টল থাকে তবে আপনি ইতিমধ্যে এমন বিন্দুতে আপস হয়ে গেছেন যেখানে আপনি আপনার এসএসএস সংযোগগুলি সুরক্ষিত করছেন কিনা তা বিবেচ্য নয়। publickeyপ্রমাণীকরণের অন্যান্য সুবিধাও রয়েছে । আপনি যদি passwordসার্ভারে প্রমাণীকরণ অক্ষম করেন, আপনি পাসওয়ার্ড অনুমান করার চেষ্টা করা সমস্ত আক্রমণকারীকে আটকাবেন। এবং যদি কোনও আক্রমণকারী কোনও ক্লায়েন্টের বিরুদ্ধে মিটম আক্রমণের চেষ্টা করে যা পূর্বে সার্ভারের সর্বজনীন কী সংরক্ষণ করে না, আপনি প্রমাণীকরণ publickeyব্যবহার করছিলেন তার চেয়ে আপনি আরও ভাল সুরক্ষিত password
ক্যাস্পারড

উত্তর:


63

সংযোগ পুনঃব্যবহার

এসএসএইচভি 2 একই এজেন্ট-ফরওয়ার্ডিং বা টিসিপি-ফরোয়ার্ডিংয়ের মতো মাধ্যমিকগুলি সহ ইন্টারেক্টিভ শেল, ব্যাচ কমান্ড, এসএফটিপি - একাধিক 'চ্যানেল' স্থাপন করতে একই অনুমোদনপ্রাপ্ত সংযোগকে অনুমতি দেয়। আপনার সার্ভার সম্ভবত ডিফল্টরূপে সংযোগ মাল্টিপ্লেক্সিং সমর্থন করে। (যদি আপনার প্রশাসকদের অভিযোগ থাকে তবে এটি আপনার পাসওয়ার্ড কোথাও ক্যাশে করছে না - এটি পুরো সংযোগটি ক্যাশে করছে))

ওপেনএসএইচএইচ সহ আপনার এই ব্যবহার করতে অপশন ControlMasterএবং ControlPath(-M এবং -S) রয়েছে:

  1. ব্যবহার করে একটি 'মাস্টার' এসএসএইচ সংযোগ শুরু করুন -M। (যেহেতু আপনার কনফিগারেশনে আপনার কাছে এখনও কোনও কন্ট্রোলপথ নেই, তাই আপনার এটি ব্যবহার করে কমান্ড লাইনে নির্দিষ্ট করা দরকার -SIt এটি দীর্ঘকাল বাঁচতে হবে, তাই আমি -fNব্যাকগ্রাউন্ডে নেমে যাওয়ার বিকল্পগুলি যুক্ত করব ; অন্যথায় তারা প্রযুক্তিগতভাবে alচ্ছিক)

    $ ssh foo@bar.example.com -fNMS ~/.ssh/bar.socket
    foo@bar.example.com's password:
    

    আপনি স্থানীয় শেল ফিরে এসেছেন।

  2. মাস্টারের মাধ্যমে একটি নতুন সংযোগ শুরু করুন:

    $ ssh foo@bar.example.com -S ~/.ssh/bar.socket
    

    আপনি আছেন.

  3. গিট / আরএসএনসি / এসএফটিপি-র জন্য এটি দরকারী করতে ControlPathআপনার কনফিগারেশনটি সেটআপ করতে হবে, কারণ আপনি -Sসর্বদা নির্দিষ্ট করতে পারবেন না :

    Host *
        ControlPath ~/.ssh/S.%r@%h:%p
    

আপনি এটি স্বয়ংক্রিয় করতে পারেন - সাম্প্রতিক ওপেনএসএসএইচ সংস্করণগুলিতে রয়েছে ControlPersistযা স্বয়ংক্রিয়ভাবে ব্যাকগ্রাউন্ডে একটি মাস্টার সংযোগ স্থাপন করে যদি এখনও না থাকে। এটি আপনাকে প্রথম ধাপটি এড়িয়ে যেতে এবং আপনার স্বাভাবিকভাবে যেমন ssh ব্যবহার করতে দেয়।

  1. এতে কনফিগারেশন ~/.ssh/config:

    Host *
        ControlPath ~/.ssh/S.%r@%h:%p
        ControlMaster auto
        ControlPersist 15m
    
  2. প্রথম সংযোগটি পাসওয়ার্ড চেয়েছে:

    $ ssh foo@bar.example.com
    foo@bar.example.com's password:
    [foo@bar:~]$ exit
    
  3. দ্বিতীয়টি করে না:

    $ ssh foo@bar.example.com
    [foo@bar:~]$ yay
    

মাল্টিপ্লেক্স মাস্টার নিয়ন্ত্রণ করতে (এটি বন্ধ করুন বা টিসিপি ফরোয়ার্ডগুলি কনফিগার করুন) -Oবিকল্পটি ব্যবহার করুন ।

অনুরূপ পদ্ধতি সাম্প্রতিক পিটিটিওয়াই সংস্করণ দ্বারা সমর্থিত ।


1
এই সুন্দর উত্তরের জন্য আপনাকে অনেক ধন্যবাদ। গুগল এই সমস্যায় কার্যকর ছিল না, কারণ এটি সর্বদা এসএস-কী-তে পরিণত হয় এবং আমি সঠিক কীওয়ার্ড জানতাম না। আমাকে অনেক সাহায্য করেছে!
ব্যবহারকারী 2667180

1
এটি বলার অপেক্ষা রাখে না, তবে আপনি যদি এই কনফিগারেশনটি ব্যবহার করেন তবে আপনার অ্যাকাউন্টটি সুরক্ষিত হয়েছে তা নিশ্চিত করা এবং machine মেশিনে চ্যানেল ফাইলগুলিতে অ্যাক্সেস সহ যে কেউ আপনার .ssh ফোল্ডারটি সঠিকভাবে লকড হয়ে গেছে তা আপনার পিগব্যাক করতে পারে e সংযোগ, এবং আপনি হিসাবে সার্ভার অ্যাক্সেস।
শেলস্টার

3
@ শেলস্টার: আপনার অর্থ "একই ইউআইডি সহ যে কেউ", ঠিক তেমনই এসএসএস-এজেন্টের ক্ষেত্রে। এমনকি যদি আপনি ইচ্ছাকৃতভাবে সকেট ফাইলের অনুমতিগুলি (যা ডিফল্টরূপে 0600) খোলায়, অন্য ব্যবহারকারীরা এ থেকে কেবল "মাল্টিপ্লেক্স ইউইড মিল" না পেয়ে পাবেন।
মাধ্যাকর্ষণ

3
@ শেলস্টার রুটযুক্ত কেউ একটি কীলগার ইনস্টল করতে পারে এবং যাহাই হউক না কেন রিমোট সিস্টেমে আপনার পাসওয়ার্ডটি চুরি করতে পারে, বা যে কোনও ধরণের ন্যক্কারজনক কাজ করতে পারে। আমরা যদি স্থানীয় রুট সম্পর্কে চিন্তিত থাকি তবে এটি কোনও এসএসএইচ প্রাইভেট কী সংরক্ষণের চেয়ে কম সুরক্ষিত নয়।
amalloy

1
আমি স্থানীয় রুটকে হুমকী হিসাবে বিবেচনা করি না কারণ এটি যদি কখনও হুমকিতে পরিণত হয় তবে আপনি টাস্তে যাই হোক না কেন। (সরকারী-গ্রেড গুপ্তচরবৃত্তির মতোই)) স্পষ্টতই একটি স্থানীয় রুট কেবল আপনার এসএসএস ক্লায়েন্ট এবং এসএসএল-এজেন্টকে যা চায় তার সাথে প্রতিস্থাপন করতে পারে । সমস্ত পাসওয়ার্ড এবং ব্যক্তিগত কী /root/.secret এ সঞ্চয় করবেন? অবশ্যই।
মাধ্যাকর্ষণ

19

ব্যবহার sshpass

sshpass ( github , man page ) এমন একটি সরঞ্জাম যা স্বয়ংক্রিয়ভাবে পাসওয়ার্ডকে ssh করতে দেয়। এটি ব্যবহারের নিরাপদ উপায় হ'ল:

% echo 'correct horse battery staple' > ~/.ssh/compute_password
% chmod go-rw ~/.ssh/compute_password

% sshpass -f ~/.ssh/compute_password ssh foo@host

এটি পাসওয়ার্ডটি পড়বে ~/.ssh/compute_password, অনেকটা পাসফ্রেজ ছাড়াই একটি ব্যক্তিগত কী ফাইলের মতো। আপনি করা হতে পারে sshpassএকটি ছোট শেল স্ক্রিপ্ট বা শেল ওরফে টাইপিং পূর্ণ কমান্ড যে এড়ানোর জন্য কমান্ড। দুঃখের বিষয়, আমি এর থেকে কোনও উপায় খুঁজে পাইনি ~/.ssh/config

(কমান্ড লাইনে সরাসরি পাসওয়ার্ড নির্দিষ্ট করাও সম্ভব sshpass, তবে এটি এড়ানো উচিত, যেহেতু যে কেউ করতে পারে সেই পাসওয়ার্ডটি ফাঁস করে ps)

অন্যান্য পদ্ধতির সাথে তুলনা

এই পদ্ধতির অবশ্যই সঠিকভাবে পাবলিক কী প্রমাণীকরণ সেট আপ করার চেয়ে কম সুরক্ষিত তবে আপনি সম্ভবত এটি জানেন।

এটি সংযোগ পুনরায় ব্যবহার সম্পর্কে @ গুরুতর উত্তরের চেয়েও কম সুরক্ষিত তবে এতে পাসওয়ার্ডটি ইন্টারেক্টিভভাবে প্রবেশ না করার সুবিধা রয়েছে।

আপনি @ গ্র্যাভিটির উত্তরটিকে পাসফ্রেজ এবং ব্যক্তিগত কী ক্যাচিং (অর্থাত্ ssh-agent) দিয়ে পাবকি লেখার বিকল্প হিসাবে বিবেচনা করতে পারেন । তারপরে আমার উত্তরটি ব্যক্তিগত কী ফাইলটিতে পাসফ্রেজ ছাড়াই পাবকি লেখকের বিকল্প হবে।


3
যদি কম্পিউটিং কেন্দ্রের নীতিটি "তবে কীগুলি মাইক্রো ডিস্কে সংরক্ষণ করা হয় যেখানে কেউ সেগুলি চুরি করতে পারে!" এর উপর ভিত্তি করে লেখা থাকে, তবে দেখে মনে হচ্ছে যে নীতিটি বরং পিছিয়ে গেছে fire
মাধ্যাকর্ষণ

6
@ গ্রায়েটি ওয়েল, খারাপ নীতিগুলি আরও খারাপ কাজের দিকে নিয়ে যায় ¯ \ _ (ツ) _ / ¯
মার্সেলেম

1
যদি আপনি নিজের পাসওয়ার্ডটি এলোমেলো অক্ষরের পর্যাপ্ত দীর্ঘ স্ট্রিম হিসাবে তৈরি করেন ( head -c 16 /dev/urandom | base64128 বিটের জন্য বলুন ) এবং এটি অন্য সিস্টেমে ব্যবহার না করেন তবে এটি সুরক্ষার ভিত্তিতে একটি চাবির মতো। শক্ত জোর করা যেমন শক্ত এবং এনক্রিপ্ট না করা থাকলে ফাইল থেকে ব্যবহার করা সহজ। এটি ফাইলটি পেলে খারাপ লোকের পক্ষেও যায়। পার্থক্যটি হ'ল পাসওয়ার্ডটি যেমন রয়েছে তেমন সার্ভারে প্রেরণ করা হয়েছে, তবে কীগুলির কাছে আরও ভাল গণিত রয়েছে যাতে প্রমাণ করা যায় যে আপনি সঠিক ব্যক্তিগত কীটি প্রকাশ না করেই নিজের মালিকানাধীন, এবং ব্যবহারযোগ্যতা অনুসারে, পাসওয়ার্ডযুক্ত ফাইলটি এনক্রিপ্ট করা শক্ত (কোনটি নয়) মানক সরঞ্জাম)।
ilkkachu

1

পাসওয়ার্ড ম্যানেজার ব্যবহার করুন।

কিছু পাসওয়ার্ড পরিচালকদের (উদা। কীপাসএক্সসি) এর 'অটো-টাইপ' বৈশিষ্ট্য রয়েছে। আপনি পাসওয়ার্ড ম্যানেজারে পাসওয়ার্ড সঞ্চয় করে রাখেন, ম্যানেজারটি চালনার সময় ডাটাবেসটি আনলক করুন এবং প্রতিবার sshআপনাকে আপনার পাসওয়ার্ডের জন্য অনুরোধ জানানো হয় আপনি একটি কী সংমিশ্রণটি চাপুন যা পাসওয়ার্ড ম্যানেজারকে কনসোলে আপনার দীর্ঘ পাসওয়ার্ডটি লিখতে বাধ্য করে।

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

আপনি এই তালিকা থেকে আপনার প্রিয় বাছাই করতে পারেন: https://en.wikedia.org/wiki/List_of_password_managers


3
টার্মিনাল ভিত্তিক প্রোগ্রামগুলির সাথে অটো-টাইপ বৈশিষ্ট্যটি ভালভাবে কাজ করে কিনা তা আমি নিশ্চিত নই। সনাক্তকরণটি একটি নির্দিষ্ট উইন্ডো শিরোনাম সন্ধান করবে এবং স্বয়ংক্রিয়রূপে কেপাস 2-তে থাকা অভিনব "অ্যান্টি-কীলগিং" বৈশিষ্ট্যগুলি না থাকায় ...
গ্রাভিটি

1
@ গ্র্যাটিটি যখন gnome-terminalশিরোনাম ssh somehostআমাকে পাসওয়ার্ড জিজ্ঞাসা করে তখন এটির শিরোনাম পরিবর্তন করে যাতে আপনি কোনও সমস্যা ছাড়াই শিরোনাম উইন্ডোটির সাথে মিল রাখতে পারেন। আমি 'অ্যান্টি-কীলগিং' বৈশিষ্ট্যগুলি সম্পর্কে কিছুই জানি না - আমি প্রতিদিন ভিত্তিতে টার্মিনালে কেপ্যাসএক্সসি ব্যবহার করছি এবং আমার সবচেয়ে খারাপ কাজটি হ'ল তালিকা থেকে উপযুক্ত অ্যাকাউন্টটি বেছে নেওয়া।
স্টায়ারফোম ফ্লাই 14

2
@ গ্রায়েটি অ্যান্টি-কীলগিং বৈশিষ্ট্যগুলিকে যাইহোক যাইহোক প্রতি প্রবেশ-ভিত্তিতে সক্ষম করা প্রয়োজন (ঠিক এই কারণেই অনেক প্রোগ্রাম পেস্ট সমর্থন করে না)।
বব

0

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

আরেকটি সত্যই ভাল ক্লায়েন্ট হলেন টার্মিয়াস । এটি কেবল উইন্ডোজ এবং লিনাক্স নয়, ওএসএক্স, আইওএস এবং অ্যান্ড্রয়েডকে সমর্থন করে। যদিও এটি প্রাথমিকভাবে ফোনের জন্য ডিজাইন করা হয়েছিল ডেস্কটপ সংস্করণটি আসলে বেশ ভাল।

আমি যদি ভুল না হয়ে থাকি তবে উইন্ডোজের ভেন্যর হাইপারটার্মিনালটিতে একটি এসএসএস ক্লায়েন্ট নির্মিত / ছিল তবে আমি দীর্ঘ সময় উইন্ডোজ ব্যবহার করি নি তাই আমি সম্পূর্ণ নিশ্চিত নই।

সমস্ত জিইউআই ক্লায়েন্টগুলির মধ্যে সংযোগ সেটিংস সংরক্ষণ করার ক্ষমতা অন্তর্ভুক্ত যা আপনার ব্যবহারকারী নাম এবং পাসওয়ার্ড অন্তর্ভুক্ত করে।


2
"জিইউআই-ভিত্তিক" স্বয়ংক্রিয়ভাবে বোঝায় না যে এটি আপনার পাসওয়ার্ডটি সংরক্ষণ করার অনুমতি দেবে, এটি এমন কিছু যা পুটি স্পষ্টভাবে প্রত্যাখ্যান করে । হাইপারটার্মিনালের যে সংস্করণটি উইন্ডোজের সাথে বান্ডিল হয়েছিল তা হ'ল টেলনেট-কেবল সিরিয়াল লিঙ্কগুলিতে আরও ফোকাস করেছিল। হতে পারে আপনি উইন্ডোজের সিসার্মিটের কথা ভাবছেন যাতে এসএসএইচ সমর্থন রয়েছে তবে এর সিফার সমর্থনটি এত পুরানো যে এটি সহজেই অনেকগুলি বর্তমান সার্ভারের সাথে সংযুক্ত হবে না।
মাধ্যাকর্ষণ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.