Mutt: पासवर्ड को सुरक्षित रूप से कैसे स्टोर करें?


52

मेरी .muttrc फ़ाइल कुछ इस तरह दिखती है या नीचे एक झलक दिखती है। मुझे पासवर्ड से संकोच है। मुझे इसका उपयोग करने के लिए अपना पासवर्ड कैसे संग्रहीत करना चाहिए mutt?

set imap_user = "username@gmail.com"
set imap_pass = "password"

set smtp_url = "smtp://username@smtp.gmail.com:587/"
set smtp_pass = "password"
set from = "username@gmail.com"
set realname = "Your Real Name"

4
आपके द्वारा लिंक किए गए पोस्ट में, मैंने पहले ही लिखा है "सुनिश्चित करें कि आपका ~ / .Muttrc विश्व-पठनीय नहीं है; इसमें आपका पासवर्ड है। (वैकल्पिक रूप से, आप उन्हें छोड़ सकते हैं और प्रत्येक बार पासवर्ड के लिए म्यूट कर देगा।) :-)

जवाबों:


38

इस ट्वीक को आपकी समस्या से छुटकारा मिलना चाहिए। सुझाए गए, या के रूप में gpg का उपयोग करें

set imap_pass=`getpassword email_id`

जहाँ आप पासवर्ड लाने के लिए pwsafe या पासवर्ड का उपयोग करते हैं।

संपादित करें: यदि Mutt IMAP समर्थन (--enable-imap) के साथ बनाया गया है , तो अगर आपने इसे कॉन्फ़िग फ़ाइल में सेट नहीं किया है , तो म्यूट आपको पासवर्ड के लिए संकेत देना चाहिए । मैनुअल से:

imap_pass

प्रकार: स्ट्रिंग डिफ़ॉल्ट: ""

आपके IMAP खाते के लिए पासवर्ड निर्दिष्ट करता है। यदि आप परेशान हैं, तो जब आप मेल-मेल फ़ंक्शन को आमंत्रित करते हैं, तो Mutt आपको आपके पासवर्ड के लिए संकेत देगा। चेतावनी: जब आप काफी सुरक्षित मशीन पर होते हैं, तो आपको केवल इस विकल्प का उपयोग करना चाहिए, क्योंकि सुपरयुसर आपके म्यूटेशन को पढ़ सकता है, भले ही आप केवल एक ही हो जो फ़ाइल को पढ़ सकता है।


9
+1 ने आपसे इसके लिए म्यूट पूछा है। आपको केवल प्रति सत्र एक बार इसे दर्ज करना होगा।
डेविड मैकिनटोश

2
इसके अलावा, यदि आप muttभीतर चलते हैं tmux, तो आपका सत्र थोड़ी देर तक चल सकता है।
क्रिस डब्ल्यू

यह कार्य क्या है getpassword? मेरे पास इसके Ubuntu 14.04.3 LTS (GNU / Linux) सर्वर में नहीं है। मुझे लगता है कि वे हैं pwsafeया passwordsमुझे उनका उपयोग करना चाहिए? जब भी मैं सर्वर में लॉग इन होता हूं, मैं पासवर्ड के बिना मेरे म्यूट -account में लॉग इन होना चाहता हूं, क्योंकि सर्वर का पासवर्ड ईमेल के समान ही होता है।
लेओ लेपोल्ड हर्ट्ज़ '

1
आप पास - passwordstore.org का उपयोग कर सकते हैं। यह उपकरण ठीक उसी तरह इस्तेमाल किया जा सकता है जैसा कि ऊपर दिए गए उत्तर में वर्णित है। पासवर्ड चुने गए GPG कुंजी द्वारा एन्क्रिप्ट किए गए गिट रिपॉजिटरी में संग्रहीत किए जाते हैं।
जैकब जिंद्रा

28

एक पासवर्ड फ़ाइल बनाएँ ~/.mutt/passwords:

set imap_pass="password"
set smtp_pass="password"

इस फ़ाइल को GPG का उपयोग करके एन्क्रिप्ट किया जा सकता है। सबसे पहले, एक सार्वजनिक / निजी कुंजी जोड़ी बनाएँ:

$ gpg --gen-key

पासवर्ड फ़ाइल एन्क्रिप्ट करें:

$ gpg -r your.email@example.com -e ~/.mutt/passwords
$ ls ~/.mutt/passwords*
/home/user/.mutt/passwords   /home/user/.mutt/passwords.gpg
$ shred ~/.mutt/passwords
$ rm ~/.mutt/passwords

अपने में जोड़ें muttrc:

source "gpg -d ~/.mutt/passwords.gpg |"

के जरिए

आर्क विकी की म्यूट एंट्री भी देखें ।


