উবুন্টু 14.04 এ কার্ল দিয়ে সিএ সার্ট সমস্যাগুলি কীভাবে ঠিক করবেন?


14

আমি উবুন্টু 14.04 ব্যবহার করছি। আমি যখন কার্ল ব্যবহার করি তখন আমি নিম্নলিখিত ত্রুটিটি পাই:

curl: (77) error setting certificate verify locations: CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath:

গুগলিং থেকে আমি যা সংগ্রহ করি, সেখান থেকে ক্যাফাইলের অবস্থানটি উবুন্টুর পক্ষে সঠিক নয় (এবং এটি আমার কম্পিউটারে বিদ্যমান নেই), /etc/ssl/certs/ca-certificates.crtসঠিক অবস্থান।

বেশিরভাগ সমাধানগুলিতে পরিবেশের পরিবর্তনশীলকে CURL_CA_BUNDLEসঠিক স্থানে সেট করা, বা আমার হোম ডিরেক্টরিতে cacert=/etc/ssl/certs/ca-certificates.crt(নতুন তৈরি করা) .curlrcফাইল যুক্ত করা জড়িত । আমি উভয়ই চেষ্টা করেছি, এবং উভয়ই পুরোপুরি সমস্যার সমাধান করিনি। কার্ল এই অবস্থানটি সন্ধান করছে তবে ত্রুটিটি প্রদান করে এটি এখনও কাজ করে না:

curl: (60) SSL certificate problem: self signed certificate in certificate chain

আমি উবুন্টুতে কার্ল আনইনস্টল ও পুনরায় ইনস্টল করার চেষ্টা করেছি এবং আমার সিএ শংসাপত্রগুলি $ sudo update-ca-certificates --fresh আপডেট করে যা শংসাপত্রগুলি আপডেট করেছে, তবে তবুও ত্রুটি করিনি 60 টি চলে যায়।

সিএ শংসাপত্র সম্পর্কে আমি তেমন জ্ঞানী নই, এবং সন্দেহের সাথে আমি অতীতে উদ্দেশ্যমূলকভাবে কিছু স্বাক্ষরিত শংসাপত্র যুক্ত করেছি। দুর্ঘটনাক্রমে সম্ভবত, আমি জানি না।

কেউ কীভাবে এটি ঠিক করতে জানেন? আমার সমস্ত শংসাপত্রের সাথে নতুনভাবে শুরু করার কোনও উপায় আছে কি? বা কেউ কী করেও জানেন যে আমি এই স্ব-স্বাক্ষরিত শংসাপত্রটি কোথায় তা সন্ধান করার চেষ্টা করব এবং কীভাবে এটি সরিয়ে ফেলব?

পিএস: আমি-কে (ওরফে - ইনসিকিউর) পতাকাটি ব্যবহার করতে চাই না। আমি নিরাপদে এ কাজ পেতে চাই।

উত্তর:


11

গত কয়েক দিন ধরে গবেষণা এবং এ নিয়ে কাজ করার পরে আমি এটি কাজ করতে পেরেছিলাম, এবং উত্তরটি বরং সহজ হয়ে গেল।

capath=/etc/ssl/certs/আমার .curlrcফাইলটি সেট করা দরকার ছিল ।

এটি কমান্ড লাইনে কাজ করে কার্ল হয়ে গেল। আর-তে কাজ করার জন্য আরও কার্ল হয়ে উঠার জন্য (যেখানে আমি প্রথম সমস্যার মুখোমুখি হয়েছিলাম) cacert=/etc/ssl/certs/ca-certificates.crtআমার .curlrcফাইলে থাকাও আগে চেষ্টা করা দরকার, অন্যথায় এটি সন্ধান করা অবিরত ছিল/etc/pki/tls/certs/ca-bundle.crt

স্ব-স্বাক্ষরিত শংসাপত্রগুলি সম্পর্কে কেন ত্রুটিটি দেখছিলাম তা এখনও আমার জানা নেই।

কিছু অন্যান্য এলোমেলো অনুসন্ধানের ভিত্তিতে আমি কার্ল ওয়েবসাইট থেকে একটি শংসাপত্রও ডাউনলোড করেছি:

sudo wget http://curl.haxx.se/ca/cacert.pem

একই certsডিরেক্টরিতে। রয়ে cafileসরু এই হিসাবে ভাল কাজ করে। শেষ পর্যন্ত আমি এটিকে পিছনে ফেলেছি ca-certificates.crtএবং এটি এখনও কার্যকর হয়।

আমি কেন বুঝতে পারছি না কেন এটি কাজ করেছে বা কী চলছে, তবে এটি সমাধান হয়েছে।


9

ক্যাফিল কীটি আমার জন্য কাজ করে না (কার্ল 7.৪৫.০) তবে ক্যাসার্ট (--cacert বিকল্প থেকে) কাজ করে। আমার .curlrc ফাইল:

capath=/etc/ssl/certs/
cacert=/etc/ssl/certs/ca-certificates.crt

1
এটি আমার জন্য উবুন্টু 16.04 এ কাজ করেছিল!
জাস্ট ডাবকেন

0

উবুন্টু 14.04.5-তে আমাদের একটি সি ++ প্রোগ্রামের সাথে আমরা একই সমস্যার মুখোমুখি হয়েছি। .Curlrc পদ্ধতি প্রভাব গ্রহণ করা হয় নি।

এই ডাউনলোড করে সমাধান করা হয়েছে CA-certificates.crt করার /etc/ssl/certs/ca-certificates.crt এবং একটি সিম্বলিক লিঙ্ক তৈরি CA-bundle.crt অধীনে etc / pki / TLS / শংশাপত্র / / ডিরেক্টরি।

আশাকরি এটা সাহায্য করবে!


0

কয়েকবার গবেষণা করার পরে আমি এটি কাজ করেছিলাম, এবং উত্তরটি বরং একটি সাধারণ হিসাবে শেষ হয়েছে। ধাপে ধাপে

Step:1 Open terminal ctrl+alt+t
Step:2 cd /etc/ssl/certs/
Step:3 sudo wget http://curl.haxx.se/ca/cacert.pem 

ধাপ 3 PEM ফাইল ডাউনলোড করবে শংশাপত্র ফোল্ডারের

  Step 4: Check if .curlrc file is available in your home folder or not. 

.curlrc একটি লুকানো ফাইল। হোম ডিরেক্টরিতে ctrl + h দ্বারা চেক করুন check যদি না থাকে তবে টার্মিনাল প্রকারে

Step 5:  nano ~/.curlrc 
Step 6: Now paste the below lines in the open file
        capath=/etc/ssl/certs/
        cacert=/etc/ssl/certs/ca-certificates.crt
Step 7: Now save the file and do your things using curl command.

এনবি এখানে আমি ন্যানো সম্পাদক ব্যবহার করেছি তবে আপনি যে কোনও সম্পাদক ব্যবহার করতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.