"বিশ্বস্ত তালিকায়" স্ব-স্বাক্ষরিত শংসাপত্র যুক্ত করা হচ্ছে


87

আমি আমার বিল্ড সার্ভারের জন্য একটি স্ব-স্বাক্ষরিত শংসাপত্র তৈরি করেছি এবং আমি আমার মেশিনের শংসাপত্রটি বিশ্বব্যাপী বিশ্বাস করতে চাই, যেহেতু আমি নিজেই কী তৈরি করেছি এবং আমি সতর্কতা দেখে অসুস্থ হয়েছি।

আমি উবুন্টু 12.04 এ আছি। আমি কীভাবে শংসাপত্রটি নিতে পারি এবং বিশ্বব্যাপী এটির উপর নির্ভর করতে পারি যাতে ব্রাউজারগুলি (গুগল ক্রোম), সি এল এল ইউটিলিটিস (উইজেট, কার্ল) এবং প্রোগ্রামিং ল্যাঙ্গুয়েজগুলি (পাইথন, জাভা ইত্যাদি) জিজ্ঞাসা না করেই https://mysite.com এ সংযোগটি বিশ্বাস করে প্রশ্ন?


সমস্ত টিএলএস ওপেনএসএসএল এর মাধ্যমে ভেক্টর করা উচিত, যাতে ডকুমেন্টেশন সন্ধানের জন্য এটি জায়গা। এই ক্ষেত্রে: gagravarr.org/writing/openssl-certs/… দরকারী মনে হচ্ছে।
এমএসডব্লিউ

উত্তর:


87

এর সহজ উত্তরটি হ'ল প্রতিটি অ্যাপ্লিকেশন এটিকে আলাদাভাবে পরিচালনা করবে।

এছাড়াও ওপেনএসএসএল এবং জিএনউটিএলএস (স্বাক্ষরিত শংসাপত্রগুলি পরিচালনা করতে ব্যবহৃত সর্বাধিক ব্যবহৃত সার্টিফিকেট প্রসেসিং লাইব্রেরি) তাদের শংসাপত্রগুলির চিকিত্সার ক্ষেত্রে পৃথকভাবে আচরণ করে যা সমস্যাটিকে জটিল করে তোলে। এছাড়াও অপারেটিং সিস্টেমগুলি বেশিরভাগ ওয়েবসাইটে ব্যবহৃত "রুট সিএ" ব্যবহার করতে বিভিন্ন প্রক্রিয়া ব্যবহার করে।

একদিকে, উদাহরণস্বরূপ দেবিয়ানকে দেওয়া। ca-certificatesপ্যাকেজ ইনস্টল করুন :

apt-get install ca-certificates

তারপরে আপনি নিজের অবিশ্বস্ত সিএ শংসাপত্রের জনসাধারণের অর্ধেকটি অনুলিপি করুন (আপনি নিজের সিএসআর স্বাক্ষর করার জন্য যা ব্যবহার করেন) CA শংসাপত্র ডিরেক্টরিতে (মূল হিসাবে):

cp cacert.pem /usr/share/ca-certificates

এবং এটি আপনার শংসাপত্র অন্তর্ভুক্ত সহ ডিরেক্টরিটি পুনর্নির্মাণ করুন, মূল হিসাবে চালিত করুন:

dpkg-reconfigure ca-certificates

এবং askবিকল্পটি নির্বাচন করুন , আপনার শংসাপত্রটিতে স্ক্রোল করুন, এটি অন্তর্ভুক্তির জন্য চিহ্নিত করুন এবং ঠিক আছে নির্বাচন করুন।

বেশিরভাগ ব্রাউজারগুলি তাদের নিজস্ব সিএ ডাটাবেস ব্যবহার করে এবং সুতরাং certutilতাদের সামগ্রীগুলি ( libnss3-toolsপ্যাকেজ দ্বারা সরবরাহ করা ডিবানিতে) সংশোধন করার জন্য সরঞ্জামগুলি ব্যবহার করতে হয় । উদাহরণস্বরূপ, ক্রোমের সাহায্যে আপনি এর লাইনে কিছু চালান:

certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "My Homemade CA" -i /path/to/CA/cert.file

ফায়ারফক্স আপনাকে ডিস্কে শংসাপত্রটি ব্রাউজ করতে, এটি একটি শংসাপত্রের ফাইলটি সনাক্ত করতে এবং তারপরে রুট সিএ তালিকায় এটি আমদানির অনুমতি দেয়।

অন্যান্য কমান্ড যেমন curlকমান্ড লাইন সুইচগুলি ব্যবহার করে আপনি আপনার সিএতে নির্দেশ করতে পারেন,

 curl --cacert  /path/to/CA/cert.file https://...

বা এসএসএলের বৈধতা পুরোপুরি ফেলে দিন

 curl --insecure https://...

এই ca-certificatesজাতীয় কৌশলটি যদি সেই নির্দিষ্ট অ্যাপ্লিকেশনের জন্য বাছাই না করে তবে বাকিদের পৃথক পৃথক তদন্ত প্রয়োজন ।


