bg-tutorials

কুরিয়ার IMAP সার্ভারে SSL সার্টিফিকেট ইনস্টল করার পদ্ধতি

এই টিউটোরিয়ালে, আপনি শিখবেন Courier IMAP সার্ভারে কীভাবে একটি SSL সার্টিফিকেট ইনস্টল করতে হয়। আপনি আপনার সার্টিফিকেট, প্রাইভেট কী এবং CA চেইনকে একটি একক PEM ফাইলে একত্রিত করবেন, Courier-এর TLS_CERTFILE সেটিংটিকে সেই ফাইলে নির্দেশ করবেন, এবং সার্ভিস রিস্টার্ট করবেন যাতে IMAPS এবং POP3S নতুন সার্টিফিকেট পরিবেশন করে।

Courier IMAP সার্ভারে CSR কোড তৈরি করুন

আপনি যদি ইতিমধ্যেই আপনার CSR তৈরি করে থাকেন এবং SSL ফাইল পেয়ে থাকেন, তাহলে অংশ ১ এড়িয়ে সরাসরি ইনস্টলেশন ধাপগুলিতে চলে যান।

CSR (সার্টিফিকেট সাইনিং রিকোয়েস্ট) হলো এনকোড করা টেক্সটের একটি ব্লক যাতে আপনার যোগাযোগের বিবরণ থাকে। আপনি এটি তৈরি করে আপনার সার্টিফিকেট অথরিটির (CA) কাছে পাঠান SSL যাচাইকরণ পাশ করার জন্য। CSR তৈরি করার সময় সাথে সাথে সংশ্লিষ্ট প্রাইভেট কীও তৈরি হয়, যা আপনার সার্ভারে থেকে যায় এবং ইনস্টলেশনের জন্য প্রয়োজন হয়। আপনার কাছে দুটি বিকল্প রয়েছে:

CSR ফাইলটি খুলতে, যেকোনো প্লেইন টেক্সট এডিটর ব্যবহার করুন। অর্ডার করার সময়, BEGIN এবং END লাইন সহ পুরো ব্লকটি কপি করুন। প্রাইভেট কী ফাইলটি নিরাপদে রাখুন: ইনস্টলেশনের সময় আপনি এটিকে আপনার PEM ফাইলে একত্রিত করবেন।

Courier IMAP সার্ভারে SSL সার্টিফিকেট ইনস্টল করুন

যাচাইকরণের পর, আপনার CA আপনাকে আপনার SSL ফাইল সহ একটি ZIP আর্কাইভ ইমেল করে: প্রাথমিক (সার্ভার) সার্টিফিকেট এবং এক বা একাধিক ইন্টারমিডিয়েট (CA) সার্টিফিকেট। আপনার সার্ভারে আর্কাইভটি এক্সট্র্যাক্ট করুন, তারপর নিচের ধাপগুলি অনুসরণ করুন।

ধাপ ১: সার্টিফিকেট, চেইন এবং কী একটি PEM ফাইলে একত্রিত করুন

Courier TLS_CERTFILE-এ সেট করা একটি একক PEM ফাইল থেকে সার্টিফিকেট এবং প্রাইভেট কী পড়ে। এই ক্রমে ফাইলগুলি সংযুক্ত করুন: প্রথমে আপনার সার্ভার সার্টিফিকেট, তারপর CA ইন্টারমিডিয়েট চেইন, তারপর আপনার প্রাইভেট কী। এক্সট্র্যাক্ট করা ফাইলগুলি ধারণকারী ডিরেক্টরি থেকে, চালান:

cat yourdomain.crt yourdomain.ca-bundle yourdomain.key > imapd.pem
sudo mv imapd.pem /etc/courier/imapd.pem
sudo chmod 600 /etc/courier/imapd.pem

যদি আপনার CA একটি একক .ca-bundle-এর পরিবর্তে ইন্টারমিডিয়েটগুলি আলাদা ফাইল হিসেবে সরবরাহ করে থাকে, তাহলে সার্টিফিকেট এবং কীয়ের মাঝে প্রতিটি তালিকাভুক্ত করুন। সম্পূর্ণ PEM ফাইলটি এরকম দেখাবে:

-----BEGIN CERTIFICATE-----
(the text of your primary SSL certificate)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(the text of the intermediate / CA chain certificate)
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
(the text of your private key)
-----END PRIVATE KEY-----

