কীভাবে "সাইন_স্যান্ড_সেন্ড_পুবকি: সাইন ইন ব্যর্থ: এজেন্ট অপারেশন অস্বীকার করেছে" সমাধান করবেন?


122

এসএসএইচ কী দিয়ে একটি নতুন ডিজিটাল মহাসাগর বিন্দু কনফিগার করছে। আমি যখন এটি চালাই আমি ssh-copy-idতা পাই:

ssh-copy-id user@012.345.67.89
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
sign_and_send_pubkey: signing failed: agent refused operation
user@012.345.67.89's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'user@012.345.67.89'"
and check to make sure that only the key(s) you wanted were added.

যাইহোক, আমি যখন পরে প্রবেশ করার চেষ্টা করি তখন এটি ঘটে:

ssh user@012.345.67.89
sign_and_send_pubkey: signing failed: agent refused operation
user@012.345.67.89's password: 

পাসওয়ার্ডটি প্রবেশ করার পরে, আমি ঠিক ঠিক লগইন করেছি, তবে এটি অবশ্যই প্রথম স্থানে এসএসএইচ কী তৈরির উদ্দেশ্যকে পরাস্ত করে। আমি ssh-এজেন্ট সার্ভার-সাইডটি একবার দেখে নেওয়ার সিদ্ধান্ত নিয়েছি এবং আমি যা পাই তা এখানে:

user@012.345.67.89:~# eval `ssh-agent -s`
Agent pid 5715
user@012.345.67.89:~# ssh-add -l
The agent has no identities.

ব্যবহারকারী / .ssh / अधिकृत_keys একটি ssh-RSSa কী এন্ট্রিও ধারণ করে, তবে find -name "keynamehere"কিছুই দেয় না।

উত্তর:


217

চালান ssh-addক্লায়েন্ট মেশিনে, যে এজেন্টকে SSH- কি যোগ হবে।

ssh-add -l(ক্লায়েন্টের আবার) সাথে নিশ্চিত করুন যে এটি সত্যই যুক্ত হয়েছিল।


8
গীজ, এটি ঠিক করার চেষ্টা করে দুই ঘন্টা ব্যয় করেছে এবং এটিই ছিল! ফিক্সড বিটবাকেট এবং অ্যাবিয়া এসএসএস সংযোগগুলি
রনি

20
আমি gpg-agentএসএসএইচ কার্যকারিতার জন্য ব্যবহার করায় এটি এখানে পুরোপুরি ঠিক করে নি । আমার ইতিমধ্যে একটি enable-ssh-supportইন gpg-agent.confতবু একই ত্রুটি বার্তা রয়েছে। : আমি তালিকা মেইলিং এই চালানোর উপর পাওয়া যায় gpg-connect-agent updatestartuptty /bye: bugs.debian.org/cgi-bin/bugreport.cgi?bug=835394
রোল্যান্ড

4
আমাকে কেবল জিপিজি-এজেন্টকে মেরে ফেলতে হবে এবং তারপরে আবার চালাতে হবে।
সাবিন

4
আপনি যখন একটি নতুন এসএসএইচ কী তৈরি করেন তখন নতুন ব্যক্তিগত কী সম্পর্কে সচেতন হওয়ার ssh-addজন্য অবশ্যই অনুরোধ করা উচিত ssh-agent(প্রতি linux.die.net/man/1/ssh-agent )।
অ্যালেক্স

অসাধারণ! আমি আমার এসএসএইচ কীটি পুনরায় তৈরি করেছি এবং এটি ঘটতে শুরু করে। ssh-addএটি কাজ করার পরে ! ধন্যবাদ
hbobenicio

75

ফেডোরাকে 26 থেকে 28 আপগ্রেড করার পরে আমি একই সমস্যার মুখোমুখি হয়েছি। এবং নিম্নলিখিত লগ অনুপস্থিত ছিল

/var/log/secure
/var/log/messages

সমস্যা:

antop@localmachine  ~  ssh root@ocp1.example.com
sign_and_send_pubkey: signing failed: agent refused operation
root@ocp1.example.com's password:

ত্রুটি বার্তা প্রকৃত সমস্যা নির্দেশ করছে না। দ্বারা সমাধান করা হয়েছে

