क्यों SSL प्रमाणपत्रों को सत्यापित नहीं करता है?


19

मुझे अपने फेडोरा 8 इंस्टॉलेशन की समस्या है । ऐसा लगता है कि wgetएसएसएल प्रमाणपत्रों को किसी भी तरह से सत्यापित करना नहीं जानता है। यह अजीब है क्योंकि मेरे पास एक और फेडोरा 8 बॉक्स है जो मुझे लगता है कि एक ही कॉन्फ़िगरेशन है और यह काम करता है!

मैं --no-check-certificateस्विच का उपयोग किए बिना इसे कैसे काम कर सकता हूं ?

यह एक नमूना आउटपुट है:

wget https://www.google.com
--2011-09-23 00:11:13--  https://www.google.com/
Resolving www.google.com... 74.125.230.146, 74.125.230.147, 74.125.230.148, ...
Connecting to www.google.com|74.125.230.146|:443... connected.
ERROR: cannot verify www.google.com's certificate, issued by `/C=ZA/O=Thawte Consulting (Pty) Ltd./CN=Thawte SGC CA':
  Unable to locally verify the issuer's authority.
To connect to www.google.com insecurely, use `--no-check-certificate'.
Unable to establish SSL connection.

संपादित करें

मेरे पास यह फ़ाइल /etc/pki/tls/certs/ca-bundle.crtफ़ाइल है और जब मैं इस फ़ाइल की ओर इशारा करते हुए स्विच के wgetसाथ चलता हूं तो --ca-certificateसब कुछ ठीक हो जाता है। इस फ़ाइल को कहाँ रखा जाना चाहिए ताकि मुझे स्विच का उपयोग करने की आवश्यकता न हो?

BTW: curlऔर linksठीक काम, लेकिन lynxयह भी शिकायत करता है: "एसएसएल त्रुटि: स्थानीय जारीकर्ता प्रमाण पत्र प्राप्त करने में असमर्थ" तो यह केवल यह नहीं है wget...


4
आपके पास Fedora 8 इंस्टॉलेशन क्यों है?
इग्नासियो वाज़क्वेज़-अब्राम्स

1
फेडोरा 9, 10, 11, 12, और 13 अब भी समर्थित नहीं हैं।
सइयोजोज

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

आपके द्वारा उपयोग किए जा रहे wget का संस्करण क्या है?
2

GNU Wget 1.11.1 (Red Hat संशोधित)
tomazy

जवाबों:


11

डिफ़ॉल्ट रूप से wssll conf file /etc/pki/tls/openssl.cnf में परिभाषित पथ में प्रमाण पत्र के लिए जाँच करेगा (यह निश्चित नहीं है कि पथ fc8 के लिए सही है या नहीं)। कृपया खुलता कॉन्फ़िगरेशन फ़ाइल की जाँच करें और पुष्टि करें कि पथ सही हैं। हो सकता है कि यह ओपनसेल हो, जिसे ठीक करने की जरूरत है।


यह Opensl के साथ एक समस्या थी - cert.pem फ़ाइल / etc / pki / tls में गायब थी। धन्यवाद
tomazy

5

आपका सिस्टम Google के प्रमाणपत्र के लिए हस्ताक्षर श्रृंखला पर भरोसा नहीं करता है।

वे भी पूर्ण प्रमाण पत्र श्रृंखला प्रस्तुत नहीं कर रहे हैं, बस उनके जारीकर्ता का प्रमाण पत्र; 100% तक नहीं, लेकिन निश्चित रूप से कुछ भी नहीं है जो आपको श्रृंखला को मान्य करने से रोकना चाहिए।

आपके प्राचीन सिस्टम में विश्वसनीय रूट प्रमाणपत्र अधिकारियों के समान रूप से प्राचीन सेट होने की संभावना है।

सही वेरिसाइन सर्टिफिकेट ( यहां ) पर भरोसा करें , और आपको अच्छा होना चाहिए।


मैं वास्तव में VeriSign सर्टिफिकेट पर "विश्वास" कैसे करूं?
टोमैजी

शायद अंदर डालने की जरूरत है /etc/ssl/certs
शेन मैडेन

यह डायर अस्तित्व में नहीं था, लेकिन मैंने इसे बनाया और प्रमाणित फ़ाइलों की प्रतिलिपि बनाई - यह मदद नहीं करता :(
अक्टूबर को tomazy

निश्चित नहीं है कि प्रमाणपत्र निर्देशिका उस OS में कहाँ स्थित है, फिर। grepचारों ओर!
शेन मैडेन

4

आप रूट प्रमाणपत्र की एक सूची इकट्ठा है कि आप विश्वास करना चाहते हैं और बताने की आवश्यकता wgetया तो का उपयोग कर उन्हें खोजने के लिए कैसे --ca-certificateया --ca-directoryविकल्प। /etc/pki/tls/certsयदि आपके पास उपयुक्त पैकेज स्थापित है तो आपके पास पहले से ही एक हो सकता है।


4

मुझे अपने प्रमाणपत्र नहीं मिलने के कारण समस्या थी इसलिए मैंने सीए-सर्टिफिकेट लगाए

sudo apt install ca-certificates

तब मैंने संपादित किया:

sudo vi /etc/wgetrc

और जोड़ा

ca_directory=/etc/ssl/certs

या आप इस कमांड का उपयोग इसे अंत तक करने के लिए कर सकते हैं:

printf "\nca_directory=/etc/ssl/certs" | sudo tee -a /etc/wgetrc

1
वैकल्पिक रूप से यह मेरे लिए काम करता है अगर मैं उपयोग करता हूं, wget https://myurl --ca-directory=/etc/ssl/certs/लेकिन मैं हर बार टाइप नहीं करना चाहता हूं, तो इसके लिए किसी को भी समय नहीं मिला ;-)
Jared
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.