পুরনো কীগুলিতে BEGIN PRIVATE KEY-এর পরিবর্তে BEGIN RSA PRIVATE KEY লেবেল থাকতে পারে; উভয়ই ঠিক আছে। কীটিতে পাসফ্রেজ দিয়ে এনক্রিপ্ট করা উচিত নয়, কারণ Courier কোনো প্রম্পট ছাড়াই এটি লোড করে। PEM ফাইলটি শুধুমাত্র রুট দ্বারা পঠনযোগ্য হতে হবে (উপরের chmod 600), কারণ এতে প্রাইভেট কী রয়েছে।

আপনি যদি প্রাইভেট কী তার নিজস্ব আলাদা ফাইলে রাখতে চান, তাহলে PEM থেকে কীটি বাদ দিন এবং কনফিগে (ধাপ ২) TLS_PRIVATE_KEYFILE-কে কীয়ের পাথে সেট করুন। যখন কী ইতিমধ্যেই TLS_CERTFILE-এ এমবেড করা থাকে, তখন আলাদা কী ফাইলটি ঐচ্ছিক।

ধাপ ২: Courier-কে আপনার PEM ফাইলের দিকে নির্দেশ করুন

Courier SSL-এর মাধ্যমে IMAP-এর জন্য ব্যবহার করে এমন কনফিগ ফাইলটি খুলুন। পাথটি আপনার ডিস্ট্রিবিউশনের উপর নির্ভর করে: এটি সাধারণত /etc/courier/imapd-ssl, অথবা কিছু সিস্টেমে /usr/lib/courier-imap/etc/imapd-ssl। এটি একটি টেক্সট এডিটর দিয়ে সম্পাদনা করুন, উদাহরণস্বরূপ:

sudo nano /etc/courier/imapd-ssl

TLS_CERTFILE লাইনটি খুঁজুন (অথবা যদি না থাকে তবে যোগ করুন) এবং এটিকে আপনার PEM ফাইলে সেট করুন:

TLS_CERTFILE=/etc/courier/imapd.pem

যদি আপনি ধাপ ১-এ প্রাইভেট কীটি আলাদা রেখে থাকেন, তাহলে এর পাথটিও সেট করুন:

TLS_PRIVATE_KEYFILE=/etc/courier/imapd.key

এই ফাইলে থাকাকালীন, TLS সেটিংস কঠোর করুন। এমন যেকোনো লাইন সরিয়ে ফেলুন বা কমেন্ট আউট করুন যা একটি অপ্রচলিত প্রোটোকল জোর করে, যেমন TLS_PROTOCOL=SSL3: SSLv3 এবং প্রাথমিক TLS 1.0 এবং 1.1 সংস্করণগুলি অনিরাপদ এবং সেগুলি নিষ্ক্রিয় করা উচিত। Courier-কে TLS 1.2 বা তার উপরে প্রয়োজন করতে সেট করুন। TLS_PROTOCOL ডেডিকেটেড SSL পোর্টে (IMAPS) প্রযোজ্য, এবং TLS_STARTTLS_PROTOCOL স্ট্যান্ডার্ড পোর্টে STARTTLS-এ প্রযোজ্য:

TLS_PROTOCOL=TLSv1.2
TLS_STARTTLS_PROTOCOL=TLSv1.2

TLSv1.2 মানটির অর্থ হলো “TLS 1.2 বা তার উপরে,” তাই আপনার OpenSSL বিল্ড সমর্থন করলে TLS 1.3 এখনও নেগোশিয়েট করা হয়। মেইল ক্লায়েন্টদের কাছে আপনার সার্টিফিকেট পরিবেশন করার জন্য TLS_TRUSTCERTS সেট করার প্রয়োজন নেই; সেই ভেরিয়েবলটি শুধুমাত্র ক্লায়েন্ট সার্টিফিকেট যাচাই করার জন্য।

Debian, Ubuntu, এবং Devuan: এই ডিস্ট্রিবিউশনগুলিতে Courier OpenSSL-এর পরিবর্তে GnuTLS-এর বিরুদ্ধে তৈরি করা হয়েছে, এবং TLS_PROTOCOL-এর কোনো প্রভাব নেই। এর পরিবর্তে TLS_PRIORITY দিয়ে প্রোটোকল ফ্লোর সেট করুন, উদাহরণস্বরূপ TLS_PRIORITY=NORMAL:-VERS-TLS1.0:-VERS-TLS1.1 (যা শুধুমাত্র TLS 1.2 এবং 1.3 রাখে)। উভয় বিল্ডেই TLS_CERTFILE এবং উপরের সম্মিলিত PEM অভিন্ন, তাই সার্টিফিকেট ইনস্টলেশন নিজেই অপরিবর্তিত থাকে।

