CyberPanel-এ SendGrid SMTP কনফিগার করার উপায়

SendGrid হলো একটি ক্লাউড-ভিত্তিক SMTP সেবা, যা ইমেইল সার্ভার পরিচালনার প্রয়োজন ছাড়াই ইমেইল ডেলিভারি সক্ষম করে।

NB:পোর্ট 25 বন্ধ থাকে আমাদের VM-এ সংযোগের জন্য ডিফল্টভাবে। আপনি যদি পোর্ট 25 খুলতে চান, Mail Bridge কিনুন এবং এটি কনফিগার করুনVPS Manager-এ।

WHM-এ SendGrid ইমেইল কনফিগার করতে, অনুগ্রহ করে এই গাইডটি ব্যবহার করুন।

CyberPanel-এর দিক থেকে আপনার ডোমেইন নামের জন্য SendGrid সেবা এবং Email System কনফিগার করতে নিচের ধাপগুলো অনুসরণ করুন:

1. SendGrid-এ সাইন আপ করুন:

সব যোগাযোগের তথ্য পূরণ করার পর, “Continue”-এ ক্লিক করুন।

2. আপনার ইমেইল অ্যাকাউন্ট যাচাই করার জন্য আপনাকে ব্রাউজারের একটি নতুন ট্যাবে পুনর্নির্দেশ করা হবে। আপনার ইমেইল অ্যাকাউন্টে পাঠানো verification code কপি করে “Code” ক্ষেত্রের নিচে লিখুন এবং “Verify”-এ ক্লিক করুন:

3. আপনার ফোন নম্বরে পাঠানো verification code “Enter certification code” ক্ষেত্রের নিচে লিখে এবং “Verify”-এ ক্লিক করে আপনার ফোন নম্বর যাচাই করুন:

4. এরপর, আপনাকে recovery code দেওয়া হবে, যা আপনার ফোন হারিয়ে গেলে বা verification device-এ অ্যাক্সেস না থাকলে সহায়ক। কোডটি কপি করুন, সংরক্ষণ করুন, এবং “Continue”-এ ক্লিক করুন। কোডটি ফাইল হিসেবে ডাউনলোড করারও একটি অপশন রয়েছে:

5. পরবর্তী পৃষ্ঠায় আপনার যোগাযোগের তথ্য পূরণ করুন এবং “Next”-এ ক্লিক করুন:


6. পরবর্তী পৃষ্ঠা থেকে, অনুগ্রহ করে আপনার SendGrid ড্যাশবোর্ড খুলুন:

7. সেখানে গেলে, একটি নতুন API Key তৈরি করতে “Settings” >> “API Keys” মেনুতে যান:


8. খোলা মেনুতে API Key-এর নাম লিখুন, API Key-এর অনুমতিগুলো “Full Access” অপশনে সেট করুন, এবং কনফিগারেশন সংরক্ষণ করুন:

9. SendGrid Sender Authentication সেট আপ করুন। এটি করার দুটি উপায় আছে:

পদ্ধতি 1: Single Sender Verification

Single Sender Verification - এটি একটি দ্রুত যাচাইকরণ পদ্ধতি, যা SendGrid অ্যাকাউন্ট ব্যবহার করার সময় একটি অনুমোদিত প্রাপক (একটি বা একাধিক ইমেইল ঠিকানা) যোগ করার সুযোগ দেয়। উদাহরণস্বরূপ, আপনি যদি cPanel সার্ভারে যোগ করা john.doe@example.com থেকে jane.doe@gmail.com-এ ইমেইল পাঠাতে চান, তাহলে এটি ব্যবহার করা যেতে পারে। এ জন্য jane.doe@gmail.com ইমেইল ঠিকানাটি Sendgrid-এ Single Sender Verification-এ যোগ করা থাকতে হবে।

NB: Single Sender Verification শুধুমাত্র পরীক্ষার জন্য সুপারিশ করা হয়।

NB: আপনি যাচাই করা ঠিকানা থেকেই কেবল পাঠাতে পারবেন, অথেনটিকেটেড ডোমেইনের যেকোনো ঠিকানা থেকে নয়।

Single Sender Verification সেট আপ করতে, আপনার SendGrid ড্যাশবোর্ড থেকে “Settings” >> “Sender Authentication” মেনুতে যান >> “Verify a Single Sender” বোতামে ক্লিক করুন:

পরবর্তী পৃষ্ঠায়, যোগাযোগের তথ্য পূরণ করে একটি sender তৈরি করুন এবং সবকিছু সংরক্ষণ করতে “Create”-এ ক্লিক করুন:

এরপর, আপনি SendGrid থেকে একটি যাচাইকরণ ইমেইল পাবেন। ইমেইল ঠিকানা যোগ করা নিশ্চিত করতে, ইমেইল থেকে “Verify Single Sender” বোতামে ক্লিক করুন:

পদ্ধতি 2: Domain Authentication (সুপারিশকৃত)

“Settings”-এ ক্লিক করুন >> “Sender Authentication” মেনুতে যান >> “Domain Authentication” ক্ষেত্রের নিচে “Authenticate Your Domain”-এ ক্লিক করুন:

