मैं ssh चाबियाँ करने के लिए नया हूँ। क्या कोई समझा सकता है कि कैसे ssh-agent bash
और ssh-add
काम करता है?
मुझे भविष्य में इसके इंटर्न को समझने की जरूरत है।
मैं ssh चाबियाँ करने के लिए नया हूँ। क्या कोई समझा सकता है कि कैसे ssh-agent bash
और ssh-add
काम करता है?
मुझे भविष्य में इसके इंटर्न को समझने की जरूरत है।
जवाबों:
एक एजेंट एक प्रोग्राम है जो आपकी कुंजी को स्मृति में रखता है ताकि आपको हर बार के बजाय केवल एक बार उन्हें अनलॉक करने की आवश्यकता हो । SSH कुंजियों के लिए ssh-agent ऐसा करता है।
Ssh- एजेंट शुरू करने के लिए सामान्य तरीके हैं:
eval `ssh-agent`
- यह एजेंट को पृष्ठभूमि में चलाता है, और वर्तमान शेल उदाहरण के लिए उपयुक्त वातावरण चर सेट करता है ।
( ssh- एजेंट , जब बिना किसी तर्क के शुरू किया जाता है, तो आउटपुट आपके शेल द्वारा व्याख्या किए जाने की आज्ञा देता है।)
exec ssh-agent bash
- खोल की एक नई आवृत्ति शुरू करता bash
है, वर्तमान की जगह।
(एक या अधिक तर्कों के साथ, ssh- एजेंट कुछ भी आउटपुट नहीं करता है, लेकिन निर्दिष्ट कमांड शुरू करता है: इस मामले में, bash
शेल, लेकिन तकनीकी रूप से यह कुछ भी हो सकता है।)
दूसरी विधि कभी-कभी पसंद की जाती है, क्योंकि जब आप टर्मिनल विंडो को बंद करते हैं तो यह स्वचालित रूप से ssh-Agent को मार देता है। (इसके साथ शुरू करने पर eval
, एजेंट चालू रहेगा, लेकिन दुर्गम होगा।)
हालांकि, यह केवल एक खाली एजेंट शुरू करता है। वास्तव में इसे उपयोगी बनाने के लिए, आपको ssh-add का उपयोग करने की आवश्यकता है , जो आपकी चाबियाँ (आमतौर पर ~/.ssh/id_*
) को अनलॉक करता है और उन्हें एजेंट में लोड करता है, जिससे उन्हें ssh या sftp कनेक्शन तक पहुंच प्राप्त होती है ।
इसके अतिरिक्त, आप सत्र प्रारंभ में कुछ कुंजियाँ जोड़ना चाहते हैं।
अपनी ~/.bashrc
फ़ाइल संपादित करें , और जोड़ें:
ssh-add &>/dev/null || eval `ssh-agent` &>/dev/null # start ssh-agent if not present
[ $? -eq 0 ] && { # ssh-agent has started
ssh-add ~/.ssh/your_private.key1 &>/dev/null # Load key 1
ssh-add ~/.ssh/your_private.key2 &>/dev/null # Load key 2
}
के साथ अपनी चाबियाँ जांचें ssh-add -l
आप वर्तमान ssh- एजेंट सत्र को रोक सकते हैं ssh-agent -k
Ssh-Agent और .bashrc के बारे में कुछ जानना बहुत अधिक कुंजी लोड नहीं है। Ssh डेमॉन के लिए प्रयासों की डिफ़ॉल्ट संख्या 6 तक सीमित है । /etc/ssh/sshd_config
इसे MaxAuthTries
मूल्य के साथ संशोधित किया जा सकता है ।
ssh-add
"और" के साथ लॉन्च करते समय निजी कुंजी पासवर्ड के बारे में क्या ? क्या आप मान रहे हैं कि निजी कुंजी फाइलें असुरक्षित हैं?