আপনি Windows Server-এর সব ভার্সনে বিল্ট-ইন টুলস ব্যবহার করে একটি SMTP সার্ভার ইনস্টল করতে পারেন। এই SMTP সার্ভার একটি মেইল রিলে সার্ভিস হিসেবে কাজ করতে পারে যা সংস্থার বিভিন্ন ডিভাইস (যেমন: সেন্ডার, স্ক্যানার, অ্যাক্সেস কন্ট্রোল ডিভাইস ইত্যাদি) এবং অ্যাপ্লিকেশন (ওয়েব অ্যাপস, SQL Reporting Services, SharePoint) থেকে SMTP ইমেইল গ্রহণ ও প্রেরণ করবে, যেগুলো SMTP প্রোটোকল ব্যবহার করে মেইল পাঠাতে সক্ষম হতে হবে। такой রিলে আপনার Exchange সার্ভারগুলিতে বা পাবলিক ইমেইল সার্ভিস যেমন Gmail, Yahoo, Office 365 (outlook.com) ইত্যাদিতে মেসেজ পাঠাতে পারে (কারণ সবসময় Microsoft Exchange Server বা অন্যান্য ইমেইল সার্ভিসের ভিত্তিতে ফুল-ফিচার্ড ইন্টারন্যাল ইমেইল ইনফ্রাস্ট্রাকচার ডিপ্লয় করা পরামর্শদায়ক নয়)।
এই আর্টিকেলে আমরা Windows Server 2012 R2, 2016 এবং 2019 তে মেইল রিলে হিসেবে কাজ করার জন্য SMTP সার্ভার ইনস্টল, কনফিগার এবং টেস্ট করার পদ্ধতি দেখাব। এই SMTP সার্ভার শুধু ইমেইল পাঠাতে বা ফরওয়ার্ড করতে পারে, এতে কোনো ইউজার মেইলবক্স নেই।
বিষয়সূচি:
- Windows Server 2016 / 2012 R2-এ SMTP সার্ভিস ইনস্টল করার পদ্ধতি?
- Windows Server-এ SMTP সার্ভার কনফিগার করা
- SMTPSVC সার্ভিস অটো-স্টার্ট
- Windows-এ SMTP সার্ভার টেস্ট করা
Windows Server 2016 / 2012 R2-এ SMTP সার্ভিস ইনস্টল করার পদ্ধতি?
SMTP সার্ভিস Windows Server-এর বিল্ট-ইন ফিচারগুলির একটি যা Server Manager-এর মাধ্যমে ইনস্টল করা যায়। এটি করতে, Server Manager Dashboard (servermanager.exe) খুলুন, Add roles and features-এ যান এবং ফিচার সিলেক্ট করার সময় SMTP Server চেক করুন। SMTP সার্ভিস ম্যানেজ করার জন্য, ম্যানেজমেন্ট কনসোলগুলো ইনস্টল করুন, যা Web Server (IIS) রোলের অংশ, তাই আপনাকে কিছু IIS কম্পোনেন্ট ইনস্টল করতে বলা হবে।

Web Server (IIS) রোলের সকল প্রস্তাবিত অপশন রেখে দিন এবং ইনস্টলেশন চালান।

আপনি PowerShell কমান্ড ব্যবহার করেও SMTP সার্ভার রোল ইনস্টল করতে পারেন:
Install-WindowsFeature smtp-server
কম্পোনেন্টগুলো ইনস্টল হলে, আপনাকে সার্ভার রিস্টার্ট করতে হতে পারে।
Windows Server-এ SMTP সার্ভার কনফিগার করা
SMTP সার্ভার এখনও পুরনো স্কুল ম্যানেজমেন্ট কনসোল Internet Information Services (IIS) Manager 6 ব্যবহার করে ম্যানেজ করা হয়। আপনি এই কনসোলটি Server Manager থেকে খুলতে পারেন: Tools-> Internet Information Services (IIS) 6.0 Manager অথবা কমান্ড inetmgr6.exe দিয়ে।

IIS 6 Manager-এ আপনার সার্ভারের নামযুক্ত ব্রাঞ্চটি এক্সপ্যান্ড করুন, SMTP Virtual Server-এ রাইট-ক্লিক করুন এবং এর প্রোপার্টিজ খুলুন।

General ট্যাবে, প্রয়োজনে SMTP সার্ভার যে IP ঠিকানায় রেসপন্ড করবে সেটি সিলেক্ট করুন (যদি সার্ভারের একাধিক IP থাকে), এবং Enable logging অপশনটি চেক করুন (সকল গ্রহণ করা ইমেইলের তথ্য টেক্সট লগ ফাইলে সংরক্ষণ করার জন্য)।