पासवर्ड फ़ाइल या शेल स्क्रिप्ट में सार्वजनिक कुंजी होनी चाहिए? मुझे लगता है कि शेल स्क्रिप्ट को .muttrc में होना चाहिए। मुझे gpg कमांड चलाने के बाद मिलता है gpg: masi@myuni.fi: skipped: public key not found gpg: /u/77/masi/unix/.mutt/passwords: encryption failed: public key not found। मैंने किया cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/known_hostsलेकिन यह समस्या नहीं लगती है। मुझसे क्या गलती हुई है?
लेओ लेपोल्ड हर्ट्ज़ '

1
मैसी, आपके पास एक GPG (या PGP) कुंजी होनी चाहिए, न कि आपकी SSH सार्वजनिक कुंजी। : यहाँ GPG कुंजी पर अधिक जानकारी fedoraproject.org/wiki/Creating_GPG_Keys : और यहाँ help.ubuntu.com/community/GnuPrivacyGuardHowto
DmitrySandalov

1
यह एक सही समाधान है। यहाँ किसी के लिए भी मेरी कॉन्फिग फ़ाइल है जो संदर्भ के लिए ज़रूरी है: github.com/shubhamchaudhary/dotfiles/blob/master/home/.muttrc
शुभम चौधरी

मुझे लगा कि यह एक अच्छा समाधान था, लेकिन फिर मैंने म्यूट :set imap_passमें टाइप किया और अपना पासवर्ड क्लियरटेक्स में दिखाया। क्या इससे बचा जा सकता है? जब म्यूट खुद से इमैप पासवर्ड के लिए पूछता है, तो टाइप करते समय यह कैल्केटेक्ट पासवर्ड नहीं दिखाता है: सेट ...
eli

क्या आपने पासवर्ड के बिना अपनी GPG निजी कुंजी बनाई है? यदि gpg -dपासवर्ड की आवश्यकता नहीं है । जब पासवर्ड पासवर्ड रहित लॉगिन हो तो पासवर्ड को एनक्रिप्ट करने के लिए पासवर्ड का उपयोग क्यों करें ...
sdaffa23fdsf

3

क्यों की तरह एक बटुआ प्रबंधक का उपयोग नहीं gnome-keyringया kwalletmanagerके साथ secret-tool?

apt install gnome-keyring secret-tool

। [नव] muttrc:

source 'echo "$( pw=$( secret-tool lookup user <USERNAME> domain <DOMAIN> ); echo set imap_pass=\"$pw\"; echo set smtp_pass=\"$pw\" )" |'

अपना imap और smtp पासवार्ड स्टोर करें:

secret-tool store --label=imap user <USERNAME> domain <DOMAIN>

आप चाहें तो अपना खुद का लेबल चुन सकते हैं।

शेल का उपयोग करके अपने क्रेडिट देखें:

secret-tool lookup user <USERNAME> domain <DOMAIN>

अपने [नियो] म्यूट को फायर करें, कनेक्ट करें और अपने imap srv में लॉगिन करें। का आनंद लें।

इस समाधान में gpg-based वाले के फायदे हैं: यह अच्छी तरह से एकीकृत होता है और इसके आसपास कोई अतिरिक्त फ़ाइल नहीं बची है।

बोनस: उपयोग libsecretया सीधे के gnome-keyringरूप में के git credential-helperरूप में एक साथ libsecret और git के साथ gnome-keyring । दोनों सहायकों को मैनुअल संकलन की आवश्यकता है। हां, यह थोड़ा अजीब है लेकिन यह बहुत अच्छा काम कर रहा है।


1

श्रीवत्सआर की टिप्पणी के आधार पर, मैं सुरक्षा पर जोर देना चाहता हूं। यदि $ HOME / .muttrc में पासवर्ड है, तो करें

chmod go-r $HOME/.muttrc

हालाँकि, मुझे लगता है कि यह अभी भी एक सुरक्षित विकल्प नहीं है। आपको कुछ विधि का उपयोग करना चाहिए जो भंडारण पासवर्ड में नमक का उपयोग करता है।


0

आप एक अनएन्क्रिप्टेड फ़ाइल से पासवर्ड पढ़ सकते हैं।

उदाहरण के लिए, पासवर्ड डालें ~/secrets/mail_pass:

the_secret_mail_password

फिर

chmod 600 ~/secrets/mail_pass`

आपके muttrc में:

# Read the password from a file and set it
set smtp_pass=`cat ~/secrets/mail_pass`

यह बहुत आसान है chmod 600 ~/.muttrc
dr01

यदि आप अपने पासवर्ड को अपने पास रखते हैं ~/.muttrcतो इसे GitLab, आदि पर डालकर प्रकाशित नहीं कर पाएंगे। यदि आप ऑफ़लाइन उपयोग करते हैं, तो इसे पासवर्ड की भी आवश्यकता है और इसे बाहरी पासवर्ड फ़ाइल से भी पढ़ सकते हैं।
मथायस ब्रौन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.