সর্বজনীন কী সর্বদা পাসওয়ার্ড এবং কীফ্রেসের জন্য জিজ্ঞাসা করে


19

আমি একটি পাবলিক কী ব্যবহার করে একটি এনএএস থেকে ওয়েব সার্ভারে এসএসএইচ চেষ্টা করছি। এনএএস ব্যবহারকারী 'রুট' এবং ওয়েবসারভার ব্যবহারকারী 'ব্যাকআপ'

আমার সমস্ত অনুমতি সঠিকভাবে সেট করা আছে এবং আমি যখন এসএসএইচ সংযোগটি ডিবাগ করি তখন আমি পাই: (ডিবাগের শেষটি কিছুটা)

debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Offering DSA public key: /root/.ssh/id_dsa.pub
debug1: Server accepts key: pkalg ssh-dss blen 433
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/root/.ssh/id_dsa.pub':

আমি কমান্ডটি ব্যবহার করছি:

ssh -v -i /root/.ssh/id_dsa.pub backup@webserver.com

এটি পাসফ্রেজের জন্য জিজ্ঞাসা করছে এটি অবশ্যই একটি ভাল লক্ষণ, তবে আমি এটি বা পাসওয়ার্ডের জন্য অনুরোধ জানাতে চাই না (যা পরে পাসফ্রেজে 'রিটার্ন' চাপলে আমি পরে আসি)

উত্তর:


24

Thats কারণ আপনার ব্যক্তিগত কী এনক্রিপ্ট করা হয়েছে ...

আপনি ssh-addনিম্নলিখিত কমান্ডটি ব্যবহার করে কী থেকে পাসফ্রেজ (এবং এটির সাথে এনক্রিপশন) ব্যবহার করে কোনও ssh এজেন্টে আপনার কী যুক্ত করতে পারেন :

ssh-keygen -p -f /root/.ssh/id_dsa -N ''


সম্পাদনা

ওহ আমি কেবল বুঝতে পেরেছি যে আপনি নিজের পাবলিক কীটি প্রমাণীকরণের জন্য ব্যবহার করার চেষ্টা করছেন ... আপনি সেখানে ব্যক্তিগত কীটি ব্যবহার করতে চান:

ssh -v -i /root/.ssh/id_dsa backup@webserver.com

এবং কেবল একেবারে নিশ্চিত করার জন্য, ফাইলটির সামগ্রীটি ওয়েব সার্ভারে id_dsa.pubপ্রবেশ ~backup/.ssh/authorized_keysকরে। এটি স্বয়ংক্রিয়ভাবে করতে আপনি নীচের কমান্ডটি ব্যবহার করতে পারেন

ssh-copy-id -i /root/.ssh/id_rsa.pub backup@webserver.com

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

আমার আপডেট হওয়া উত্তরটি চেক করুন ... সম্ভবত এটি সাহায্য করে ...
অ্যান্ডেরেলার

আপনাকে ধন্যবাদ, মনে হচ্ছে আমি সম্ভবত পাবলিক কীকে জনসাধারণের কীয়ের সাথে তুলনা করার চেষ্টা করছিলাম ... আমাকে পাসফ্রেজ অপসারণ করার দরকার নেই
অ্যান্ড্রু অ্যাটকিনসন

সত্য যে আমি আমার পাব প্রমাণীকরণ করতে ব্যবহার করছিলাম (একটি মূ mistake় ভুল) বিষয়টি ছিল। ধন্যবাদ!
কিউস

6

আমার কাছে যখন প্রাইভেট কীটি ছিল ওপেনএসএসএইচ ফর্ম্যাটে ছিল না তখন এটি আমার কাছে হয়েছিল।

আমি মূলত পুটিজেন ব্যবহার করে উইন্ডোতে আমার কী তৈরি করেছি এবং এই একই জিনিসটি দিয়ে বাউন্স হয়ে যাচ্ছি।

আমি পুটিজিনে কীটি লোড করে এবং এটি ওপেনএসএইচ ফর্ম্যাটে পেতে "রূপান্তরগুলি" ক্লিক করে এটি ঠিক করতে সক্ষম হয়েছি।


2

কিছু জিনিস আছে।

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

