कैसे प्राप्त करें और कर्ल के साथ प्रमाण पत्र का उपयोग करें


14
  1. निम्नलिखित कमांड दर्ज करना

    curl -k email@mail.com:password https://www.example.com 
    

    निम्न त्रुटि देता है

     <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
    <TITLE>301 Moved</TITLE></HEAD><BODY>
    <H1>301 Moved</H1>
    The document has moved
    <A HREF="http://mail.google.com/mail/">here</A>.
    </BODY></HTML>
    badauth
    
  2. cacert.crtफाइल को यहाँ से डाउनलोड करने के बाद

    http://www.cacert.org/index.php?id=3
    

    फिर cacert.crtफ़ाइल का नाम बदला गयाcacert.pem

    फिर कोशिश की:

    curl --cacert /path/to/cacert.pem email@mail.com:password https://www.example.com 
    

    लेकिन वही त्रुटि मिलती है।

  3. फिर कोशिश कर रहा है:

    curl  https://www.example.com 
    

    मुझे यह त्रुटि मिलती है

    कर्ल: (60) एसएसएल प्रमाणपत्र समस्या: स्थानीय जारीकर्ता प्रमाण पत्र प्राप्त करने में असमर्थ अधिक जानकारी यहाँ: http://curl.haxx.se/docs/sslcerts.html

    प्रमाणपत्र प्रमाणपत्र प्राधिकरण (CA) सार्वजनिक कुंजी (CA certs) के "बंडल" का उपयोग करके कर्ल डिफ़ॉल्ट रूप से SSL प्रमाणपत्र सत्यापन करता है। यदि डिफ़ॉल्ट बंडल फ़ाइल पर्याप्त नहीं है, तो आप --cacert विकल्प का उपयोग करके एक वैकल्पिक फ़ाइल निर्दिष्ट कर सकते हैं।
    यदि यह HTTPS सर्वर बंडल में दर्शाए गए CA द्वारा हस्ताक्षरित प्रमाणपत्र का उपयोग करता है, तो प्रमाण पत्र के साथ एक समस्या के कारण प्रमाणपत्र सत्यापन संभवतः विफल हो गया (यह समाप्त हो सकता है, या नाम URL में डोमेन नाम से मेल नहीं खा सकता है)।
    यदि आप प्रमाणपत्र के कर्ल सत्यापन को बंद करना चाहते हैं, तो -k (या --insecure) विकल्प का उपयोग करें

  4. इसलिए मैंने कोशिश की -k

    curl  -k https://www.example.com 
    

    लेकिन निश्चित रूप से त्रुटि मिलती है

    Badauth

मैं अनुमान लगा रहा हूं कि मैं सर्टिफिकेट फाइल में कुछ गड़बड़ कर रहा हूं, लेकिन मुझे नहीं पता कि सर्टिफिकेट फाइल कहां मिलेगी या मेरे पास एक बार इसके साथ क्या करना है।

मुझे निश्चित रूप से एक ब्राउज़र का उपयोग करने में कोई समस्या नहीं है, लेकिन मैं कमांड लाइन के साथ प्रक्रिया को स्वचालित करना चाहूंगा ताकि मैं अपने एंड्रॉइड टैबलेट पर वाईफाई पर टास्कर के साथ ऐसा कर सकूं।

जवाबों:


2

सफलता!!

मैं एक मुफ्त वेब सेवा के माध्यम से चला गया जिसे dnsomatic कहा जाता है (opendns पर लोगों द्वारा चलाया जाता है)

यह एक खाते के लिए साइन अप करने और अपनी सेवाओं में opendns जोड़ने के रूप में सरल है। उससे आगे कोई विन्यास नहीं।

Android उपयोगकर्ताओं के लिए wget के बिजीबॉक्स संस्करण पीछे हैं और उनके पास उपयोगकर्ता नाम और पासवर्ड का उपयोग करने के लिए विकल्प नहीं हैं, इसलिए हमेंURL को स्थापित और उपयोग करना होगा

कर्ल स्थापित करने के लिए गाइड यहां पाया जा सकता है

http://forum.xda-developers.com/showthread.php?t=2362386

एक बार जब आप कर्ल कर लेते हैं, तो आप अपने opendns आईपी को अपडेट करने जैसे काम कर सकते हैं

curl -u opendnsusername:password http://updates.dnsomatic.com/nic/update?hostname=opendnshostname

मैं अभी भी यह पता नहीं लगा सकता हूं कि कर्ल के साथ प्रमाण पत्र कैसे प्राप्त करें और उपयोग करें लेकिन मेरा अंतिम लक्ष्य पूरा हो गया है। हो सकता है कि कोई व्यक्ति प्रमाण पत्र बिट के साथ मदद कर सकता है।
जोशुआ रॉबिसन

1

आप यहाँ से cacert रूट सर्टिफिकेट डाउनलोड कर सकते हैं: http://www.cacert.org/index.php?id=3


1
क्या मैं सिर्फ मूल pem प्रारूप .crt फ़ाइल चुनता हूँ और इसका नाम .pem बदल सकता हूँ?
जोशुआ रॉबिसन

1
जाहिरा तौर पर नहीं। मैंने .crt फ़ाइल डाउनलोड की है जो कहती है कि यह pem प्रारूप में है और इसका नाम बदलकर curlcacert.pem कर दिया और कर्ल --cacert /path/to/curlcacert.pem site.com कर दिया, लेकिन अभी भी प्रमाणित त्रुटियां मिलती हैं।
जोशुआ रॉबिसन

1
एक बार डाउनलोड करने के बाद मैं उनके साथ क्या करूँ? क्या मैं केवल वही प्रमाणपत्र नहीं इस्तेमाल कर सकता जो मेरे ब्राउज़र उपयोग करता है?
जोशुआ रॉबिसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.