मैं दूसरे उपयोगकर्ता के लिए एक ssh कुंजी बनाने की कोशिश कर रहा हूँ। मैं रूट के रूप में लॉग इन हूं। क्या मैं केवल ssh-keygen द्वारा उत्पन्न फाइलों को संपादित कर सकता हूं और जो रूट यूजर को चाहिए, उसे बदल सकता हूं?
मैं दूसरे उपयोगकर्ता के लिए एक ssh कुंजी बनाने की कोशिश कर रहा हूँ। मैं रूट के रूप में लॉग इन हूं। क्या मैं केवल ssh-keygen द्वारा उत्पन्न फाइलों को संपादित कर सकता हूं और जो रूट यूजर को चाहिए, उसे बदल सकता हूं?
जवाबों:
आप ऐसा कर सकते हैं ssh-keygen
, हालाँकि, याद रखें कि निजी कुंजी उपयोगकर्ता के लिए निजी होने के लिए है, इसलिए आपको इसे सुरक्षित रखने के लिए बहुत सावधानी बरतनी चाहिए - उपयोगकर्ता के पासवर्ड के समान सुरक्षित। या यहां तक कि सुरक्षित है, क्योंकि उपयोगकर्ता को पहले लॉगिन पर इसे बदलने की आवश्यकता नहीं है।
ssh-keygen -f anything
वर्तमान निर्देशिका में दो फाइलें बनाता है। anything.pub
वह सार्वजनिक कुंजी है, जिसे आप ~/.ssh/authorized_keys
किसी भी गंतव्य सर्वर पर उपयोगकर्ता को भेज सकते हैं।
दूसरी फ़ाइल, जिसे केवल anything
निजी कुंजी कहा जाता है और इसलिए इसे उपयोगकर्ता के लिए सुरक्षित रूप से संग्रहीत किया जाना चाहिए। डिफ़ॉल्ट स्थान होगा ~username/.ssh/id_rsa
(यहाँ नाम दिया गया है id_rsa
, जो कि rsa कुंजियों के लिए डिफ़ॉल्ट है)। याद रखें कि .ssh
निर्देशिका किसी और के द्वारा पठनीय या लिखने योग्य नहीं हो सकती है, लेकिन उपयोगकर्ता और उपयोगकर्ता की होम निर्देशिका किसी और के द्वारा, लेकिन उपयोगकर्ता द्वारा लिखी नहीं जा सकती है। इसी तरह, अनुमतियाँ निजी कुंजी पर चुस्त होनी चाहिए, साथ ही: केवल उपयोगकर्ता के लिए पढ़ें / लिखें, और .ssh निर्देशिका और निजी कीफ़ाइल उपयोगकर्ता के स्वामित्व में होनी चाहिए।
तकनीकी रूप से आप कुंजी को कहीं भी स्टोर कर सकते हैं। साथ ssh -i path/to/privatekey
आप उस स्थान को निर्दिष्ट कर सकता है, वहीं कनेक्ट। फिर, उचित स्वामित्व और अनुमतियां महत्वपूर्ण हैं और ssh काम नहीं करेगा यदि आपके पास उनका अधिकार नहीं है।
ssh -i
गैर-विशेषाधिकार प्राप्त प्रक्रिया के लिए निजी कुंजी के लिए @Rilindo यह है कि मैं कुछ स्वचालित rsync बैकअप प्रक्रियाओं से अधिक कैसे संभालता हूं। :)
users
याuser's
नहीं है SSH कुंजियों में कोई उपयोगकर्ता जानकारी ।
सार्वजनिक कुंजी में अंतिम फ़ील्ड एक टिप्पणी है (और निम्न कमांड को चलाकर बदला जा सकता है ssh-keygen -C newcomment
)।
किसी अन्य उपयोगकर्ता के लिए कुंजी बनाने के लिए कुछ विशेष करने की आवश्यकता नहीं है, बस इसे सही स्थान पर रखें और अनुमतियाँ सेट करें।
का उपयोग करके उपयोगकर्ता बनें सु और है कि उपयोगकर्ता के रूप में कुंजी चलाएँ:
[root@kvm0001 ~]# su - joeuser
[joeuser@kvm0001 ~]$ ssh-keygen -t dsa (or rsa1 or rsa, depending on your security requirements)
Generating public/private dsa key pair.
Enter file in which to save the key (/home/joeuser/.ssh/id_dsa):
joeuser
एक सेवा उपयोगकर्ता है, इसलिए मैं उनके रूप में लॉगिन नहीं कर सकता। मैं एक सेवा उपयोगकर्ता (जो सिर्फ प्रक्रियाएं चलाता है) को ssh कुंजी रखने की अनुमति कैसे देता है?