सफलता!
मैं निजी कुंजी प्राप्त करने में सक्षम था। लेकिन यह आसान नहीं था। यहाँ आपको क्या करना है:
- सुनिश्चित करें कि आप सर्वर या अपाचे को पुनरारंभ नहीं करते हैं। खेल उस बिंदु पर खत्म हो गया है। इसका अर्थ यह भी है कि यह सुनिश्चित करने के लिए कि कोई निगरानी सेवाएँ Apache को पुनरारंभ नहीं करती हैं।
- Passe-partout नामक टूल के लिए इस फ़ाइल - स्रोत कोड को पकड़ो ।
स्रोत कोड निकालें और Makefile.main
पढ़ने के लिए लाइन 9 समायोजित करें :
$(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS)
(ध्यान दें कि $(OBJS)
और $(LDFLAGS)
क्रम में उलटे हैं।)
- भागो
./build.sh
।
का उपयोग करके अपाचे के पीआईडी को पकड़ो:
service apache2 status
passe-partout
रूट के रूप में कमांड चलाएँ :
sudo passe-partout [PID]
... [PID]
चरण # 5 में आपने कहाँ से मान प्राप्त किया है।
यदि कार्यक्रम सफल होता है, तो आपकी वर्तमान निर्देशिका में अतिरिक्त कुंजियों का एक समूह होगा:
you@server:~# ls
id_rsa-0.key id_rsa-1.key id_rsa-2.key
अगर सब ठीक हो गया (और उम्मीद है कि यह किया है), उन चाबियों में से एक वह है जो आपको चाहिए। हालांकि, यदि आपके पास उपयोग में एक से अधिक प्रमाणपत्र / कीफ़ाइल थे, तो आपको यह पता लगाने की आवश्यकता है कि यह कौन सा है। यहां बताया गया है कि आप ऐसा कैसे करते हैं:
पहले उस प्रमाणपत्र की एक प्रति ले लें जो हस्ताक्षरित कुंजी से मेल खाती है। फ़ाइल को नाम दिया गया मानकर server.crt
, निम्न आदेश चलाएँ:
openssl x509 -noout -modulus -in server.crt | openssl md5
यह एक मूल्य को आउटपुट करेगा जिसे आपको प्रत्येक कुंजी के साथ मेल खाना होगा। प्रत्येक कुंजी के लिए, निम्न कमांड चलाएँ:
openssl rsa -noout -modulus -in id_rsa-0.key | openssl md5
यदि उनमें से एक मेल खाता है, तो आपको कुंजी मिल गई है।
श्रेय: इस लेख ने मुझे संकेत दिया कि भाग-भाग करना।