bg-tutorials

OpenSSL দিয়ে SSL সার্টিফিকেটের মেয়াদ শেষ হওয়ার তারিখ কীভাবে পরীক্ষা করবেন

SSL সার্টিফিকেটের সীমিত বৈধতার মেয়াদ থাকে এবং ব্রাউজারের বিশ্বাসযোগ্যতা বজায় রাখতে নিয়মিত নবায়ন করতে হয়। ১৫ মার্চ, ২০২৬-এর পরে ইস্যু করা পাবলিক সার্টিফিকেট ২০০ দিনের মধ্যে সীমাবদ্ধ, সর্বোচ্চ বৈধতা ১৫ মার্চ, ২০২৭-এ ১০০ দিনে এবং ১৫ মার্চ, ২০২৯-এ ৪৭ দিনে নেমে আসবে। একটি সার্টিফিকেট ঠিক কখন মেয়াদোত্তীর্ণ হবে তা জানা আপনাকে সময়মতো নবায়ন করতে এবং সার্ভিস বিঘ্ন এড়াতে সাহায্য করে।

এই গাইডটি আপনাকে দেখাবে কিভাবে OpenSSL দিয়ে সার্টিফিকেটের মেয়াদ শেষের তারিখ যাচাই করবেন: একটি লাইভ সার্ভারের জন্য, একটি লোকাল ফাইলের জন্য, এবং কিভাবে পরীক্ষা করবেন যে একটি সার্টিফিকেটের মেয়াদ শীঘ্রই শেষ হতে চলেছে কিনা।

দ্রুত উত্তর:

একটি লাইভ ওয়েবসাইটের জন্য, চালান:

echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -enddate. 

একটি সার্টিফিকেট ফাইলের জন্য, চালান:

openssl x509 -in your_certificate.pem -noout -enddate. 

notAfter মানটি হলো মেয়াদ শেষের তারিখ।

পদ্ধতি ১: একটি লাইভ সার্ভারে সার্টিফিকেট যাচাই করুন

এই পদ্ধতিটি একটি চলমান ওয়েবসাইটের সাথে সংযুক্ত হয় এবং এটি যে সার্টিফিকেট সরবরাহ করে তা পড়ে, আপনার সার্টিফিকেট ফাইলের প্রয়োজন নেই। এটি যেকোনো পৌঁছানোযোগ্য হোস্টের জন্য কাজ করে (একটি রিমোট ডোমেইন, বা লোকাল সার্ভারের জন্য সঠিক পোর্ট সহ localhost)।

Linux এবং macOS-এ

echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -enddate

yourdomain.com-এর জায়গায় আপনার আসল ডোমেইন দিন। macOS-এ কমান্ডগুলো একই, কারণ macOS Unix-এর মতো (এর বিল্ট-ইন openssl হলো LibreSSL, যা এই অপশনগুলো সমর্থন করে)।

Windows-এ

  • Command Prompt বা PowerShell খুলুন (Win + R চাপুন, cmd বা powershell টাইপ করুন, এবং Enter চাপুন)।
  • চালান:
echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>nul | openssl x509 -noout -enddate

Windows-এ, ত্রুটি বার্তা বাতিল করতে 2>/dev/null-এর পরিবর্তে 2>nul ব্যবহার করুন।

পদ্ধতি ২: একটি PEM ফাইল থেকে সার্টিফিকেট যাচাই করুন

একটি PEM ফাইল হলো একটি base64-এনকোডেড সার্টিফিকেট যা —–BEGIN CERTIFICATE—– দিয়ে শুরু হয় এবং —–END CERTIFICATE—– দিয়ে শেষ হয়। ডিস্কে সার্টিফিকেট ফাইল থাকলে এই পদ্ধতি ব্যবহার করুন।

Linux এবং macOS-এ

আপনার সার্টিফিকেট ধারণকারী ফোল্ডারে যান, তারপর এর শেষ তারিখ পড়ুন (your_certificate.pem-এর জায়গায় আপনার ফাইলের নাম দিন):

cd /path/to/your/certificate/directory
openssl x509 -in your_certificate.pem -noout -enddate

Windows-এ

cd C:pathtoyourcertificatedirectory
openssl x509 -in your_certificate.pem -noout -enddate

নিশ্চিত করুন যে OpenSSL ইনস্টল করা আছে এবং আপনার PATH-এ রয়েছে; অন্যথায়, openssl.exe বাইনারির সম্পূর্ণ পাথ উল্লেখ করুন।

উভয় তারিখ দেখুন, বা সার্টিফিকেট শীঘ্রই মেয়াদোত্তীর্ণ হবে কিনা পরীক্ষা করুন

ইস্যুর তারিখ (notBefore) এবং মেয়াদ শেষের তারিখ (notAfter) উভয়ই দেখতে, -enddate-এর পরিবর্তে -dates ব্যবহার করুন:

openssl x509 -in your_certificate.pem -noout -dates

