راه اندازی mail server در ویندوز سرور ۲۰۱۲ — آموزش گام به گام تصویری
امکان نصب میلسرور SMTP با استفاده از ابزارهای داخلی که در همه نسخههای ویندوز ارائه شده وجود دارد. این سرور SMTP میتواند به عنوان یک سرویس رله استفاده شود که ایمیلهای SMTP را از دستگاههای مختلف در سازمان (مانند ارسالکنندهها، اسکنرها، دستگاههای کنترل دسترسی و غیره) و همچنین از اپلیکیشنها (وباپلیکیشنها، سرویسهای گزارشدهی SQL و SharePoint) دریافت و ارسال میکند. یک چنین سرویس رلهای میتواند پیامها را به سرورهای مبادله یا به سرویسهای عمومی مانند Gmail، Yahoo، Office 365 (outlook.com) و غیره ارسال کند. به طور معمول توصیه نمیشود که یک زیرساخت کامل ایمیل داخلی را بر مبنای Microsoft Exchange Server یا دیگر سرویسهای ایمیل راه اندازی کنید. در این مطلب با روش نصب، پیکربندی، تست و راه اندازی mail server در ویندوز سرور 2012 R2 و همچنین 2016 و 2019 به عنوان یک سرویس رله ایمیل آشنا خواهیم شد.
این سرور SMTP تنها میتواند ایمیلها را ارسال یا فوروارد کند و هیچ صندوق ورودی برای ذخیره ایمیل ندارد.
راه اندازی mail server در ویندوز سرور
سرویس SMTP یکی از قابلیتهای داخلی ویندوز سرور است که میتوان از طریق Server Manager آن را نصب کرد.
به این منظور باید داشبورد Server Manager یعنی برنامه servermanager.exe را باز کنید و به بخش Add roles and features رفته و در زمان انتخاب قابلیتهایی که باید نصب شوند تیک گزینه SMTP Server را نیز بزنید. برای مدیریت سرویس SMTP باید کنسولهای مدیریتی را که بخشی از نقش وبسرور (IIS) است را نیز نصب کنید و از این رو شاید از شما خواسته شود که برخی کامپوننتهای IIS را نصب کنید.
همه گزینههای پیشنهادی برای نقش Web Server (IIS) را در حالت انتخاب حفظ کرده و نصب را اجرا کنید.
امکان نصب نقش سرور SMTP با استفاده از دستور پاورشل زیر نیز وجود دارد:
Install-WindowsFeature smtp-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 در صورت لزوم نشانی IP که سرور روی آن پاسخ خواهد داد را انتخاب کنید و تیک گزینه Enable logging را بزنید تا اطلاعاتی در مورد ایمیلهای دریافتی در فایلهای لاگ متنی ذخیره شوند.
سپس به زبانه Access بروید.
در این بخش روی دکمه Authentication کلیک کنید و مطمئن شوید که گزینه Anonymous access فعال است.
به زبانه Access بازگردید و روی دکمه Connection کلیک کنید. در این بخش میتوانید نشانی IP دستگاههایی که امکان ارسال ایمیل را از طریق رله SMTP دارند تعیین کنید. به این منظور تیک گزینه Only the list below را بزنید و فهرست نشانیهای IP (یعنی subnet-ها) را وارد کنید و همچنین فراموش نکنید که آدرس خودتان یعنی 127.0.0.1 را نیز وارد کنید.
به همین ترتیب فهرست IP-های مجاز را در تنظیمات Relay نیز پیکربندی کنید. در این بخش مشخص میشود که کدام IP-ها میتوانند ایمیلها را از طریق این سرور SMTP رله کنند.
نکته: به عنوان یک قاعده کلی بهتر است که این گزینه را بررسی کرده و فهرست دستگاههایی که امکان اتصال را دارند با استفاده از بازه IP محدود کنید. در غیر این صورت سرور SMTP ممکن است از سوی اسپمرها و دیگر مهاجمان به عنوان یک رله باز برای ارسال گسترده ایمیل مورد استفاده قرار گیرد.
به زبانه Messages بروید. در این بخش نشانی ایمیل مدیریتی تعیین شده است که کپی همه پیامهای NDR به او ارسال خواهند شد. همچنین در این بخش میتوانید محدودیتهایی در مورد اندازه بیشینه پیام و بیشینه تعداد گیرندگان تعیین کنید.
به زبانه Delivery بروید.
روی گزینه Outbound Security کلیک کنید. در این بخش میتوانید روش احراز هویت را روی سرور میل بیرونی که سرور SMTP پیامهایش را رله میکند، مشخص سازید. برای نمونه اگر همه ایمیلها به سرور Gmail فوروارد میشوند و سپس به گیرندگان میرسند باید تیک گزینه Basic authentication را زده و اطلاعات احراز هویت صندوق پستی Gmail خود را وارد کنید. توجه کنید که در تنظیمات گوگل نیز باید امکان ارسال این ایمیلها را از طریق Gmail فعال سازید.
روی Advanced کلیک کنید.
در اینجا باید نام FQDN سرور SMTP خود را تعیین کنید. روی دکمه Check DNS بزنید تا مطمئن شوید که رکورد DNS معتبر است.
در سرور خود یک ایمیل را به سرور SMTP بیرونی ارسال کنید و نام را در فیلد Smart host تعیین نمایید. برای نمونه میتوانید مقادیری مانند smtp.gmail.com یا smtp.office365.com استفاده کنید.
نکاتی که باید بدانید
- نکته: برخی میل سرورهای عمومی تنها ایمیلهایی را قبول میکنند که از اتصال امن SMTP با بهرهگیری از رمزنگاری TLS یعنی پورت 587 TCP استفاده میکنند. برای پیکربندی این تنظیمات به مسیر Delivery -> Outbound Security and Outbound Connections بروید و مستندات ارائهدهنده ایمیل خود را مطالعه کنید.
- تنظیمات سرور SMTP را ذخیره کرده و سرویس مجازی SMTP را ریاستارت کنید تا این تغییرها اعمال شوند.
- نکته: تنظیمات DNS از نظر سلامت سیستم ایمیل مهم هستند. اگر سرور SMTP شما نتواند به درستی نامهای DNS دامنههایی که میخواهد ایمیل را به آنها ارسال کند مشخص نماید، تحویل ایمیل موفق نخواهد بود.
- نکته: اگر سرور شما ایمیلها را به دامنههای دیگر ارسال میکند لازم است که رکورد PTR صحیح برای نشانی IP ایجاد شود تا لوکاپهای معکوس DNS نیز ریزالو شوند. رکورد PTR برای نشانی IP عمومی باید به نام سرور FQDN اشاره کند. در غیر این صورت اغلب سرورهای SMTP بیرونی ایمیل را از سوی شما نمیپذیرند و سرور شما را به عنوان اسپمر شناسایی میکنند.
آغاز خودکار سرویس SMTPSVC
اکنون تنها کاری که باقی مانده است پیکربندی آغاز خودکار سرویس SMTP روی ویندوز سرور است.
این کار را میتوان با استفاده از اعلان دستور پاورشل زیر به سرعت و سهولت انجام داد:
set-service smtpsvc -StartupType Automatic
با دستور زیر سرویس را آغاز کنید:
start-service smtpsvc
مطمئن شوید که سرویس SMTPSVC در حال اجرا است:
get-service smtpsvc
خروجی این دستور به صورت زیر است:
Status Name DisplayName
—— —- ————
Running smtpsvc Simple Mail Transfer Protocol (SMTP)
تست کردن سرور SMTP روی ویندوز
آخرین کاری که باید انجام دهید این است که مطمئن شوید سرور SMTP به درستی کار میکند. انجام این کار با ایجاد یک فایل متنی ساده smtp-test-email.txt روی دسکتاپ و کپی کردن متن زیر به سادگی صورت میگیرد. فراموش نکنید که نامهای فرستنده و گیرنده را در فایل خودتان عوض کنید:
From: server@localdomain.com To: admin@localdomain.com Subject: Email test This is the test email
فایل smtp-test-email.txt را به پوشه C:\inetpub\mailroot\Pickup کپی کنید. سرور SMTP ویندوز ظهور فایلهای جدید را در این پوشه مورد نظارت قرار میدهد و اگر فایلی در آن بیاید، محتوای آن را میخواند و تلاش میکند تا ایمیلی با موضوع و متن مشخص شده به فرستنده مشخص شده در خط To: ارسال کند.
صندوق پستی گیرنده را بررسی کنید تا ایمیل خود را ببینید:
نکته: امکان تست سرور SMTP با استفاده از دستور، اسکریپت VBS یا PowerShell وجود دارد:
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 به جای احراز هویت ناشناس میتوانید ایمیلی با اطلاعات احراز هویت smtp از طریق Telnet به طریقی که در اینجا (+) توضیح داده شده ارسال کنید.
همچنین باید مطمئن شوید که پورت 25 TCP روی سرور SMTP از سوی فایروال لوکال یا نرمافزار آنتیویروس مسدود نشده است. آسانترین روش برای انجام این کار آن است که از روی یک رایانه مبتنی بر ویندوز که نشانی IP آن به لیست اتصالها اضافه شده است به سرور وصل شوید. در دسترس بودن پورت 25 را با استفاده از Cmdlet مربوط به Test-NetConnection زیر بررسی کنید:
Test-NetConnection smtprelay.woshub.com –port 25
اگر پورت 25 مسدود شده باشد، تنظیمات فایروال ویندوز، آنتیویروس و فایروالهای سختافزاری را بررسی کنید.
سخن پایانی
در این مطلب با روش نصب، پیکربندی، تست و راه اندازی سرور SMTP روی ویندوز سرور 2012 R2 و 2016 آشنا شدیم و برخی ایمیلهای تست را ارسال کردیم تا از کارکرد صحیح آن مطمئن شویم.
با سلام خدمت شما
لطفا راهنمایی بفرمائید که چگونه در ایمیل راه اندازی شده email enable در بخش ایمیل سرور ، مجبور نباشم هر دفعه پسورد را تایپ کنم؟ هرچند که تیک remamber را زده ام ولی باز هم پسوردم مثل جیمیل بصورت خودکار برام نمیاد