এছাড়াও, এখানে উল্লিখিত হিসাবে , জাভা জন্য সিএ শংসাপত্র যুক্ত একইভাবে একটি পৃথক বিষয়।
নাফতুলি কে ২

2
শংসাপত্রটি / ইউএসআর / শেয়ার / সিএ-শংসাপত্রগুলিতে অনুলিপি করার পরে, আমি এটি dpkg-reconfigure ca-certificatesতালিকায় দেখতে পাচ্ছি না । আমি কি ভুল করছি?
জর্জেস ডুপোরন

18
@ জর্জেসডুপারন আমার সাথে এটি ঘটেছে। আমি থেকে যা নিশ্চিতভাবে ঘটবে পুনঃনামকরনের দ্বারা এটি সমাধান whatever.pemকরার জন্য whatever.crt
হ্যালো ওয়ার্ল্ড


2
এফওয়াইআই, আমার নামে একটি শংসাপত্র ফাইল ছিল .cer, এবং এটি কার্যকর হয়নি। এটি .crtস্বীকৃত হওয়ার জন্য আমাকে এটির নামকরণ করতে হয়েছিল ।
ত্রি এনগুইন

53

অ ইন্টারেক্টিভ পদ্ধতির

অ-ইন্টারেক্টিভ প্রসঙ্গে (যেমন একটি শেফ রেসিপি) ব্যবহারের জন্য আপনি নিম্নলিখিত ক্রমটি ব্যবহার করতে পারেন।

sudo cp my.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
  • পরীক্ষিত এবং ডেবিয়ান 5/6 এবং উবুন্টু 14.04 এ কাজ করে।
  • আরও তথ্যের জন্য, দেখুন man update-ca-certificates

এই পদ্ধতিটি @ দ্রাবের পদ্ধতির চেয়ে বেশি পছন্দ করা হয়, যেহেতু /usr/share/সাধারণত ওএস / দ্বারা যুক্ত ফাইলগুলির জন্য সংরক্ষিত থাকে apt-get


4
/usr/local/share/ca-certificates/ম্যান পেজগুলিতে উল্লিখিত ফাইলগুলিতে অনুলিপি করা ভাল
অর্টাং

3
এফওয়াইআই-এ অবশ্যই একটি হতে হবে .crt, আমি পেয়েছি .certদাবি করেছে এটি যুক্ত হয়েছে তবে সহায়তা করেনি
কেসিডি

6

ফেডোরা 23-তে, .pem বা .der ফাইলটি যুক্ত করুন /etc/pki/ca-trust/source/anchors/এবং রান করুন sudo update-ca-trust extract

দেখুন man update-ca-trustকিনা যেমন ব্যবহার / etc অথবা / usr বিস্তারিত জানার জন্য।


4

সেন্টোতে:

cp *.pem /etc/pki/ca-trust/source/anchors/
update-ca-trust extract

আমি কখন openssl connectএই / অ্যাঙ্কার্স ফোল্ডারটি নির্দিষ্ট করব? আমি এখনও একটি ত্রুটি self signed certs
পাচ্ছি

2


সাম্প্রতিক ডেবিয়ান ভিত্তিক সিস্টেমগুলির জন্য অ ইন্টারেক্টিভ অ্যাপ্রোচ (অক্টোব 18)

হোস্টের স্টোরগুলিতে একটি শংসাপত্র যুক্ত করা এবং এটি সক্রিয় করার মধ্যে পার্থক্য রয়েছে যাতে অ্যাপ্লিকেশনগুলি সেগুলিকে সত্যই ব্যবহার করে। স্টোরটিতে বিদ্যমান বিদ্যমান শংসাপত্রটি অগত্যা ব্যবহৃত হয় না (যদিও আমাকে স্বীকার করতে হবে যে এখনও অনেকগুলি প্যাকেজ এটি যেভাবেই ভুল হয়ে পড়েছে )
এটি বিভ্রান্ত হতে পারে যখন আপনি এমন একটি প্যাকেজ সেটআপ করেন যা /etc/ca-certificate.confকেবল আপনার সার্টিটি ব্যবহার করতে অস্বীকার করে তবে তা এতে রয়েছে ত্রুটি ছাড়াই যুক্ত করা হয়েছে। আপনার update-ca-certificatesস্পষ্ট করে বলতে হবে (কেবল অনুলিপি নয়) প্রত্যয়টি এটিতে যুক্ত করে /etc/ca-certificate.confবা এটি সক্রিয় করুন /etc/ca-certificate/update.d

CERT=mycert.crt
cp /mypath/to/$CERT /usr/share/ca-certificates/$CERT
    # notice the + sign which tells to activate the cert!!!
echo "+$CERT" >/etc/ca-certificates/update.d/activate_my_cert
dpkg-reconfigure ca-certificates;

এখন এখানে বিভ্রান্ত হয়ে ওঠে কারণ আলাদাভাবে অন্য কোনও পথ ব্যবহার করে কোনও শংসাপত্রকে স্পষ্টভাবে বিশ্বাস করার উপায় রয়েছে:

CERT=mycert.crt
cp /mypath/to/$CERT /usr/local/share/ca-certificates/$CERT
update-ca-certificates;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.