এই টিউটোরিয়ালে দেখানো হয়েছে কীভাবে OpenSSL কমান্ড লাইন ব্যবহার করে LiteSpeed-এ CSR তৈরি করবেন।
LiteSpeed Web Server (LSWS Enterprise) এবং OpenLiteSpeed-এ কোনো বিল্ট-ইন CSR উইজার্ড নেই: এদের WebAdmin কনসোল একটি বিদ্যমান প্রাইভেট কী এবং সার্টিফিকেটের ফাইল পাথ প্রত্যাশা করে। আপনি LiteSpeed হোস্টে OpenSSL দিয়ে দুটি ফাইলই তৈরি করেন, CSR-টি আপনার Certificate Authority-তে জমা দেন, এরপর ইস্যুকৃত সার্টিফিকেট এবং সংশ্লিষ্ট কী-টি লিসেনারের SSL ট্যাবে রেফারেন্স করেন।
নিচের ধাপগুলো LiteSpeed হোস্ট করে এমন প্রতিটি আধুনিক Linux ডিস্ট্রিবিউশনে কাজ করে (Ubuntu, Debian, RHEL, AlmaLinux, Rocky Linux, CentOS Stream, CloudLinux), কারণ প্রতিটিতেই OpenSSL 1.1.1 বা OpenSSL 3.x থাকে। উভয় সংস্করণই ডিফল্টভাবে SHA-256 দিয়ে অনুরোধ স্বাক্ষর করে, তাই আপনার আলাদা ডাইজেস্ট ফ্ল্যাগ যোগ করার দরকার নেই।
ধাপ ১: আপনার LiteSpeed সার্ভারে সংযুক্ত হন
macOS বা Linux-এ Terminal খুলুন, অথবা Windows-এ PowerShell বা Windows Terminal খুলুন, এবং SSH-এর মাধ্যমে সার্ভারে সংযুক্ত হন। ব্যবহারকারীর নাম এবং হোস্ট আপনার নিজেরটি দিয়ে প্রতিস্থাপন করুন:
ssh your-user@your-litespeed-server
যে সার্ভারে LiteSpeed লিসেনার চালাবেন, সেই একই সার্ভারে CSR তৈরি করুন। প্রাইভেট কীটি CSR-এর পাশেই তৈরি হয় এবং সেটিকে সেই সার্ভারেই থাকতে হবে, তাই আপনার ল্যাপটপে কমান্ড চালিয়ে পরে কী-টি ইতিউতি কপি করা মূল উদ্দেশ্যকে ব্যর্থ করে দেয়। ডিফল্ট LSWS ইনস্টলেশন থাকে /usr/local/lsws/-এর অধীনে, এবং একটি সাধারণ প্রথা হলো সার্টিফিকেট সংক্রান্ত ফাইলগুলো /usr/local/lsws/conf/ssl/-এ রাখা। যদি এই ডিরেক্টরি না থাকে তবে তৈরি করুন, এরপর এতে প্রবেশ করুন:
sudo mkdir -p /usr/local/lsws/conf/ssl
cd /usr/local/lsws/conf/ssl
ধাপ ২: প্রাইভেট কী এবং CSR তৈরি করুন
যদি আপনি ইতিমধ্যে অন্য কোনো টুল দিয়ে আপনার CSR তৈরি করে থাকেন, তাহলে সরাসরি LiteSpeed-এ সার্টিফিকেট ইনস্টল করা-য় চলে যান।
নিচের OpenSSL কমান্ডটি চালান। এটি একই সাথে একটি 2048-বিট RSA কী এবং একটি CSR তৈরি করে, যেখানে সাবজেক্ট এবং Subject Alternative Names (SANs) ইনলাইনভাবে সরবরাহ করা হয়েছে যাতে OpenSSL প্রশ্ন করার জন্য থেমে না যায়:
sudo openssl req -new -newkey rsa:2048 -nodes
-keyout yourdomain.key
-out yourdomain.csr
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=yourdomain.com"
-addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"
প্রতিটি অংশ যা করে:
- -newkey rsa:2048 একটি নতুন 2048-বিট RSA কী তৈরি করে। 2048-বিট হলো বর্তমান ন্যূনতম যা পাবলিক CA-গুলো গ্রহণ করে; আপনি বড় কী-এর জন্য rsa:4096 ব্যবহার করতে পারেন, অথবা ECDSA-তে পরিবর্তন করতে পারেন (নিচে দেখুন)।
- -nodes প্রাইভেট কী-টিকে এনক্রিপ্ট না করে রাখে। এটি LiteSpeed-এ আবশ্যক: WebAdmin লিসেনার পাসফ্রেজ-সুরক্ষিত কী দিয়ে চালু হতে পারে না।
- -keyout এবং -out প্রাইভেট কী এবং CSR ফাইলের নাম নির্ধারণ করে। .key এবং .csr এক্সটেনশন বজায় রাখুন যাতে LiteSpeed লিসেনার ফিল্ড এবং আপনার CA-এর অর্ডার ফর্ম এগুলো চিনতে পারে।
- -subj সার্টিফিকেটের সাবজেক্ট সরবরাহ করে। এখানে আপনার প্রকৃত কোম্পানির নাম, রাজ্য এবং শহর দিন, প্লেসহোল্ডার নয়। CN (Common Name) হলো আপনার প্রধান ডোমেইন।
- -addext “subjectAltName=…” সার্টিফিকেটটি যে প্রতিটি হোস্টনেম কভার করবে তার তালিকা দেয়। পাবলিক CA-গুলো SAN তালিকার বিরুদ্ধে যাচাই করে, তাই এখানে Common Name-ও অন্তর্ভুক্ত করুন।
সর্বত্র yourdomain.com-এর পরিবর্তে আপনার আসল ডোমেইন ব্যবহার করুন। অতিরিক্ত হোস্টনেম কভার করতে, সেগুলোকে কমা দিয়ে আলাদা করে SAN তালিকায় যোগ করুন, যেমন DNS:api.yourdomain.com। একটি ওয়াইল্ডকার্ড সার্টিফিকেটের জন্য, ওয়াইল্ডকার্ড এবং খালি ডোমেইন উভয়ই অন্তর্ভুক্ত করুন: DNS:*.yourdomain.com,DNS:yourdomain.com। সাবজেক্ট ফিল্ডগুলোতে শুধুমাত্র অক্ষরসংখ্যাসূচক অক্ষর ব্যবহার করুন, এবং C ফিল্ডের জন্য অফিসিয়াল দুই-অক্ষরের কান্ট্রি কোড ব্যবহার করুন।
যদি আপনি ECDSA কী পছন্দ করেন (ছোট এবং দ্রুত, P-256 ব্যাপকভাবে সমর্থিত), তাহলে এর পরিবর্তে এভাবে কী এবং CSR তৈরি করুন:
sudo openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -pkeyopt ec_param_enc:named_curve -nodes
-keyout yourdomain.key
-out yourdomain.csr
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=yourdomain.com"
-addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"
যদি আপনি প্রতিটি ফিল্ডের প্রম্পটের উত্তর একে একে দিতে চান, তাহলে -subj এবং -addext ছাড়া sudo openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr চালান। OpenSSL তখন প্রতিটি ফিল্ডের জন্য একে একে জিজ্ঞাসা করবে। তখন:
- Country Name (C): আপনার দেশের দুই-অক্ষরের ISO কোড, যেমন US বা GB। Business Validation বা Extended Validation সার্টিফিকেটের জন্য, এটি অবশ্যই আপনার প্রতিষ্ঠানের নিবন্ধিত অফিসিয়াল দেশ হতে হবে।
- State or Province Name (ST): পূর্ণ নাম, যেমন California। সংক্ষিপ্ত করবেন না।
- Locality Name (L): শহর বা নগর, যেমন San Francisco।
- Organization Name (O): আপনার কোম্পানির অফিসিয়াল নিবন্ধিত নাম, যেমন GPI Holding LLC। Domain Validation সার্টিফিকেটের জন্য আপনি NA লিখতে পারেন।
- Organizational Unit Name (OU): এই ফিল্ডটি অপ্রচলিত এবং পাবলিক CA-গুলো এটি উপেক্ষা করে। Enter চেপে খালি রেখে দিন।
- Common Name (CN): সার্টিফিকেটটি যে সম্পূর্ণ যোগ্য ডোমেইন নেমের জন্য, যেমন www.yourdomain.com। ওয়াইল্ডকার্ডের জন্য, *.yourdomain.com ব্যবহার করুন।
- Email Address: ঐচ্ছিক এবং পাবলিক CA-গুলো এটি ব্যবহার করে না। আপনি এটি খালি রাখতে পারেন।
- A challenge password এবং An optional company name: উভয়ই অপ্রচলিত অ্যাট্রিবিউট যা পাবলিক CA-গুলো উপেক্ষা করে। খালি রেখে দিন।
-addext ফ্ল্যাগ ছাড়া প্রাপ্ত CSR-এ কোনো SAN এন্ট্রি থাকবে না। পাবলিক CA-গুলো SAN তালিকার বিরুদ্ধে যাচাই করে এবং এমন কোনো অনুরোধ ছাড়াই প্রত্যাখ্যান করবে (অথবা নীরবে ওভাররাইড করবে), তাই উপরে দেওয়া ইনলাইন -subj এবং -addext কমান্ডটিই প্রস্তাবিত পথ।
ধাপ ৩: আপনার ফাইলগুলো খুঁজে বের করুন এবং কী-টি সুরক্ষিত করুন
বর্তমান ডিরেক্টরির তালিকা দেখুন যাতে নিশ্চিত হন যে উভয় ফাইলই তৈরি হয়েছে:
ls
আপনি দুটি নতুন ফাইল দেখতে পাবেন:
- yourdomain.key: আপনার প্রাইভেট কী। এটি সার্ভারে রাখুন, নিরাপদে ব্যাকআপ নিন, এবং Certificate Authority সহ কাউকে এটি কখনো পাঠাবেন না। যার কাছে কী-টি থাকবে, সে আপনার সাইটের ছদ্মবেশ ধারণ করতে পারবে।
- yourdomain.csr: আপনার Certificate Signing Request। এই ফাইলটিই আপনি SSL প্রোভাইডারের কাছে জমা দেবেন।
প্রাইভেট কী-টি সীমাবদ্ধ করুন যাতে শুধু ফাইল মালিকই এটি পড়তে পারে, এবং নিশ্চিত করুন যে LiteSpeed অ্যাডমিন ব্যবহারকারী (ডিফল্টভাবে lsadm) লিসেনার লোড করার সময় উভয় ফাইলই পড়তে পারে:
sudo chmod 600 yourdomain.key
sudo chown lsadm:lsadm yourdomain.key yourdomain.csr
ধাপ ৪: CSR যাচাই করুন (ঐচ্ছিক তবে প্রস্তাবিত)
জমা দেওয়ার আগে, নিশ্চিত করুন যে CSR-এ সঠিক সাবজেক্ট এবং SANs রয়েছে এবং এর স্বাক্ষর বৈধ। এটি OpenSSL দিয়ে স্থানীয়ভাবে অনুরোধটি ডিকোড করে:
openssl req -noout -text -verify -in yourdomain.csr
নিশ্চিত করুন যে Subject লাইনে আপনার বিবরণ দেখাচ্ছে, X509v3 Subject Alternative Name-এ আপনার প্রত্যাশিত প্রতিটি হোস্টনেম তালিকাভুক্ত রয়েছে, এবং স্বাক্ষর যাচাইকরণে verify OK প্রিন্ট হচ্ছে। স্বাক্ষর অ্যালগরিদম sha256WithRSAEncryption (অথবা ECDSA কী-এর জন্য ecdsa-with-SHA256) হওয়া উচিত। যদি আপনি কমান্ড লাইন ব্যবহার করতে না চান, তাহলে ব্রাউজারে একই ফিল্ড পড়ার জন্য আমাদের অনলাইন CSR ডিকোডার-এ CSR-টি পেস্ট করুন।
ধাপ ৫: আপনার CSR জমা দিন
আপনার অর্ডারের জন্য CSR কপি করতে, এর বিষয়বস্তু প্রিন্ট করুন:
cat yourdomain.csr
আপনি এই ধরনের একটি টেক্সট ব্লক দেখতে পাবেন:
-----BEGIN CERTIFICATE REQUEST-----
MIICyzCCAbMCAQAwTDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQsw...
...(many more lines of base64 characters)...
-----END CERTIFICATE REQUEST-----
সম্পূর্ণ ব্লকটি কপি করুন, -----BEGIN CERTIFICATE REQUEST----- এবং -----END CERTIFICATE REQUEST----- লাইনসহ (প্রতিটি মার্কারের দুই পাশে পাঁচটি হাইফেন রয়েছে)। এই সম্পূর্ণ ব্লকটিই আপনার CSR। ক্রয়ের সময় অর্ডার ফর্মে এটি পেস্ট করুন, এবং সংশ্লিষ্ট প্রাইভেট কী-টি সার্ভারে অবস্থানে রাখুন।
যদি আপনি কমান্ড লাইন ব্যবহার করতে না চান, আপনি আমাদের অনলাইন CSR Generator দিয়েও অনুরোধটি তৈরি করতে পারেন। মনে রাখবেন যে এটি আপনার ব্রাউজারে প্রাইভেট কী তৈরি করে, তাই সেই কী-টি নিজে সংরক্ষণ করুন এবং LiteSpeed সার্ভারে স্থানান্তর করুন।
আপনার CA অনুরোধটি যাচাই করার পর, আপনি আপনার সার্টিফিকেট পাবেন। যাচাইকরণের স্তরের উপর নির্ভর করে, Domain Validation-এর জন্য এতে কয়েক মিনিট সময় লাগে, অথবা Business Validation এবং Extended Validation-এর জন্য কয়েকদিন কর্মদিবস পর্যন্ত লাগতে পারে।
ধাপ ৬: LiteSpeed-এ কী এবং সার্টিফিকেট রেফারেন্স করুন
সার্টিফিকেট পাওয়ার পর, ইস্যুকৃত সার্টিফিকেট এবং CA বান্ডেলটি কী-এর পাশে সার্ভারে রাখুন, এরপর LiteSpeed লিসেনারকে সেদিকে নির্দেশ দিন। LSWS WebAdmin কনসোলে (সাধারণত https://your-server-ip:7080-এ), Listeners খুলুন, আপনার HTTPS লিসেনারে ক্লিক করুন, SSL ট্যাবে যান, এবং SSL Private Key & Certificate সেকশনটি সম্পাদনা করুন:
- Private Key File: /usr/local/lsws/conf/ssl/yourdomain.key
- Certificate File: /usr/local/lsws/conf/ssl/yourdomain.crt
- CA Certificate File: /usr/local/lsws/conf/ssl/yourdomain.ca-bundle (ইন্টারমিডিয়েটগুলো)
সংরক্ষণ করুন, এরপর বিদ্যমান সংযোগগুলো বিচ্ছিন্ন না করে পরিবর্তনটি প্রয়োগ করতে WebAdmin ড্যাশবোর্ডে Graceful Restart-এ ক্লিক করুন। OpenLiteSpeed প্রতিটি লিসেনারের SSL ট্যাবের অধীনে একই ফিল্ড এবং উপরের-ডানে একই Graceful Restart বাটন ব্যবহার করে। সম্পূর্ণ ইনস্টলেশন প্রক্রিয়া দেখতে, আমাদের গাইড দেখুন কীভাবে LiteSpeed-এ SSL সার্টিফিকেট ইনস্টল করবেন।
আজ অর্ডার করার সময় SSL শংসাপত্রে 10% সংরক্ষণ করুন!
দ্রুত ইস্যু, শক্তিশালী এনক্রিপশন, 99.99% ব্রাউজার বিশ্বাস, নিবেদিত সমর্থন, এবং 25 দিনের অর্থ ফেরত গ্যারান্টি। কুপন কোড: SAVE10


