मैं एक पुराने NAS बॉक्स मेरे पास है पर एक ड्रॉपबॉक्स अपलोड स्क्रिप्ट है, हाल ही में मैं निम्न त्रुटिअजगर को संदर्भित वर्ष एसएसएल संस्करण
SSL certificate error: [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm
मुझे लगता है कि इस openssl पर पुराना हो चुका जा रहा है की वजह से है हो रही किया गया है बॉक्स
तो मैं openssl डाउनलोड करता हूं, इसे स्रोत से बनाया गया है और इसे स्थापित किया है, अब जब मैं निम्नलिखित चलाता हूं तो यह सही ढंग से अपडेट किया जाता है।
openssl version
OpenSSL 1.0.1h 5 Jun 2014
लेकिन ऐसा लगता है कि पाइथन अभी भी पुराने संस्करण का संदर्भ दे रहा है, मैं इसे कैसे अपडेट करूं?
python -c "import ssl; print ssl.OPENSSL_VERSION"
OpenSSL 0.9.7m 23 Feb 2007
देना चाहिए ओह, 0.9.7 ... आपको 0.9.8 पर माइग्रेट करने की आवश्यकता है। 1.0.1 * बाइनरी संगत नहीं है। – jww
आपको नए ओपनएसएसएल के खिलाफ पायथन को दोबारा जोड़ना होगा। –
@ पॉल - क्या पायथन लिंक स्थिर रूप से करता है? मैंने सोचा कि यह ओपनएसएसएल को गतिशील लिंकिंग का उपयोग करता है। 'मॉड्यूल/Setup.dist' से:' -L $ (SSL)/lib -lssl -lcrypto'। यदि इसकी गतिशीलता है, तो उसे केवल 'LD_PRELOAD' सेट करने की आवश्यकता है, 0.9.8 साझा ऑब्जेक्ट को इंगित करें और फिर पायथन लॉन्च करें। – jww