chmod 700 ~/.ssh
chmod 600 ~/.ssh/*

আমার .ssh/প্রয়োজনীয় অনুমতি ছিল না কারণ আমি এটিকে নিজে নিজে তৈরি করেছিলাম।
ব্রেন্ট ব্র্যাডবার্ন

4
দেখে মনে হচ্ছে যে কয়েকটি সংস্করণ আপনার কীগুলি অন্য ব্যবহারকারীদের কাছে দৃশ্যমান হওয়ার অনুমতি দেয় না। ধন্যবাদ!
অ্যালান ocallaghan

যদি .ssh / * ফাইলগুলি একই ব্যবহারকারীর দ্বারা তৈরি করা হয় (মূল নয়) আমাদের এটির প্রয়োজনীয় অনুমতি থাকবে না কারণ আমাদের চিন্তার দরকার নেই।
Anto

4
আমি আপনাকে প্রশংসা করতে হবে। আমি এখনই এই সমস্যার মুখোমুখি হয়েছি। আপনার পদ্ধতি ব্যবহার করে এটি সমাধান হয়েছে।
জমি

61

লিনাক্স উবুন্টু 18 এও আমার একই সমস্যা ছিল । উবুন্টু 17.10 থেকে আপডেট হওয়ার পরে , প্রতিটি গিট কমান্ড সেই বার্তাটি প্রদর্শন করবে।

এটির সমাধানের উপায় হ'ল id_rsaএবং এর উপর আপনার সঠিক অনুমতি আছে কিনা তা নিশ্চিত করা id_rsa.pub

ব্যবহার করে বর্তমান chmod নম্বরটি পরীক্ষা করুন stat --format '%a' <file>। এটি 600 এর জন্য id_rsa এবং 644 এর জন্য হওয়া উচিত id_rsa.pub

ফাইলগুলিতে অনুমতি পরিবর্তন করতে ব্যবহার করুন

chmod 600 id_rsa
chmod 644 id_rsa.pub

যা আপডেট দিয়ে আমার সমস্যা সমাধান করেছে।


4
আমি উবুন্টুকে 16.04 এলটিএস থেকে 18.04 এলটিএসে স্থানান্তরিত করার পরে এই সমস্যার মুখোমুখি হয়েছি, এই সমাধানটি আমার পক্ষে কাজ করেছে।
মুনিশ চন্দেল

এখানে একইভাবে, উবুন্টুকে 18.04 এ আপডেট করার পরে আমি এই সমস্যার মুখোমুখি হয়েছি। এই সমাধান এটি ঠিক করুন।
কার্টুচো

id_rsa.pubক্লায়েন্ট প্রমাণীকরণ প্রক্রিয়া কখন ব্যবহার করা হয়?
দিমিত্রি কোপরিওয়া

আপনার যদি অনেকগুলি কী থাকে তবে আপনার ভিতরে ~/.sshchmod 600 id_*
এটির

12

এই সমস্যাটি সমাধান করার জন্য নীচের কমান্ডটি চালান।

এটা আমার জন্য কাজ করেছে।

chmod 600 ~/.ssh/id_rsa

8

আমার এসপি-এজেন্ট হিসাবে জিপিজি-এজেন্ট ব্যবহার করার সময় এবং আমার এসএসএস কী হিসাবে একটি জিপিজি সাবকি ব্যবহার করার সময় আমার ত্রুটি হয়েছিল https://wiki.archlinux.org/index.php/GnuPG#gpg-agent

আমার সন্দেহ হয় যে জিপিজি-র জন্য আমার অবিচ্ছিন্ন কনফিগারেশনে আমার ঘুম + লক কমান্ডের কারণে একটি অবৈধ পিন এন্ট্রি tty থাকার কারণে এই সমস্যাটি হয়েছিল

bindsym $mod+Shift+l exec "sh -c 'gpg-connect-agent reloadagent /bye>/dev/null; systemctl suspend; swaylock'"

অথবা কেবল ঘুম / স্থগিত করা

সমস্যাটি সমাধান করতে পিন এন্ট্রি টিটিটি পুনরায় সেট করুন

gpg-connect-agent updatestartuptty /bye > /dev/null

এবং আমার দোলা ঘুম + লক কমান্ডের জন্য সমাধান:

bindsym $mod+Shift+l exec "sh -c 'gpg-connect-agent reloadagent /bye>/dev/null; systemctl suspend; swaylock; gpg-connect-agent updatestartuptty /bye > /dev/null'"


4
ধন্যবাদ. কিছুদিন আগে আমার এই সমস্যাটি হয়েছিল, আমি আপনার হিসাবে জিপিজি ব্যবহার করি এবং gpg-connect-agent updaterstartuptty /bye > /dev/nullআমার ~ / .zshrc এ মন্তব্য করেছি, এই লাইনটি নিঃসংশ্লিষ্ট করে আমার সমস্যার সমাধান করেছে।
জে অ্যাডলার

4

এই ত্রুটি:

# git pull
sign_and_send_pubkey: signing failed: agent refused operation
git@github.com: Permission denied (publickey).    
fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository exists.

গিথুব অ্যাকাউন্ট> প্রোফাইল> এসএসএসে পাবলিক কীটি যাচাই বা আবার যুক্ত করুন।

আমি এর মতো সমাধান করেছি:

# chmod 400 ~/.ssh/id_rsa

# ls  ~/.ssh/id_rsa -ls  
4 -r--------. 1 reinaldo reinaldo 1679 Jul 26  2017 /home/reinaldo/.ssh/id_rsa

# git pull                                 
remote: Counting objects: 35, done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 35 (delta 9), reused 34 (delta 9), pack-reused 0
Unpacking objects: 100% (35/35), done.

ধন্যবাদ.


2

এসএসএইচ ত্রুটি হওয়ার বিভিন্ন কারণ থাকতে পারে:

sign_and_send_pubkey: সাইন ইন ব্যর্থ: এজেন্ট অপারেশন অস্বীকার করেছে

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

আমার ক্ষেত্রে আমি নিম্নলিখিত ত্রুটি বার্তা পেয়েছি:

sign_and_send_pubkey: সাইন ইন ব্যর্থ: এজেন্ট অপারেশন অস্বীকার করেছে

user@website.domain.com: অনুমতি অস্বীকার করেছে (পাবলিককি, গেসাপি-কেইেক্স, মাইক্রো-সহ মেসি)

আসল সমস্যাটি খুঁজে পাওয়ার একমাত্র উপায় হ'ল -v ভার্বোস বিকল্পটি চাওয়া যা ফলস্বরূপ প্রচুর ডিবাগিং তথ্য মুদ্রণ করে:

debug1: Connecting to website.domain.com [xxx.xxx.xxx.xxx] port 22.
debug1: Connection established.
debug1: identity file /home/user/.ssh/id_rsa.website.domain.com type 0
debug1: key_load_public: No such file or directory
debug1: identity file /home/user/.ssh/id_rsa.website.domain.com-cert type -1

লাইনটি বলছেন দয়া করে নোট করুন key_load_public: No such file or directory পূর্ববর্তী লাইনটি নয় বরং পরবর্তী লাইনটিকে উল্লেখ করছে।

সুতরাং এসএসএইচ যা বলছে তা হ'ল এটি নামের জনসাধারণের কী ফাইলটি খুঁজে পেতে পারেনি id_rsa.website.domain.com-certএবং এটি আমার ক্ষেত্রে সমস্যা বলে মনে হয়েছে যেহেতু আমার পাবলিক কী ফাইলটিতে -certপ্রত্যয়টি নেই।

দীর্ঘ গল্প সংক্ষিপ্ত: আমার ক্ষেত্রে ঠিক করাটি নিশ্চিত করা ছিল যে পাবলিক কী ফাইলটি প্রত্যাশা অনুযায়ী নামকরণ করা হয়েছিল। আমি কখনই সংযোগটি ডিবাগ না করে সন্দেহ করতে পারি না।

তল লাইনটি এসএসএইচ ভার্বোস মোড (-v বিকল্প) ব্যবহার করে ভুলটি বের করার জন্য বিভিন্ন কারণ থাকতে পারে, এই / অন্য কোনও থ্রেডে খুঁজে পাওয়া যায়নি।


0

এটি বরং একটি সুপার ব্যবহারকারী প্রশ্ন হওয়া উচিত।

ডান আমার ম্যাকোএসএক্স সোর্সট্রি-তে ঠিক একই ত্রুটি আছে তবে আইটির্ম 2 টার্মিনালের অভ্যন্তরে জিনিসগুলি কেবল অদ্ভুতভাবে কাজ করে।

যাইহোক, সমস্যা হতে যে আমি পেয়েছেন করলো দুই ssh-agent গুলি চলমান; (

প্রথমটি হচ্ছে /usr/bin/ssh-agent(ওরফে ম্যাকোসএক্স এর) এবং তারপরে হোমব্রু ইনস্টল থাকা /usr/local/bin/ssh-agentচলছে।

সোর্সট্রি থেকে একটি টার্মিনাল ফায়ার SSH_AUTH_SOCKকরে lsofআমাকে দুটি ভিন্ন ভিন্ন ব্যবহার করে এর মধ্যে পার্থক্যগুলি দেখতে পেয়েছিলাম ssh-agentএবং তারপরে আমি কীগুলির (ব্যবহার করে ssh-add) সিস্টেমের ডিফল্ট ssh-agent(অর্থাৎ ) লোড করতে সক্ষম /usr/bin/ssh-agentহয়েছি, সোর্স ট্রি আবার কাজ করছে।


0

হ্যাঁ. ক্লায়েন্ট মেশিনে ssh-add চালান । তারপরে ssh-copy-id userserver@012.345.67.89 কমান্ডটি পুনরাবৃত্তি করুন


0

আমার জন্য সমস্যাটি ছিল গিটল্যাবে পাবলিক কীটির একটি ভুল অনুলিপি / পেস্ট। অনুলিপি অতিরিক্ত রিটার্ন উত্পন্ন করে। আপনি যা পেস্ট করেছেন তা এক-লাইন কী আছে তা নিশ্চিত করুন।


0

আমিও sign_and_send_pubkey: signing failed: agent refused operationত্রুটি পেয়েছি । তবে আমার ক্ষেত্রে সমস্যাটি ছিল একটি ভুল pinentryপথ।

আমার সালে সম্পত্তি একটি পুরানো pinentry পথ নির্দেশ করা হয়। সেখানে পথটি সংশোধন করা এবং এটি আমার জন্য স্থির পুনরায় আরম্ভ করা ।${HOME}/.gnupg/gpg-agent.confpinentry-programgpg-agent

আমি লগগুলি অনুসরণ করে এটি আবিষ্কার করেছি journalctl -f। নীচের মতো লগ লাইনগুলি যেখানে ভুল পথ রয়েছে:

Jul 02 08:37:50 my-host gpg-agent[12677]: ssh sign request failed: No pinentry <GPG Agent>
Jul 02 08:37:57 my-host gpg-agent[12677]: can't connect to the PIN entry module '/usr/local/bin/pinentry': IPC connect call failed

0

আমার ভাগ করে নেওয়া দরকার, কারণ সমাধানের সন্ধান করতে আমি অনেক বেশি সময় ব্যয় করেছি

সমাধানটি এখানে ছিল: https://unix.stackexchange.com/a/351742/215375

আমি এই আদেশটি ব্যবহার করছিলাম:

ssh-keygen -o -t rsa -b 4096 -C "email@example.com"

জিনোম-কিরিং উত্পন্ন কীটি সমর্থন করে না।

সরানো হচ্ছে -oযুক্তি সমস্যার সমাধান।


0

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


0

এখানে কি কাজ করেছে: ক্লায়েন্টের উপরে

1) ssh- অ্যাড

2) এসএসএস-কপি-আইডি ব্যবহারকারী @ সার্ভার

কিছুদিন আগে কীগুলি তৈরি করা হয়েছে প্লেইন "ssh-keygen -t rsa" দিয়ে আমি ত্রুটি বার্তাটি সোয়াই করেছি কারণ আমি আমার এসএস পাবলিক কী জুড়ে ক্লায়েন্ট থেকে সার্ভারে (এসএসএস-আইডি-অনুলিপি সহ) অনুলিপি করে প্রথমে এসএস-অ্যাড না চালিয়ে, যেহেতু আমি ভ্রান্তভাবে ধরে নিয়েছিলাম যে আমি তাদের কিছু আগে যোগ করেছি।


0

সম্প্রতি "আধুনিক" এসএসএস সংস্করণে আপগ্রেড করার জন্য দ্রুত দ্রষ্টব্য [ওপেনএসএসএইচ_8.1 পি 1, ওপেনএসএসএল 1.1.1d FIPS 10 সেপ্টেম্বর 2019] - ফেডোরা 31 দ্বারা সরবরাহিত, পুরানো ডিএসএ SHA256 কীগুলি এখন আর গ্রহণ করবে বলে মনে হচ্ছে না (আমার 2006 সালের তারিখ!) - একটি নতুন আরএসএ কী তৈরি করেছে, অনুমোদিততে জনসাধারণ যুক্ত হয়েছে, ক্লায়েন্টে ব্যক্তিগত রয়েছে এবং সমস্ত কিছুই নিখুঁতভাবে কাজ করে।

পূর্ববর্তী পরামর্শগুলির জন্য ধন্যবাদ, বিশেষত ssh -v খুব কার্যকর হয়েছে


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