ssh-keygen -t {dsa | RSSa} -b {1024 | 2048 | 4096 C -C "alচ্ছিক মন্তব্য" -f id_examplekey

কোঁকড়ানো বন্ধনীগুলিতে আইটেমগুলি হ'ল বিকল্পগুলি, টাইপ এবং বিট আকার (স্পষ্টত: dsa> rsa, 4096> 1024 - "সুরক্ষা" এর শর্তাবলী)।

তারপরে আপনাকে authorized_keysএবং authorized_keys2ফাইলগুলিতে পাবলিক কী (.pub) যুক্ত করতে হবে (.pub স্থানীয় ব্যবহারের জন্য এটি সাধারণ ধারণা, যদিও এটির তুলনা করার উদ্দেশ্যে) এটি সার্ভারের .sshফোল্ডারে।

$ বিড়াল id_examplekey.pub >> অনুমোদিত_ কুকি {, 2}

তারপরে আপনার শেষে, আপনার নিশ্চিত হওয়া উচিত যে কী অনুমতিগুলি রয়েছে chmod 600 id_exampleএবং সেগুলি টাইপ করা সমস্ত হ্রাস করতে, আপনি কনফিগার ফাইলটি সেটআপ করতে পারেন: ~/.ssh/configআপনার স্থানীয় বাক্সে (এটি একটি কঙ্কাল, আপনি এটি একটি টনটি কাস্টমাইজ করতে পারেন):

Host example.com
    User WHATEVERNAME
    IdentityFile ~/.ssh/id_examplekey

তবে ডিবাগের যে বিভাগটি পড়ে: ডিবাগ 1: সার্ভার কী গ্রহণ করে: পকলগ এসএসএস-ডিএসএস ব্লেন 433 এর অর্থ কী এই কী গ্রহণ করা হয়েছে তা নয়? আমি আবার কোনও পাসফ্রেজ না দিয়ে আবার তৈরি করেছি, এখনও কি একই? - আমি ধারনা বাইরে থাকি? আপনাকে ধন্যবাদ
অ্যান্ড্রু অ্যাটকিনসন

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

আপনি লিখুন "প্রাথমিকভাবে, যদি কেইওয়াই একটি পাসওয়ার্ড চাইছে, কীটি এটি দিয়ে তৈরি করা হয়েছিল" "<- হ্যাঁ, যদিও আমি সবেমাত্র প্রশ্নবিদের কী পরীক্ষা করেছিলাম, তাই, আমি পাবলিক কী দিয়ে করছিলাম $ ssh user@comp -i ~/.ssh/id_rsa.pubএবং এটি ভুল অনুমতি এবং ব্যক্তিগত বলেছে কী উপেক্ষা করা হবে .. সুতরাং আমি id_rsa এর মতো to০০ তে অনুমতি পরিবর্তন করেছি এবং এটি একটি পাসফ্রেজ চেয়েছে। সুতরাং, প্রকৃতপক্ষে, এটির পরে যদি আপনি পাবলিক কী নির্দিষ্ট করে থাকেন তবে একটি পাসফ্রেজ জিজ্ঞাসা করবে, যদিও পাবলিক কী এবং প্রাইভেট কী উভয়ই একটি পাসফ্রেজ দিয়ে তৈরি করা হয়নি
বারলপ

2

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

  • Ssh- এজেন্ট শুরু করুন: $ ssh-agent bash
  • কী পরিচালকের কাছে আদর্শ পরিচয় কী যুক্ত করুন: $ ssh-add
  • আপনি যদি একটি আলাদা কী যুক্ত করতে চান তবে: $ ssh-add /location/of/key

যে কোনও সময় পরিদর্শন করতে, বর্তমানে লোড হওয়া কীগুলির তালিকা:

$ ssh-add -l

আরও বিস্তারিত এই লিঙ্ক থেকে প্রাপ্ত করা যেতে পারে


1

চেষ্টা https://wiki.gentoo.org/wiki/Keychain

এটি একটি মোড়কের উপর ssh-agentএবংssh-add

পেশাদাররা: যতক্ষণ আপনি রিবুট করবেন না ততক্ষণ বারবার পাসওয়ার্ড ইনপুট করার দরকার নেই। ব্যবহার করা যেতে পারে crontab

এটি সাহায্য হতে পারে।


1

এটি হতে পারে কারণ আপনি ডিএসএ পাবিকে ব্যবহার করছেন যা ওপেনএসএইচ ভি 7 এ ডিফল্টরূপে অক্ষম রয়েছে।

যদি আপনি কী জুটিটি পরিবর্তন করতে না পারেন তবে সম্ভাব্য কাজটি হ'ল ওয়েবএসভার ডটকম-এ আপনার এসএসএইচ ডেমনকে /etc/ssh/sshd_configনিম্নলিখিত লাইনটি আপডেট করে বা সমতুল্য করে সেই মূল প্রকারগুলি গ্রহণ করতে বলা হবে

PubkeyAcceptedKeyTypes=+ssh-dss

এবং তারপরে পরিষেবাটি পুনরায় চালু করা হচ্ছে

/etc/init.d/ssh restart                     # or equivalent

0

ম্যাক ওএসএক্স-এ আপনি আপনার ব্যক্তিগত কীটি কমান্ডটি ব্যবহার করে কীচেইনে যুক্ত করতে পারেন:

ssh-add -K /path/to/private_key

যদি আপনার প্রাইভেট কীটি ~ / .ssh এ সঞ্চিত থাকে এবং নাম রাখা হয়েছে id_rsa:

ssh-add -K ~/.ssh/id_rsa

তারপরে আপনাকে আপনার পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে, যা আপনার কীচেইনে সংরক্ষণ করা হবে।


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