উইন্ডোতে স্বতঃ স্বাক্ষরিত শংসাপত্রগুলির মাধ্যমে আমাকে প্রদত্ত উত্তরগুলি এবং আরও সংস্থানসমূহ থেকে বিট এবং টুকরো একত্রিত করে আমার পথ ধাঁধাতে হয়েছিল। এখানে আমার নিজস্ব (এবং আশা করি সম্পূর্ণ) ওয়াক-থ্রু রয়েছে। আশা করি এটি আমার নিজের বেদনাদায়ক শিক্ষার বক্ররেখা কিছুটা ছাড়িয়ে দেবে। এটিতে সম্পর্কিত বিষয়গুলিতে ইনফোগুলি রয়েছে যা আপনি নিজের শংসাপত্রগুলি তৈরি করার পরে তাড়াতাড়ি বা পরে পপআপ হবে।
উইন্ডোজ 10 এবং নীচে স্ব-স্বাক্ষরিত শংসাপত্র তৈরি করুন
Makecert.exe ব্যবহার করবেন না। এটি মাইক্রোসফ্ট দ্বারা অবচয় করা হয়েছে।
আধুনিক উপায়ে একটি পাওয়ারশেল কমান্ড ব্যবহার করা হয়েছে।
উইন্ডোজ 10:
প্রশাসকের সুবিধাসহ পাওয়ারশেল খুলুন:
New-SelfSignedCertificate -DnsName "*.dev.local", "dev.local", "localhost" -CertStoreLocation cert:\LocalMachine\My -FriendlyName "Dev Cert *.dev.local, dev.local, localhost" -NotAfter (Get-Date).AddYears(15)
উইন্ডোজ 8, উইন্ডোজ সার্ভার 2012 আর 2:
এই সিস্টেমে পাওয়ারশেল -FenderlyName এবং -NotAfter পরামিতি বিদ্যমান নেই। উপরের কমান্ড লাইন থেকে কেবল তাদের সরান।
প্রশাসকের সুবিধাসহ পাওয়ারশেল খুলুন:
New-SelfSignedCertificate -DnsName "*.dev.local", "dev.local", "localhost" -CertStoreLocation cert:\LocalMachine\My
একটি বিকল্প নীচে পুরানো উইন্ডোজ সংস্করণ জন্য পদ্ধতি ব্যবহার করা হয়, যা আপনি শংসাপত্র তৈরির জন্য উইন 10 এর সমস্ত বৈশিষ্ট্য ব্যবহার করতে পারবেন ...
পুরানো উইন্ডোজ সংস্করণ:
পুরানো উইন্ডোজ সংস্করণগুলির জন্য আমার সুপারিশটি হ'ল একটি উইন 10 মেশিনে শংসাপত্র তৈরি করা, এটি একটি এমএমসি উদাহরণ ব্যবহার করে একটি .PFX ফাইলে রফতানি করা (নীচে "শংসাপত্রের উপর বিশ্বাস করুন" দেখুন) এবং লক্ষ্য মেশিনের শংসাপত্রের দোকানে এটি দিয়ে আমদানি করা পুরানো উইন্ডোজ ওএস শংসাপত্রটি আমদানি করতে ডানদিকে ক্লিক করুন না। প্রসঙ্গ মেনুতে একটি "আমদানি শংসাপত্র" আইটেম থাকলেও এটি উইন সার্ভার ২০০৮ এ এটি ব্যবহার করতে আমার সমস্ত পরীক্ষায় ব্যর্থ হয়েছিল Instead পরিবর্তে লক্ষ্য মেশিনে অন্য একটি এমএমসি উদাহরণ খুলুন, "শংসাপত্রগুলি (স্থানীয় কম্পিউটার) / ব্যক্তিগত / শংসাপত্রসমূহ" এ নেভিগেট করুন , মাঝের ফলকে ডান ক্লিক করুন এবং সমস্ত কার্য → আমদানি নির্বাচন করুন।
ফলাফল শংসাপত্র
উপরের দুটি নির্দেশই ডোমেনগুলির জন্য একটি শংসাপত্র তৈরি করে localhost
এবং *.dev.local
।
উইন 10 সংস্করণটির অতিরিক্ত 15 বছর লাইভ সময় এবং "দেব সার্ট * .দেব.লোকাল, দেব.লোকাল, লোকালহোস্ট" এর একটি পঠনযোগ্য ডিসপ্লে নাম।
আপডেট: আপনি যদি প্যারামিটারে একাধিক হোস্টনাম এন্ট্রি সরবরাহ করেন -DnsName
(উপরে দেখানো হয়েছে) এই এন্ট্রিগুলির মধ্যে প্রথমটি ডোমেনের সাবজেক্টে (একে একে সাধারণ নাম) হয়ে যাবে। সমস্ত হোস্টনাম এন্ট্রিগুলির সম্পূর্ণ তালিকা শংসাপত্রের সাবজেক্ট বিকল্প বিকল্প নাম (SAN) ক্ষেত্রে সংরক্ষণ করা হবে। (এটি নির্দেশ করার জন্য @ বেনসওয়ার্ডসকে ধন্যবাদ জানাই।)
তৈরির পরে শংসাপত্রটি তাত্ক্ষণিকভাবে আইআইএসের কোনও HTTPS বাইন্ডিংগুলিতে উপলব্ধ হবে (নীচের নির্দেশাবলী)।
শংসাপত্র বিশ্বাস
নতুন সার্টটি বিশ্বাসের কোনও শৃঙ্খলার অংশ নয় এবং সুতরাং কোনও ব্রাউজার দ্বারা এটি বিশ্বাসযোগ্য বলে বিবেচিত হয় না। এটি পরিবর্তন করতে, আমরা আপনার মেশিনে বিশ্বাসযোগ্য রুট সিএর জন্য শংসাপত্রের দোকানে শংসাপত্রটি অনুলিপি করব:
Mmc.exe খুলুন, ফাইল Sn স্ন্যাপ-ইন যুক্ত / সরান left বাম কলামে "শংসাপত্রগুলি" চয়ন করুন → "কম্পিউটার অ্যাকাউন্ট" নির্বাচন করুন → পরবর্তী → "স্থানীয় কম্পিউটার ..." ish সমাপ্ত → ঠিক আছে
বাম কলামে "শংসাপত্রগুলি (স্থানীয় কম্পিউটার) / ব্যক্তিগত / শংসাপত্রগুলি" নির্বাচন করুন।
সদ্য নির্মিত সেরিটটি সন্ধান করুন (উইন 10 এ "বন্ধুত্বপূর্ণ নাম" কলামে সহায়তা করতে পারে)।
এই শংসাপত্রটি নির্বাচন করুন এবং ক্লিপবোর্ডে অনুলিপি করতে Ctrl-C টিপুন।
বাম কলামে "শংসাপত্রগুলি (স্থানীয় কম্পিউটার) / বিশ্বস্ত রুট সিএ / শংসাপত্রগুলি" নির্বাচন করুন।
এই স্টোরটিতে আপনার শংসাপত্র আটকানোর জন্য Ctrl-V টিপুন।
শংসাপত্রটি বিশ্বস্ত রুট কর্তৃপক্ষের তালিকায় উপস্থিত হওয়া উচিত এবং এখন এটি বিশ্বাসযোগ্য হিসাবে বিবেচিত হবে।
আইআইএস-এ ব্যবহার করুন
এখন আপনি আইআইএস ম্যানেজারের কাছে যেতে পারেন, স্থানীয় ওয়েবসাইটের বাইন্ডিংগুলি নির্বাচন করুন → ফর্মের একটি হোস্টের নাম লিখুন → যোগ করুন → https myname.dev.local
((আপনার *.dev.local
শংসাপত্রটি কেবলমাত্র এর জন্য বৈধ ) এবং নতুন শংসাপত্রটি নির্বাচন করুন → ঠিক আছে।
হোস্টগুলিতে যুক্ত করুন
আপনার হোস্টের নাম সি: \ উইন্ডোজ \ সিস্টেম 32 \ ড্রাইভার \ ইত্যাদি \ হোস্টে যুক্ত করুন:
127.0.0.1 myname.dev.local
খুশি
এখন Chrome এবং IE এর শংসাপত্রটিকে বিশ্বাসযোগ্য হিসাবে ধরা উচিত এবং আপনি যখন খুলবেন তখন আপনার ওয়েবসাইটটি লোড করা উচিত https://myname.dev.local
।
ফায়ারফক্স তার নিজস্ব শংসাপত্রের দোকান বজায় রাখে। আপনার শংসাপত্রটি এখানে যুক্ত করতে, আপনাকে এফএফ-তে আপনার ওয়েবসাইটটি খুলতে হবে এবং এফএফ আপনাকে শংসাপত্র সম্পর্কে সতর্ক করার সময় ব্যতিক্রম করতে হবে।
এজ ব্রাউজারের জন্য আরও ক্রিয়া প্রয়োজন হতে পারে (আরও নীচে দেখুন)।
শংসাপত্র পরীক্ষা করুন
আপনার শংসাপত্রগুলি পরীক্ষা করতে, ফায়ারফক্স আপনার সেরা পছন্দ। (বিশ্বাস করুন, আমি নিজে ক্রোম-ফ্যান-বয়, তবে এফএফ এ ক্ষেত্রে আরও ভাল)
এখানে কারণগুলি:
- ফায়ারফক্স তার নিজস্ব এসএসএল ক্যাশে ব্যবহার করে যা শিফট-লোডে মুছে যায়। সুতরাং আপনার স্থানীয় ওয়েবসাইটগুলির শংসাপত্রগুলিতে যে কোনও পরিবর্তন এফএফ-এর সতর্কতার সাথে সাথে প্রতিফলিত হবে, অন্য ব্রাউজারগুলিতে উইন্ডোজ এসএসএল ক্যাশে পুনরায় চালু করতে বা ম্যানুয়াল শোধনের প্রয়োজন হতে পারে।
- এছাড়াও এফএফ আপনাকে আপনার শংসাপত্রের বৈধতা যাচাই করার জন্য কিছু মূল্যবান ইঙ্গিত দেয়: যখন এফএফ এর শংসাপত্রের সতর্কতা দেখায় তখন অ্যাডভান্সড এ ক্লিক করুন। এফএফ আপনাকে পাঠ্য ব্লকের কেন্দ্রীয় লাইনে এক বা একাধিক সম্ভাব্য সতর্কতা সহ একটি ছোট পাঠ্য ব্লক প্রদর্শন করবে:
শংসাপত্রটি বিশ্বস্ত নয় কারণ এটি স্ব-স্বাক্ষরিত।
এই সতর্কতা সঠিক! উপরে উল্লিখিত হিসাবে, ফায়ারফক্স উইন্ডোজ শংসাপত্রের দোকান ব্যবহার করে না এবং কেবলমাত্র এই শংসাপত্রকে বিশ্বাস করবে, যদি আপনি এটির জন্য ব্যতিক্রম যুক্ত করেন। এটি করার বোতামটি সতর্কবার্তার ঠিক নীচে।
শংসাপত্র নামের জন্য বৈধ নয় ...
এই সতর্কতাটি দেখায়, আপনি কিছু ভুল করেছেন। আপনার শংসাপত্রের (ওয়াইল্ডকার্ড) ডোমেনটি আপনার ওয়েবসাইটের ডোমেনের সাথে মেলে না। সমস্যাটি অবশ্যই আপনার ওয়েবসাইটের (সাব) ডোমেন পরিবর্তন করে বা একটি নতুন শংসাপত্রের সাথে মেলে যা সমাধান করে be বাস্তবে আপনি এফএফ-তে একটি ব্যতিক্রম যুক্ত করতে পারেন এমনকি শংসাপত্রটি মেলে না, তবে আপনি ক্রোমে কখনই এই জাতীয় সংমিশ্রণ সহ একটি সবুজ প্যাডলক প্রতীক পাবেন না।
ফায়ারফক্স এই স্থানে আরও অনেক দুর্দান্ত এবং বোধগম্য শংসাপত্রের সতর্কতা প্রদর্শন করতে পারে যেমন মেয়াদোত্তীর্ণ শংসাপত্র, পুরানো স্বাক্ষরকারী অ্যালগরিদম সহ শংসাপত্র ইত্যাদি etc. আমি কোনও ব্রাউজার খুঁজে পাই নি যা আমাকে কোনও স্তরের সমস্যার সমাধান করতে সেই স্তরটির প্রতিক্রিয়া জানায়।
কোন (উপ-) ডোমেন প্যাটার্নটি বিকাশের জন্য বেছে নেওয়া উচিত?
উপরের নিউ-সেলফিস্টের্টিফিকেট কমান্ডে আমরা ওয়াইল্ডকার্ড ডোমেনটি ব্যবহার করেছি *.dev.local
।
আপনি ভাবতে পারেন: কেন ব্যবহার *.local
করবেন না ?
সাধারণ কারণ: এটি একটি ওয়াইল্ডকার্ড ডোমেন হিসাবে অবৈধ।
ওয়াইল্ডকার্ড শংসাপত্রগুলিতে অবশ্যই কমপক্ষে একটি দ্বিতীয় স্তরের ডোমেন নাম থাকা উচিত ।
সুতরাং, ফর্মের ডোমেনগুলি *.local
HTTP ওয়েবসাইটগুলি বিকাশ করতে দুর্দান্ত to তবে এইচটিটিপিএসের পক্ষে তেমন কিছু নয়, কারণ আপনি যে প্রতিটি নতুন প্রকল্প শুরু করবেন তার জন্য নতুন ম্যাচিং শংসাপত্র জারি করতে বাধ্য হবেন।
গুরুত্বপূর্ণ দিক নোট:
- বৈধ হোস্ট ডোমেনগুলিতে কেবলমাত্র ট্রট জেড, ডিজিট, হাইফেন এবং বিন্দু থাকতে পারে। কোন আন্ডারস্কোর অনুমোদিত নয়! কিছু ব্রাউজারগুলি এই বিশদটি সম্পর্কে সত্যই পছন্দসই এবং যখন তারা আপনার ডোমেনটিকে
motör_head.dev.local
আপনার ওয়াইল্ডকার্ডের সাথে মেলে না বলে দৃub়তার সাথে অস্বীকার করে তখন আপনাকে একটি শক্ত সময় দিতে পারে*.dev.local
। আপনি যখন স্যুইচ করবেন তখন এগুলি মেনে চলবে motoer-head.dev.local
।
- শংসাপত্রের একটি ওয়াইল্ডকার্ড কোনও ডোমেনে কেবলমাত্র একটি লেবেল (= দুটি বিন্দুর মধ্যে বিভাগ) এর সাথে মিলবে, এর চেয়ে বেশি কখনও নয়।
*.dev.local
ম্যাচ myname.dev.local
কিন্তু না other.myname.dev.local
!
- বহু স্তরের ওয়াইল্ডকার্ড (
*.*.dev.local
) শংসাপত্রগুলিতে সম্ভব নয় NOT সুতরাং other.myname.dev.local
কেবল ফর্মের একটি ওয়াইল্ডকার্ড দ্বারা আচ্ছাদিত করা যেতে পারে *.myname.dev.local
। ফলস্বরূপ, সামনের স্তরের ডোমেন অংশটি ব্যবহার না করা ভাল। আপনার সমস্ত প্রকরণকে তৃতীয় স্তরের অংশে রাখুন। এইভাবে আপনি আপনার সমস্ত ডেভ সাইটের জন্য একক শংসাপত্র সহ পাবেন।
এজ নিয়ে সমস্যা
এটি সত্যিকারের স্ব-স্বাক্ষরিত শংসাপত্রগুলির সম্পর্কে নয়, তবে এখনও পুরো প্রক্রিয়াটির সাথে সম্পর্কিত:
উপরের পদক্ষেপগুলি অনুসরণ করার পরে, আপনি খোলার সময় এজ কোনও সামগ্রী প্রদর্শন করতে পারে না myname.dev.local
।
কারণটি হ'ল আধুনিক অ্যাপ্লিকেশনগুলির জন্য উইন্ডোজ 10 এর নেটওয়ার্ক পরিচালনার একটি বৈশিষ্ট্যযুক্ত বৈশিষ্ট্য, যার নাম "নেটওয়ার্ক বিচ্ছিন্নতা"।
এই সমস্যাটি সমাধান করার জন্য, প্রশাসকের সুবিধাসহ কমান্ড প্রম্পটটি খুলুন এবং নিম্নলিখিত কমান্ডটি একবার প্রবেশ করুন:
CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe
এজ এবং নেটওয়ার্ক বিচ্ছিন্নতা সম্পর্কে আরও ইনফোগুলি এখানে পাওয়া যাবে:
https://blogs.msdn.microsoft.com/msgulcommune/2015/07/01/how-to-debug-localhost-on-microsoft-edge/
makecert.exe
করতে হয়েছিল। শংসাপত্রগুলির জন্য আমি ভেবেছিলাম যে আমি আরও সুরক্ষিত এবং ব্যবহার করব-a SHA512 -len 8192
- এটি তৈরি করতে চিরকাল লেগেছিল। এবং যেহেতু আমার সন্দেহ হয়েছিল এটি হতে পারে, এটি আইআইএস কোন স্তরের এনক্রিপশন ব্যবহার করে তার শূন্য প্রভাব ফেলেছিল। ডিফল্টরূপে আইআইএস 128-বিট ব্যবহার করে, এটি পরিবর্তন করতে আপনাকে গ্রুপ পলিসি স্টাফ করতে হবে। অন্যান্য পাঠকদের আরও উল্লেখ করুন: যাদুর সংখ্যাগুলি পরে পরিবর্তন করবেন না-eku
, সেগুলি প্রয়োজনীয়।