मैं अपने किचेन में एक निजी कुंजी कैसे जोड़ सकता हूं?


40

मैं myRepositoryKeyअपने मैक चाबी का गुच्छा उपयोगिता में जोड़ने की कोशिश कर रहा हूँ ताकि। मैंने इस आइटम को पुट्टी से ओपनआरएसए प्रारूप में निर्यात किया। जब मैं उपयोग करने का प्रयास करता हूं Import Items, तो फ़ाइल अचयनित होती है। मुझे अपने किचेन में आयात करने के लिए क्या करने की आवश्यकता है? क्या फ़ाइल को एक विशिष्ट एक्सटेंशन की आवश्यकता है?

जवाबों:


42

आपको एक .p12फाइल बनानी होगी। ऐसा करने के लिए आपको अपनी निजी कुंजी और उस कुंजी के लिए एक प्रमाणपत्र की आवश्यकता होती है। फिर अपने कंसोल पर निम्न चलाएँ:

openssl pkcs12 -export -clcerts -inkey private.key -in certificate.crt -out MyPKCS12.p12 -name "Your Name"

private.keyआपकी मौजूदा निजी RSA कुंजी कहां है, certificate.crtआपका मौजूदा प्रमाणपत्र है और MyPKCS12.p12बनाने के लिए फ़ाइल का नाम है। यह फ़ाइल आपके किचेन में आयात की जा सकती है।

यदि आपको SSH एक्सेस (SFTP, SCP या समान) के लिए अपनी कुंजी की आवश्यकता है, तो यह आपके किचेन में नहीं होना चाहिए। बस अपनी निजी कुंजी कॉपी करें ~/.ssh/और ~/.ssh/configफ़ाइल को संपादित / बनाएँ । वहाँ आप इन पंक्तियों के साथ कुछ डालेंगे:

# replace the host, location of the private key and the remoteUserName
# with valid values.
Host remote.domain.com
    IdentityFile ~/.ssh/private.key
    User remoteUserName

आपको कुंजी के लिए एक प्रमाण पत्र से क्या मतलब है? क्या मुझे एक हस्ताक्षर करने वाला प्राधिकरण शामिल करना होगा?
केसबश

हां, या खुद पर हस्ताक्षर करें, हालांकि मैं व्यक्तिगत उपयोग के अलावा किसी और चीज के लिए सिफारिश नहीं करूंगा।
बुमज़ैक

1
सिर्फ एक FYI करें, कमांड ने मेरे लिए प्रमाणपत्र के लिए .crt के बजाय एक .pem का उपयोग करने का काम किया । मैंने पहली बार .pem को एक .crt में बदलने की कोशिश की , जो विफल रहा, तो बस .pem को उस कमांड में आज़माया जो आपने सीधे दिखाया है और जो वास्तव में काम कर रहा है!
क्विकशिफ्टिन

इसने मेरे मामले में p12 फ़ाइल बनाई लेकिन इस त्रुटि के साथ "प्रमाण पत्र लोड करने में असमर्थ" का क्या मतलब है?
उमैर ए।

आपने मेरी नौकरी बचा ली होगी। मैं इस पर घंटों अपना सिर फोड़ रहा था।
श्रीधर सरनोबत

27

वैसे मुझे नहीं लगता कि "कुंजी के लिए एक प्रमाण पत्र की आवश्यकता है" या तो ...

मैं बस करता हूं ssh-add -K /path/to/private/key

हालाँकि, सुनिश्चित करें कि आप Mac के बिल्ट-इन का उपयोग कर रहे हैं, ssh-addन कि Macports के एक (यदि आपको कभी OpenSSH को अपग्रेड करने की आवश्यकता है)।

तो, बस करो /usr/bin/ssh-add -K /path/to/private/key

उम्मीद है की वो मदद करदे।


सही: अंतर्निहित एसएसएच को कुंजी जोड़ना होगा, फिर अंतर्निहित एसएसएच और मैकपोर्ट्स एसएसएच दोनों इसका उपयोग कर सकते हैं।
जेरेमी एल

ध्यान दें कि आपका सामना हो सकता है कि "अनुमति %%%% के लिए ... बहुत खुले हैं। [...] इस निजी कुंजी को अनदेखा किया जाएगा।" उस समस्या को ठीक करने के लिए इस उत्तर पर एक नज़र डालें ।
luk2302 12

पूरी तरह से काम किया। धन्यवाद!
मिमीला

5

मैंने कीचेन की GUI का उपयोग करके .p12 को आयात करने की कोशिश की है, ताकि शेर के नीचे चुपचाप नजरअंदाज किया जा सके। तो बस पूर्णता के लिए, मैं Stephan's Blog में इस पोस्ट को पसंद करूंगा

http://www.arlt.eu/blog/2009/12/01/importing-iphone-keys-p12-and-pem-into-snow-leopards-keychain/

संक्षेप में, यह हर बार चाल करना चाहिए:

security import priv_key.p12 -k ~/Library/Keychains/login.keychain
security import pub_key.pem -k ~/Library/Keychains/login.keychain

1

PEM प्रारूप में सभी को ध्यान में रखते हुए, निजी कुंजी फ़ाइल सर्वर-की.की है और प्रमाणपत्र फ़ाइल सर्वर-सर्टिफ़िकेट है। pem।

# create .p12 formatted file with key and certificate using openssl. 
openssl pkcs12 -export -in server-cert.pem -inkey server-key.key -passout pass:password -out certificate.p12 -name "SCProxy"

# should use -T appPath. -A means this key is accessible for all apps. 
sudo security import certificate.p12 -A -P password -k "/Library/Keychains/System.keychain"
sudo security add-trusted-cert -d -r trustRoot -k "/Library/Keychains/System.keychain" server-cert.pem

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.