জিপিজি এজেন্ট কীরিং থেকে আমার এসএসএইচ কী সরিয়ে দেয় না


14

আমার সত্যিই সমস্যা হচ্ছে। আমি gpg-agentআমার এসএসএইচ কীটি এর কীরিং থেকে সরাতে পারি না এবং এটি অনেক রিবুট করার পরেও সেখানে থেকে যায়।

$ ssh-add -D
SSH_AGENT_FAILURE
Failed to remove all identities.

এমনকি যখন আমি এটি পরিচয়টি সরিয়ে দিতে বলি:

$ ssh-add -d /path/to/private/key
Identity removed: /path/to/private/key

আমি তারপর তাকান

$ ssh-add -l
4096 1b:cb:52:a6:e5:13:e6:78:14:12:92:8f:34:8f:92:88 /path/to/private/key

এবং এটি এখনও আছে।

কোথায় এটি ক্যাশে করা হচ্ছে? মনে হয় এটি কোনও কারণে ডিস্কে লিখিত হয়েছে, যা কোনও এসএসএইচ এজেন্টের পক্ষে করা একটি ভীতিজনক বিষয়। শুরু করার জন্য আমি নিম্নলিখিতটি চালাচ্ছি gpg-agent:

gpg-agent --enable-ssh-support --daemon 

অন্য সবকিছু ঠিকঠাক কাজ করে তবে এটি এই ফাইলটি কোথাও ক্যাশে করছে এবং আমার এটি মুছতে হবে।

উত্তর:


15

বেশিরভাগ জিনিসের মতো জিপিজি, এসএসএস শংসাপত্রগুলি .gnupgডিরেক্টরিটির ভিতরে ক্যাশে করা হয় , বিশেষত ~/.gnupg/sshcontrol, যা এরকম কিছু দেখবে:

# List of allowed ssh keys.  Only keys present in this file are used
# in the SSH protocol.  The ssh-add tool may add new entries to this
# file to enable them; you may also add them manually.  Comment
# lines, like this one, as well as empty lines are ignored.  Lines do
# have a certain length limit but this is not serious limitation as
# the format of the entries is fixed and checked by gpg-agent. A
# non-comment line starts with optional white spaces, followed by the
# keygrip of the key given as 40 hex digits, optionally followed by a
# the caching TTL in seconds and another optional field for arbitrary
# flags.   Prepend the keygrip with an '!' mark to disable it.

# Key added on: 2013-09-19 22:15:50
# Fingerprint:  8b:56:b0:3f:c8...
681BF1EFF... 0
# Key added on: 2013-09-20 17:14:36
# Fingerprint:  4b:cb:7e:b0:d7...
F7BCEBD1C... 0

মন্তব্যে যেমন বলা হয়েছে, আপনি কীগুলি মুছতে বা মুছে ফেলা বা এটি দ্বারা অক্ষম করতে পারেন !। আমি পরীক্ষা করিনি, তবে আমি কল্পনা করেছি যে একটি কী "অক্ষম" করার অর্থ আপনি ফাইলটি সম্পাদনা না করে পরিষ্কারভাবে এটি সক্ষম করতে বা এটি যুক্ত করতে পারবেন না।


এগুলি কেবল কী আঙ্গুলের ছাপ। Private / .gnupg / প্রাইভেট-কী-ভি 1.ডি /
ডিলিটজ

তবে তারা আর এসএস এজেন্টের কাছে দৃশ্যমান নয়।
49

13

হ্যাঁ, মনে হচ্ছে এটি ssh -dজিপিজির এজেন্টের সাথে ভেঙে গেছে। এখানে একটি পৃথক কমান্ড ব্যবহার করে কাজ করা হবে।

gpg-connect-agentএজেন্টের সাথে সংযোগ করতে কমান্ডলাইন থেকে কমান্ডটি চালান । তারপরে, প্রম্পটগুলি থেকে, ssh কীগুলি তালিকাভুক্ত করতে এই কমান্ডটি প্রবেশ করুন

KEYINFO --ssh-list --ssh-fpr

আপনার কিছু দেখতে হবে:

S KEYINFO 3365433C34421CC53B52C9A82169FD2328CF610B D - - - P df:a2:36:8d:ad:88:b3:cc:00:96:10:d4:c9:2c:e0:df - S
OK

এখন, এজেন্ট থেকে অপসারণ:

DELETE_KEY 3365433C34421CC53B52C9A82169FD2328CF610B

এটি বলবে:

OK

এখন, BYE কমান্ড দিয়ে প্রস্থান করুন:

বাই ঠিক আছে বন্ধ সংযোগ

এখন, যাচাই করুন ssh-add -lএবং আপনি দেখতে পাবেন যে এটি বাস্তব হয়ে গেছে।


DELETE_KEY <id>ফাইলটি কোথা থেকে এসেছে সে সম্পর্কে আরও তথ্য দেওয়ার পরে আমি একটি প্রম্পট পেয়েছি … কোন কীটি ছিল তা নির্ধারণের জন্য দরকারী
স্যাম ম্যাসন

1

আপনি যদি এর জন্য কোনও স্ক্রিপ্ট চান:

keys=$(gpg-connect-agent 'keyinfo --list' /bye | awk '{print $3}' | head -n -1)
for key in $keys; do gpg-connect-agent "delete_key $key --force" /bye; done

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

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