পরবর্তী পৃষ্ঠায়, প্রথম ও দ্বিতীয় ধাপের প্রশ্নগুলোর উত্তর দিয়ে আপনার ডোমেইন নাম অথেনটিকেট করুন এবং “Next”-এ ক্লিক করুন:

NB: স্ক্রিনশটে আমরা দ্বিতীয় প্রশ্নের জন্য “No” উত্তরটি বেছে নিয়েছি। তবে, এই উত্তরটি ঐচ্ছিক।

এরপর, প্রয়োজনীয় ডোমেইন নাম লিখুন, প্রয়োজন হলে অতিরিক্ত সেটিংস নির্ধারণ করুন, এবং “Next”-এ ক্লিক করুন:

এখন, সংশ্লিষ্ট CNAME এবং TXT DNS রেকর্ড কনফিগার করে ডোমেইন নামটি যাচাই করা প্রয়োজন।

ডোমেইনের জন্য DNS রেকর্ড তৈরি হয়ে গেলে, ধাপ 2-এ “I’ve added these records” বক্সে টিক দিয়ে এবং নিচে “Verify”-এ ক্লিক করে সেগুলো যোগ করা নিশ্চিত করুন:

NB: DNS রেকর্ডগুলো propagate হতে 24-48 ঘণ্টা পর্যন্ত সময় লাগতে পারে।

10. পরবর্তী ধাপ হবে CyberPanel সার্ভারের জন্য SMTP সেটিংস কনফিগার করা।

দুর্ভাগ্যবশত, CyberPanel এখনো ব্যবহারকারীদের জন্য SMTP কনফিগারেশনের বিশেষ ইন্টারফেস দেয় না। SendGrid অবশ্যই SSH টার্মিনালের মাধ্যমে কনফিগার করতে হবে। 

  • প্রথমে, root হিসেবে আপনার সার্ভারে লগ ইন করুন:

ssh root@SERVER_IP_ADDRESS -p PORT


এখানে SERVER_IP_ADDRESS হলো আপনার সার্ভারের IP ঠিকানা, এবং PORT হলো SSH সংযোগের পোর্ট (ডিফল্টভাবে, এটি 22022)

  • একটি টেক্সট এডিটর দিয়ে /etc/postfix/main.cf ফাইলটি খুলুন:

nano /etc/postfix/main.cf
অথবা
vi /etc/postfix/main.cf

  • ফাইলের নিচে নিম্নলিখিত লাইনগুলো যোগ করুন:

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_tls_security_level = encrypt
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587

  • এখন আপনাকে আলাদা /etc/postfix/sasl_passwd ফাইলে আপনার credentials উল্লেখ করতে হবে (username হিসেবে apikey এবং password হিসেবে একটি API Key ব্যবহার করুন) (সম্ভবত আপনাকে এটি তৈরি করতে হবে):

echo “[smtp.sendgrid.net]:587 apikey:YOUR_SENDGRID_API_KEY” > /etc/postfix/sasl_passwd

এখানে YOUR_SENDGRID_API_KEY হলো ধাপ 8-এ তৈরি করা key।

  • এরপর, নিশ্চিত করুন যে ফাইলটিতে শুধু root-এর জন্য সীমিত read এবং write access রয়েছে, এবং এই নতুন ফাইলটি ব্যবহার করতে Postfix-এর hash table আপডেট করতে postmap কমান্ড ব্যবহার করুন:

sudo chmod 600 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd

  • সবশেষে, Postfix পুনরায় চালু করুন:

systemctl restart postfix

  • আপনার সার্ভারে SASL plugin ইনস্টল করুন:

apt-get install libsasl2-modules  # for Ubuntu
dnf install cyrus-sasl-plain      # for Almalinux/CloudLinux
yum install cyrus-sasl-plain       # for CentOS

এছাড়াও, authentication-এর জন্য MySQL Backend কনফিগার করতে কিছু instance-এ Dovecot-এর জন্য একটি MySQL Driver প্রয়োজন হতে পারে:

apt install dovecot-sqlite dovecot-mysql   # for Ubuntu
dnf install dovecot-mysql               # for Almalinux/CloudLinux
yum install dovecot-mysql                # for CentOS

  • এরপর, Dovecot পুনরায় চালু করুন:

systemctl restart dovecot

  • এখন, আপনি পরীক্ষা করতে পারেন কোনো ইমেইল SendGrid-এর মাধ্যমে relay হচ্ছে কি না:

sendmail -f YOUR_LOCAL_EMAIL -v DESTINATION_EMAIL

এখানে YOUR_LOCAL_EMAIL হলো আপনার CyberPanel অ্যাকাউন্টে তৈরি করা ইমেইল অ্যাকাউন্ট, এবং DESTINATION_EMAIL হলো সেই প্রাপকের ইমেইল যাকে একটি test email পাঠানো হয়।

তারপর আপনার বার্তার মূল অংশ লিখুন এবং পাঠাতে Ctrl+D চাপুন।

বিকল্পভাবে, সেখান থেকে একটি test email পাঠাতে আপনার CyberPanel অ্যাকাউন্টের Webmail ব্যবহার করুন।

একটি বৈধ ইমেইল প্রয়োজন