Diffie-Hellman প্যারামিটার সম্পর্কে নোট: বর্তমান Courier প্যাকেজগুলি স্বয়ংক্রিয়ভাবে একটি DH প্যারামিটার ফাইল তৈরি করে (mkdhparams স্ক্রিপ্ট এবং একটি নিয়মিত cron জব-এর মাধ্যমে) এবং এটি TLS_DHPARAMS থেকে পড়ে, তাই একটি স্ট্যান্ডার্ড ইনস্টলের জন্য আপনাকে আর হাতে তৈরি করতে হবে না। পুরনো TLS_DHCERTFILE ডিরেক্টিভটি Courier 4.15-এ সরিয়ে ফেলা হয়েছে। যদি আপনার সার্ভারে কখনও mkdhparams চালানো না হয়ে থাকে, তাহলে ফাইলটি তৈরি করতে এটি একবার চালান।

যদি আপনি POP3S (পোর্ট 995)-ও পরিবেশন করেন, তাহলে POP3 কনফিগ ফাইলটি খুলুন, /etc/courier/pop3d-ssl (অথবা /usr/lib/courier-imap/etc/pop3d-ssl), এবং একই সেটিংস প্রয়োগ করুন। আপনি একই PEM ফাইল পুনরায় ব্যবহার করতে পারেন, অথবা একই বিষয়বস্তু সহ একটি ডেডিকেটেড /etc/courier/pop3d.pem তৈরি করতে পারেন:

TLS_CERTFILE=/etc/courier/pop3d.pem
TLS_PROTOCOL=TLSv1.2
TLS_STARTTLS_PROTOCOL=TLSv1.2

ধাপ ৩: Courier রিস্টার্ট করুন

Courier রিস্টার্ট করুন যাতে এটি নতুন সার্টিফিকেট লোড করে। বেশিরভাগ systemd-ভিত্তিক ডিস্ট্রিবিউশনে, SSL সার্ভিসগুলি এবং প্রমাণীকরণ ডেমন রিস্টার্ট করুন:

sudo systemctl restart courier-imap-ssl
sudo systemctl restart courier-pop3-ssl
sudo systemctl restart courier-authdaemon

কিছু প্যাকেজ এর পরিবর্তে একটি একক সম্মিলিত ইউনিট প্রকাশ করে। যদি উপরের সার্ভিসগুলি পাওয়া না যায়, তাহলে চেষ্টা করুন:

sudo systemctl restart courier

যে সিস্টেম systemd ব্যবহার করে না, সেখানে Courier-এর নিজস্ব স্ক্রিপ্টের মাধ্যমে রিস্টার্ট করুন:

/usr/lib/courier-imap/libexec/imapd-ssl.rc restart
/usr/lib/courier-imap/libexec/pop3d-ssl.rc restart

সার্ভিস সঠিকভাবে রিস্টার্ট হয়ে গেলে, আপনার নতুন SSL সার্টিফিকেট IMAPS (পোর্ট 993) এবং POP3S (পোর্ট 995)-এর পাশাপাশি পোর্ট 143 এবং 110-এ STARTTLS-এর জন্যও লাইভ হয়ে যায়।

আপনার SSL ইনস্টলেশন পরীক্ষা করুন

ইনস্টলেশনের পর, নিশ্চিত করুন যে সার্টিফিকেটটি সঠিকভাবে পরিবেশিত হচ্ছে। একটি টার্মিনাল থেকে, IMAPS পোর্টে একটি TLS সংযোগ খুলুন এবং সার্ভার যে সার্টিফিকেট উপস্থাপন করে তা পড়ুন:

openssl s_client -connect mail.yourdomain.com:993 -servername mail.yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -subject -dates

POP3S-এর জন্য, পোর্ট 995 ব্যবহার করুন। এর পরিবর্তে স্ট্যান্ডার্ড IMAP পোর্টে STARTTLS পরীক্ষা করতে, চালান:

openssl s_client -connect mail.yourdomain.com:143 -starttls imap