তারপর Access ট্যাবে যান।

এখানে Authentication বাটনে ক্লিক করুন এবং নিশ্চিত করুন যে Anonymous access সক্রিয়।

Access ট্যাবে ফিরে আসুন এবং Connection বাটনে ক্লিক করুন। এখানে আপনি তাদের IP ঠিকানা নির্দিষ্ট করতে পারেন যাদের আপনার SMTP রিলে Через ইমেইল পাঠাতে অনুমতি দিবেন। এটি করতে, Only the list below চেক করুন এবং IP ঠিকানা (সাবনেট) এর তালিকা নির্দিষ্ট করুন, নিজেরতেও (127.0.0.1) ভুলবেন না।
Relay সেটিংসে (সংশ্লিষ্ট বাটনে ক্লিক করুন) একইভাবে অনুমোদিত IP-র তালিকা কনফিগার করুন। এই সেকশনটি নির্দেশ করে কোন IP ঠিকানা (বা সাবনেট) আপনার SMTP সার্ভারের মাধ্যমে ইমেইল রিলে করতে পারবে।

নোট. সাধারণ নিয়ম হিসেবে, এই অপশনটি চেক করে এবং স্বীকৃত ডিভাইসের তালিকা IP ঠিকানার রেঞ্জ দিয়ে সীমাবদ্ধ করা উচিত। অন্যথায়, আপনার SMTP সার্ভার স্প্যামাররা এবং অন্যান্য আক্রমণকারীদের দ্বারা ওপেন রিলে হিসেবে ম্যাস মেইলিং-এর জন্য ব্যবহার করা হতে পারে।
Messages ট্যাবে যান। এখানে অ্যাডমিনিস্ট্রেটিভ ইমেইল ঠিকানা নির্দিষ্ট করা থাকে, যেখানে সব NDR মেসেজের কপি পাঠানো হবে (Send copy of Non-Delivery Report to:)। এছাড়াও এখানে আপনি সর্বোচ্চ মেসেজ সাইজ (Limit message size KB) এবং সর্বোচ্চ প্রাপকের সংখ্যা (Limit number of recipients per message) সীমাবদ্ধ করতে পারেন।

Delivery ট্যাবে যান।

তারপর Outbound Security-এ ক্লিক করুন। এখানে আপনি আপনার SMTP সার্ভার যে এক্সটার্নাল মেইল সার্ভারে ইমেইল পাঠাবে (রিলে করবে) সেখানে অথেন্টিকেশন পদ্ধতি নির্দিষ্ট করবেন। উদাহরণস্বরূপ, যদি সকল ইমেইল Gmail মেইল সার্ভারে ফরওয়ার্ড করা হয় এবং সেখান থেকে প্রাপকদের কাছে পাঠানো হয়, তবে আপনাকে Basic authentication চেক করে আপনার Gmail মেইলবক্সের ক্রেডেনশিয়াল দিতে হবে (Google অ্যাকাউন্ট সেটিংসে Gmail SMTP মাধ্যমে ইমেইল পাঠাতে অনুমতি দিতে হবে)।

তারপর Advanced-এ ক্লিক করুন।

এখানে আপনার SMTP সার্ভারের FQDN নাম নির্দিষ্ট করুন। Check DNS বাটনে ক্লিক করে নিশ্চিত করুন যে DNS রেকর্ডটি বৈধ।

