GnuPG और इसके डेमन gpg-Agent का उपयोग करना


9

पैकेज बनाते समय gpg-agentमुझे अपना GnuPGपासवर्ड याद रखने और आपूर्ति करने के लिए उपयोग कर रहा हूं Debian/Ubuntu। लेकिन मैं अभी भी उलझन में हूं कि कैसे gpg-agentकाम करता है। मैं इस प्रकार आह्वान gpg-agentकरता हूं :

eval $(gpg-agent --daemon)

यह कभी-कभी काम करता है। लेकिन जो बात मुझे परेशान करती है, वह यह है कि कभी-कभी यह काम नहीं करता है। यानी, कभी-कभी निर्माण प्रक्रिया मेरे GnuPGपासवर्ड के लिए एक बार पूछती है , कभी-कभी और कभी-कभी कई बार। यह सब एक बैश सत्र के दौरान होता है, जब मैंने पहले की तरह आह्वान gpg-agentकिया था। इस बार पासवर्ड के लिए नहीं कहा जा रहा है कि मैं अगली बार पासवर्ड के लिए नहीं कहा जाएगा गारंटी नहीं है। मुझे अभी भी यह पता नहीं चला है कि gpgमुझे पासवर्ड के लिए संकेत देने का फैसला क्यों किया गया है और यह क्यों नहीं है।

क्या आपके साथ भी ऐसा होता है?

धन्यवाद


1
आपको कुछ समय बिताने की आवश्यकता होगी कि वह किन परिस्थितियों में विफल रहता है और किन परिस्थितियों में यह सफल होता है। यदि आप वर्णन कर सकते हैं कि असफलता के साथ मज़बूती से क्या संबंध है तो किसी अन्य व्यक्ति के समाधान के बारे में सोचने की अधिक संभावना है।
बिग्गुन

Emacs में, GNUS के लिए और .authinfo.gpg, मुझे उपयोग करने के लिए एक संकेत मिला gpg2, जो gpg-agentइसके साथ जुड़ा हुआ है। इसलिए (setq epg-gpg-program "/usr/bin/gpg2")मेरे लिए काम किया। शायद आपको यह पता लगाना होगा कि आपके कौन से एप्लिकेशन में समस्या आ रही है, वे पसंद कर रहे हैं gpg(1)।
ब्रैडी ट्रेनर

जवाबों:


7

पाया कि कैसे ठीक gpg-agentसे http://tr.opensuse.org/SDB:Using_gpg-agent का उपयोग करें

उसके बाद, मेरा gpg-agentडेमन मेरे GnuPGपासवर्ड को अभी ठीक से कैच कर रहा है । मेरे सेटअप में कुछ भी गलत नहीं था, बस मुझे नहीं पता था कि कैसे परीक्षण किया जाए कि मेरे GnuPGपासवर्ड ठीक से कैशिंग कर रहे हैं या नहीं।

अब मैं करता हूँ:

echo "test" | gpg -ase -r 0xMYKEYID | gpg

साइट से: "अपनी GnuPG कुंजी आईडी के साथ 0xMYKEYID को बदलें। इस कमांड को चलाते समय, एजेंट को दो बार एक ग्राफिकल पासवर्ड डायलॉग खोलना चाहिए: पहले साइन इन करने या एन्क्रिप्ट करने (gpg -ase) (gpg -ase) के लिए फिर डिक्रिप्शन या सिग्नेचर चेक ( | gpg)। अब से, हर बार GnuPG का उपयोग किया जाता है (या तो कमांड लाइन से या केएमल जैसे ग्राफिकल प्रोग्राम में एम्बेड किया जाता है), gpg-agent का पासवर्ड स्वचालित रूप से पारित हो जाएगा (जब तक कि टाइम-आउट समाप्त हो जाता है या ग्राफ़िकल इंटरफ़ेस नहीं है) बन्द है)।"

और कैशिंग समाप्ति से बचने के लिए, मैंने अब बहुत लंबी अवधि निर्धारित की है:

$ cat ~/.gnupg/gpg-agent.conf
max-cache-ttl 60480000
default-cache-ttl 60480000

Linux.die.net/man/1/gpg-agent के अनुसार , आप --write-env-file "${HOME}/.gpg-agent-info"gpg-agent शुरू करते समय भी जोड़ सकते हैं और फिर if [ -f "${HOME}/.gpg-agent-info" ]; then . "${HOME}/.gpg-agent-info"; export GPG_AGENT_INFO fi एजेंट को पहले से चला रहे हैं या नहीं यह पता लगाने के लिए अपने .bashrc में जोड़ें । एक बिट क्लीनर समाधान की तरह लगता है।
बीन

@ सीनियन, उत्कृष्ट। मैं इसका परीक्षण करूंगा और आपके पास वापस आ
जाऊंगा

WARNING: "--write-env-file" is an obsolete option - it has no effectकम से कम Apr 4 '16। Ref: serverfault.com/a/481174
xpt
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.