প্রথম কমান্ডটি সংযোগটিকে openssl x509-এ পাইপ করে এবং ইস্যুকারী, সাবজেক্ট (কমন নেম), এবং বৈধতার তারিখগুলি প্রিন্ট করে, যাতে আপনি নিশ্চিত করতে পারেন যে সঠিক সার্টিফিকেট পরিবেশিত হচ্ছে। STARTTLS কমান্ডটি সম্পূর্ণ হ্যান্ডশেক দেখায়: ইস্যুকারী এবং চেইন সঠিক কিনা এবং শেষের দিকে Verify return code: 0 (ok) প্রদর্শিত হয় কিনা তা পরীক্ষা করুন। আপনার সার্টিফিকেট এবং এর কনফিগারেশন সম্পর্কে সম্পূর্ণ রিপোর্টের জন্য, আমাদের SSL Checker ব্যবহার করুন।

সচরাচর জিজ্ঞাসিত প্রশ্নাবলী

Courier PEM-এ ফাইলগুলি কোন ক্রমে একত্রিত করব?

প্রথমে সার্ভার সার্টিফিকেট, তারপর ইন্টারমিডিয়েট (CA) চেইন, তারপর প্রাইভেট কী, সবগুলো একটি PEM ফাইলে। Courier এই ফাইলটি TLS_CERTFILE থেকে পড়ে এবং ক্লায়েন্টদের কাছে সম্পূর্ণ চেইন উপস্থাপন করে। প্রাইভেট কীটি অবশ্যই আনএনক্রিপ্টেড হতে হবে (কোনো পাসফ্রেজ ছাড়া)।

Courier SSL কনফিগারেশন ফাইলটি কোথায়?

SSL-এর মাধ্যমে IMAP /etc/courier/imapd-ssl-এ কনফিগার করা হয়, এবং SSL-এর মাধ্যমে POP3 /etc/courier/pop3d-ssl-এ। কিছু ডিস্ট্রিবিউশনে এগুলো এর পরিবর্তে /usr/lib/courier-imap/etc/-এর অধীনে থাকে। প্লেইন-টেক্সট পোর্টগুলির জন্য STARTTLS সেটিংস সংশ্লিষ্ট imapd এবং pop3d ফাইলগুলিতে রয়েছে।

আমার কি এখনও Courier-এর জন্য Diffie-Hellman (DH) প্যারামিটার প্রয়োজন?

সাধারণ ইনস্টলের জন্য হাতে নয়। বর্তমান Courier প্যাকেজগুলি mkdhparams স্ক্রিপ্ট দিয়ে স্বয়ংক্রিয়ভাবে একটি DH প্যারামিটার ফাইল তৈরি করে এবং নির্ধারিত সময়ে এটি রিফ্রেশ করে, TLS_DHPARAMS থেকে এটি পড়ে। পুরনো TLS_DHCERTFILE ডিরেক্টিভটি Courier 4.15-এ সরিয়ে ফেলা হয়েছে। শুধুমাত্র যদি এখনও কোনো DH ফাইল বিদ্যমান না থাকে তবেই mkdhparams একবার চালান।

Courier-এ কীভাবে SSLv3 এবং পুরনো TLS সংস্করণগুলি নিষ্ক্রিয় করব?

যেকোনো TLS_PROTOCOL=SSL3 লাইন সরিয়ে ফেলুন এবং imapd-sslpop3d-ssl-এ TLS_PROTOCOL=TLSv1.2 সেট করুন। STARTTLS পোর্টগুলির জন্য TLS_STARTTLS_PROTOCOL=TLSv1.2 সেট করুন। TLSv1.2 মানটির অর্থ “1.2 বা তার উপরে,” তাই আপনার OpenSSL সমর্থন করলে TLS 1.3 স্বয়ংক্রিয়ভাবে ব্যবহৃত হয়।

Courier রিস্টার্ট করার পর কীভাবে সার্টিফিকেট যাচাই করব?

OpenSSL দিয়ে মেইল পোর্টে সংযোগ করুন এবং পরিবেশিত সার্টিফিকেট পড়ুন: IMAPS-এর জন্য openssl s_client -connect mail.yourdomain.com:993, অথবা পোর্ট 143-এ -starttls imap যোগ করুন। নিশ্চিত করুন যে ইস্যুকারী এবং চেইন সঠিক এবং আউটপুটে Verify return code: 0 (ok) দেখাচ্ছে।

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

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

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

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