मैं आर्च linux पर Opensh7.5p1 और gnupg 2.1.21 का उपयोग कर रहा हूं (ये आर्क के साथ आने वाले डिफ़ॉल्ट संस्करण हैं)। मैं gpg-agent
एक ssh एजेंट के रूप में उपयोग करना चाहूंगा । मैं अपने में निम्नलिखित डाल ~/.gnupg/gpg-agent.conf
:
pinentry-program /usr/bin/pinentry-qt
enable-ssh-support
आर्क स्वचालित रूप से सिस्टम से एक gpg- एजेंट शुरू करता है, इसलिए मैंने सेट किया
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/gnupg/S.gpg-agent.ssh"
जब मैं दौड़ता हूं ssh-add -l
, तो यह बिना किसी पहचान के ps
रिपोर्ट करता है और एक gpg-agent --supervised
प्रक्रिया को रिपोर्ट करता है जैसा कि मैं अपेक्षा करता हूं।
दुर्भाग्य से, जब मैं दौड़ता हूं ssh-add
, तो कोई फर्क नहीं पड़ता कि यह किस प्रकार का है, यह काम नहीं करता है। यहाँ एक उदाहरण है कि मैंने कैसे dsa की कोशिश की:
$ ssh-keygen -f testkey -t dsa -N ''
Generating public/private dsa key pair.
Your identification has been saved in testkey.
Your public key has been saved in testkey.pub.
$ ssh-add testkey
Could not add identity "testkey": agent refused operation
अन्य सभी gpg फ़ंक्शन ठीक से काम करते हैं (एन्क्रिप्ट / डिक्रिप्ट / हस्ताक्षर करना)। इसके अलावा, अगर मैं उन्हें सीधे ssh के साथ उपयोग करता हूं, तो मैं ठीक काम करता हूं, और अगर मैं ssh-agent
ओपनश के साथ आता हूं तो वे ठीक से काम करते हैं ।
प्रलेखन कहता है कि ssh-add
कुंजी को जोड़ना चाहिए ~/.gnupg/sshcontrol
, लेकिन स्पष्ट रूप से कुछ भी नहीं हो रहा है।
मेरा प्रश्न: अधिभारित के द्वारा उत्पन्न एक महत्वपूर्ण लोड करने के लिए सबसे आसान तरीका क्या है ssh-keygen
में gpg-agent
, और कर सकते हैं किसी कटौती को खुश और यह कैसे काम करता है दिखा एक टर्मिनल सत्र पेस्ट करें?