যদি আপনার সার্ভার এক্সটার্নাল SMTP সার্ভারে মেইল পাঠায়, তবে Smart host ফিল্ডে তার নাম নির্দিষ্ট করুন (উদাহরণস্বরূপ, smtp.gmail.com বা smtp.office365.com)।
কিছু পাবলিক মেইল সার্ভার সুরক্ষিত SMTP সংযোগ ব্যবহার করলে (TLS Encryption, TCP পোর্ট 587) ইমেইল গ্রহণ করে। আপনি এই সেটিংটি Delivery -> Outbound Security এবং Outbound Connections সেকশনে কনফিগার করতে পারেন। আপনার ইমেইল প্রোভাইডারের ডকুমেন্টেশন পড়ুন।
SMTP সার্ভার সেটিংস সংরক্ষণ করুন এবং পরিবর্তনগুলো প্রয়োগ করতে আপনার SMTP ভার্চুয়াল সার্ভিস রিস্টার্ট করুন।
নোট.
- ইমেইল সিস্টেমের স্বাস্থ্যের দৃষ্টিকোণ থেকে DNS সেটিংস অত্যন্ত গুরুত্বপূর্ণ। আপনার SMTP সার্ভার যদি সঠিকভাবে DNS নাম রিজলভ না করতে পারে যেগুলোকে ইমেইল পাঠাতে চাচ্ছে, তবে ডেলিভারি ব্যর্থ হবে।
- যদি আপনার সার্ভার অন্যান্য ডোমেনে মেইল পাঠায়, তবে আপনার পাবলিক IP ঠিকানার জন্য সঠিক PTR রেকর্ড তৈরি করা গুরুত্বপূর্ণ যাতে রিভার্স DNS লুকআপ রিজলভ होয়। আপনার পাবলিক IP ঠিকানার PTR রেকর্ড আপনার সার্ভারের FQDN নামের দিকে নির্দেশ করা উচিত। অন্যথায়, অধিকাংশ এক্সটার্নাল SMTP সার্ভার আপনার কাছ থেকে ইমেইল গ্রহণ করবে না, আপনার সার্ভারকে স্প্যামার ধরে।
SMTPSVC সার্ভিস অটো-স্টার্ট
বাকি আছে আপনার Windows Server-এ SMTP সার্ভিসের অটোমেটিক স্টার্টআপ কনফিগার করা। আপনি দ্রুত এটি PowerShell কমান্ড প্রম্পট ব্যবহার করে করতে পারেন:
set-service smtpsvc -StartupType Automatic
সার্ভিস শুরু করুন:
start-service smtpsvc
নিশ্চিত করুন যে SMTPSVC সার্ভিস চলছে:
get-service smtpsvc
Status Name DisplayName
—— —- ————
Running smtpsvc Simple Mail Transfer Protocol (SMTP)

Windows-এ SMTP সার্ভার টেস্ট করা
শেষ কাজ হল নিশ্চিত করা যে আপনার SMTP সার্ভার কাজ করছে। এটি সহজে করা যায় একটি প্লেইন-টেক্সট ফাইল smtp-test-email.txt আপনার ডেস্কটপে তৈরি করে এবং নিচের টেক্সট কপি করে। সেন্ডার এবং প্রাপকের নাম আপনারখানি দিয়ে পরিবর্তন করুন।
From: server@localdomain.com
To: admin@localdomain.com
Subject: Email test
This is the test email

ফাইলটি C:\inetpub\mailroot\Pickup ফোল্ডারে কপি করুন। Windows SMTP সার্ভার এই ফোল্ডারে নতুন ফাইল القادم হলে তা মনিটর করে, এবং যদি ফাইল পায় তবে এর কন্টেন্ট পড়ে দেওয়া সাবজেক্ট এবং বডি সহ ইমেইল পাঠাতে চেষ্টা করে To: লাইনে নির্দিষ্ট প্রাপকের কাছে।
প্রাপকের মেইলবক্স চেক করুন, আপনি এই ইমেইলটি দেখবেন।

টিপ. আপনি telnet কমান্ড, VBS স্ক্রিপ্ট বা PowerShell ব্যবহার করেও আপনার SMTP সার্ভার টেস্ট করতে পারেন:
Send-MailMessage -SMTPServer localhost -To manager@localdomain.com -From server@localdomain.com -Subject "Email test" -Body "This is the test email from PowerShell"
আপনি যদি Basic Authentication সক্ষম করে থাকেন আপনার সকল SMTP ক্লায়েন্ট অথেন্টিকেশন করার জন্য (Anonymous authentication-এর পরিবর্তে), তবে telnet ব্যবহার করে SMTP অথেন্টিকেশন সহ ইমেইল পাঠাতে পারেন নিচের পদ্ধতিতে।
এছাড়া, নিশ্চিত করুন যে TCP 25 পোর্ট আপনার SMTP সার্ভারে লোকাল ফায়ারওয়াল বা অ্যান্টি-ভাইরাস সফটওয়্যার দ্বারা ব্লক করা নেই। এটি চেক করার সবচেয়ে সহজ পদ্ধতি হল একটি Windows-ভিত্তিক কম্পিউটার থেকে যেই IP ঠিকানাটি অনুমোদিত কানেকশন লিস্টে যোগ করা আছে। Test-NetConnection ক্যাডলেট ব্যবহার করে পোর্ট ২৫-এর উপলব্ধতা চেক করুন:
Test-NetConnection smtprelay.woshub.com –port 25
যদি পোর্ট ২৫ ব্লক করা থাকে, তবে Windows Firewall, অ্যান্টিভাইরাস এবং হার্ডওয়্যার ফায়ারওয়ালের সেটিংস চেক করুন।
তাহলে, আপনি Windows Server 2016 / 2012 R2-এ আপনার নিজস্ব SMTP মেইল রিলে কনফিগার করেছেন এবং এর মাধ্যমে ইমেইল পাঠানো টেস্ট করলেন।