मैं अपने एन्क्रिप्शन सॉफ्टवेयर को GnuPG में समेकित करने का प्रयास कर रहा हूं, और मैं एक भ्रामक समस्या में चल रहा हूं।
मेरी प्राथमिक इकाई एक हेडलेस सर्वर है, और मैं विशेष रूप से tmux में काम करता हूं। कोई एक्स सत्र नहीं है, और इसलिए मैंने पिनेंट्री-शापों का उपयोग करने के लिए जीपीजी-एजेंट को कॉन्फ़िगर किया है। मैंने इस स्क्रिप्ट के साथ ssh- एजेंट एमुलेशन के साथ लॉगिन पर बुलाया जाने वाला gpg-Agent कॉन्फ़िगर किया है:
if pgrep -u "${USER}" gpg-agent >/dev/null 2>&1; then
eval `cat $gnupginf`
eval `cut -d= -f1 $gnupginf | xargs echo export`
else
eval `gpg-agent -s --enable-ssh-support --daemon`
fi
मैंने पहले ही अपनी ssh कुंजी को gpg-agent में जोड़ लिया है, हालांकि जब मैं दूसरे ssh सत्र का प्रयास करता हूं तो कमांड हैंग हो जाता है।
मुझे पता चला है कि अगर मैं gpg- एजेंट को मारता हूं और एक नया लॉगिन शेल बनाता हूं, तो एजेंट उसी तरह काम करता है, जैसे उसे (पेंट्री-शाप को कॉल करते हुए ssh- एजेंट की तरह काम करते हुए) करना चाहिए।
यदि, हालांकि, मैं एक और लॉगिन शेल बनाता हूं (द्वारा, कहते हैं, पॉपिंग एक और tmux पेन खोलें) और ssh करने का प्रयास करें, कमांड हैंग हो जाता है और पिनेंट्री-शाप विंडो मूल रूप से एजेंट को लॉन्च करने वाले लॉगिन शेल की सामग्री पर मुद्रित होती है।
इसके अलावा, अगर मैंने शेल को बंद कर दिया है जो मूल रूप से एजेंट को लॉन्च करता है, तो पिनेंट्री-शाप को वैसे भी कहा जाता है और एक सीपीयू-अपंग अनंत लूप का कारण बनता है। (ज्ञात बग, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559936 देखें )।
संक्षेप में, मैं जानना चाहता हूं कि GnuPG एजेंट को मूल रूप से ssh- एजेंट के रूप में काम करने के लिए मेरे सेटअप के बारे में क्या बदलना है। किसी भी मदद के लिए धन्यवाद!