একটি নির্দিষ্ট সময়ের মধ্যে সার্টিফিকেটের মেয়াদ শেষ হবে কিনা তা পরীক্ষা করতে, সেকেন্ডের সংখ্যা সহ -checkend ব্যবহার করুন (এখানে, ২৫৯২০০০ সেকেন্ড = ৩০ দিন):

openssl x509 -in your_certificate.pem -noout -checkend 2592000

এটি Certificate will not expire প্রিন্ট করে (এবং স্ট্যাটাস ০ দিয়ে বের হয়) অথবা Certificate will expire (স্ট্যাটাস ১) — যা এটিকে মনিটরিং স্ক্রিপ্ট এবং cron job-এর জন্য আদর্শ করে তোলে।

কমান্ড এবং আউটপুট বোঝা

উদাহরণ হিসেবে লাইভ-সার্ভার কমান্ড এবং এর আউটপুট নিন:

echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -enddate

আউটপুট:

notAfter=Sep 15 23:59:59 2026 GMT

প্রতিটি অংশ কী করে তা এখানে দেওয়া হলো:

  • echo | — ইন্টারঅ্যাকশনের জন্য অপেক্ষা না করে কমান্ডটি শেষ হওয়ার জন্য খালি ইনপুট পাঠায়।
  • openssl s_client — সার্ভারের সাথে একটি SSL/TLS সংযোগ খোলে।
  • -servername example.comServer Name Indication (SNI) সেট করে, যা প্রয়োজন যখন একটি সার্ভার বিভিন্ন ডোমেইনের জন্য একাধিক সার্টিফিকেট হোস্ট করে।
  • -connect example.com:443 — সংযোগ করার হোস্ট এবং পোর্ট (পোর্ট ৪৪৩ হলো স্ট্যান্ডার্ড HTTPS পোর্ট)।
  • 2>/dev/null (Linux/macOS) বা 2>nul (Windows) — ত্রুটি বার্তা বাতিল করে যাতে শুধুমাত্র প্রাসঙ্গিক আউটপুট দেখানো হয়।
  • | openssl x509 -noout -enddate — সার্টিফিকেটটি x509 টুলে পাইপ করে; -noout PEM ডাম্প দমন করে এবং -enddate শুধুমাত্র মেয়াদ শেষের তারিখ প্রিন্ট করে।
  • notAfter=… — তারিখ এবং সময় যখন সার্টিফিকেটটি বৈধ থাকা বন্ধ করে।

স্বয়ংক্রিয় করুন: হাতে তারিখ ট্র্যাক করা বন্ধ করুন

বৈধতার মেয়াদ ৪৭ দিনের দিকে কমে আসার সাথে সাথে ম্যানুয়ালি মেয়াদ শেষের তারিখ পরীক্ষা করার পরিবর্তে, আপনি Certificate-as-a-Service (CaaS) হিসেবে ACME ব্যবহার করতে পারেন। এটি ডোমেইন ভ্যালিডেশন পরিচালনা করে, সার্টিফিকেট ইনস্টল করে এবং মেয়াদ শেষ হওয়ার আগে স্বয়ংক্রিয়ভাবে নবায়ন করে, তাই ম্যানুয়াল হস্তক্ষেপ ছাড়াই আপনার সাইট বিশ্বাসযোগ্য থাকে।

সারসংক্ষেপ

OpenSSL একটি লাইনে সার্টিফিকেটের মেয়াদ শেষের তারিখ পরীক্ষা করে, s_client দিয়ে একটি লাইভ সার্ভার থেকে, বা x509 -enddate দিয়ে একটি ফাইল থেকে, আর -dates এবং -checkend ইস্যুর তারিখ এবং শীঘ্রই মেয়াদোত্তীর্ণ হওয়ার চেক যোগ করে। notAfter ফিল্ডটি আপনাকে ঠিক কখন নবায়ন করতে হবে তা জানায় যাতে আপনি সার্ভিস বিঘ্ন এড়াতে পারেন। নবায়নের জন্য প্রস্তুত হলে, আমাদের SSL সার্টিফিকেট ব্রাউজ করুন

আজ অর্ডার করার সময় SSL শংসাপত্রে 10% সংরক্ষণ করুন!

দ্রুত ইস্যু, শক্তিশালী এনক্রিপশন, 99.99% ব্রাউজার বিশ্বাস, নিবেদিত সমর্থন, এবং 25 দিনের অর্থ ফেরত গ্যারান্টি। কুপন কোড: SAVE10

উড়ন্ত একটি ড্রাগনের একটি বিস্তারিত চিত্র
লিখেছেন

SSL শংসাপত্রে বিশেষজ্ঞ অভিজ্ঞ বিষয়বস্তু লেখক। জটিল সাইবারসিকিউরিটি বিষয়গুলিকে পরিষ্কার, আকর্ষক সামগ্রীতে রূপান্তর করা। প্রভাবশালী বর্ণনার মাধ্যমে ডিজিটাল নিরাপত্তার উন্নতিতে অবদান রাখুন।