نصب و پيكربندي Postfix در اوبونتو 20.04
Postfix يك عامل انتقال ايميل (MTA) است ، كه براي هدايت و دريافت ايميل در سيستم لينوكس استفاده مي شود. پيش بيني ميشود حدود 25 درصد سرور مجازي هاي ايميل عمومي در اينترنت Postfix را اجرا ميكنند.
در اين راهنما ، نحوه نصب و پيكربندي Postfix را در سرور مجازي Ubuntu 20.04 ياد خواهيد گرفت. سپس با نصب s-nail ، يك نماينده كاربر ايميل (MUA) ، كه به كلاينت ايميل نيز شناخته ميشود، آزمايش مي كنيد كه آيا Postfix قادر است به درستي ايميل را مسيريابي كند.
توجه داشته باشيد كه هدف از اين آموزش اين است كه به شما كمك كند تا فقط با برخي از قابليت هاي معمول ايميل، سريعا Postfix را راه اندازي و اجرا كنيد. در پايان اين راهنما يك سرور مجازي ايميل تمام عيار نداريد ، اما برخي از مؤلفه هاي اساسي چنين ستاپي را براي كمك به شما در شروع كار خواهيد داشت.
پيش نيازها
براي پيروي از اين راهنما ، موارد زير را لازم داريد:
• سرور مجازي داراي Ubuntu 20.04 كه به عنوان سرور مجازي ايميل Postfix شما فعاليت مي كند. اين سرور مجازي بايد داراي يك كاربر غير ريشه با امتيازات sudo و فايروال تنظيم شده با UFW باشد. براي تنظيم اين گزينه مي توانيد راهنماي ستاپ اوليه سرور مجازي Ubuntu 20.04 را دنبال كنيد.
• يك نام دامنه كاملاً واجد شرايط كه به سرور مجازي Ubuntu 20.04 شما اشاره كند. توجه داشته باشيد كه اگر قصد دسترسي به ايميل از يك مكان خارجي را داريد ، بايد مطمئن شويد كه يك ركورد MX داريد كه به سرور مجازي ايميل شما نيز اشاره كند.
توجه داشته باشيد كه اين آموزش با اين فرض پيش ميرود كه شما هاستي را پيكربندي مي كنيد كه داراي FQDN mail.example.com ميباشد. در صورت لزوم ، حتماً example.com يا mail.example.com را تغيير دهيد تا FQDN شما را منعكس كند.
مرحله 1 – نصب Postfix
Postfix در مخازن پيش فرض اوبونتو گنجانده شده است ، بنابراين مي توانيد آن را با APT نصب كنيد.
براي شروع ، حافظه نهان بسته محلي apt خود را به روز كنيد:
$ sudo apt update
سپس بسته ي postfix را با دستور زير نصب كنيد. توجه داشته باشيد كه در اينجا ما متغير محيطي DEBIAN_PRIORITY=low را در اين دستور نصب وارد ميكنيم. اين امر باعث مي شود فرآيند نصب از شما بخواهد برخي گزينه هاي اضافي را پيكربندي كنيد:
$ sudo DEBIAN_PRIORITY=low apt install postfix
اين فرآيند نصب يك سري اعلان هاي تعاملي را باز مي كند. براي اهداف اين آموزش ، از اطلاعات زير براي پر كردن فرم هاي خود استفاده كنيد:
• نوع كلي پيكربندي ايميل؟براي اين، Internet Site را انتخاب كنيد چرا كه با تيازهاي فراساختاري مطابقت دارد.
• نام ايميل سيستم: اين دامنه اصلي است كه براي ساختن يك آدرس ايميل معتبر استفاده مي شود هنگامي كه فقط بخش حساب آدرس داده مي شود. به عنوان مثال ، نام ميزبان سرور مجازي شما mail.example.com است. به احتمال زياد بايد نام ايميل سيستم را به صورت example.com قرار دهيد تا با توجه به نام كاربري user1 ، Postfix از آدرس user1@example.com استفاده كند.
• گيرنده ايميل Root و postmaster: اين حساب لينوكس است كه از طريق ايميل به root @ و postmaster @ ارسال مي شود. براي اين كار از حساب اصلي خود استفاده كنيد. در اين مورد مثال ، Sammy .
• ساير مقاصد براي پذيرش ايميل: مقصد پستي را كه اين نمونه Postfix مي پذيرد تعيين مي كند. اگر لازم است دامنه ديگري را كه اين سرور مجازي مسئول دريافت آن است اضافه كنيد ، آنها را در اينجا اضافه كنيد. در غير اين صورت ، پيش فرض كافي خواهد بود.
• اجبار به روزرساني هاي همزمان در صف ايميل ؟: از آنجا كه به احتمال زياد از يك سيستم فايل ژورنال دار استفاده مي كنيد ، no را در اينجا بپذيريد.
• شبكه هاي محلي: ليستي از شبكه هايي است كه سرور مجازي ايميل شما براي تقويت پيام هاي آن ها پيكربندي شده است. پيش فرض براي بيشتر سناريوها كار خواهد كرد. اگر مي خواهيد آن را تغيير دهيد ، مطمئن شويد كه از نظر دامنه شبكه بسيار محدود باشد.
• محدوديت اندازه صندوق پستي: اين مي تواند براي محدود كردن اندازه پيام ها استفاده شود. تنظيم آن بر روي 0 محدوديت اندازه را غيرفعال مي كند.
• كاراكتر پسوند آدرس محلي: كاراكتري است كه مي تواند براي جدا كردن قسمت معمول آدرس از يك پسوند (براي ايجاد نام هاي مستعار پويا استفاده شود) استفاده مي شود. به طور پيش فرض ، + براي اين آموزش كار خواهد كرد.
• پروتكل هاي اينترنت براي استفاده: انتخاب كنيد آيا نسخه IP را كه Postfix از آن پشتيباني مي كند محدود كنيد يا خير. براي اهداف اين آموزش ، all را انتخاب كنيد.
براي بيان صريح تر ، اين تنظيمات مورد استفاده در اين راهنماست:
نوع كلي پيكربندي ايميل: سايت اينترنتي
نام ايميل سيستم: example.com (نه mail.example.com)
گيرنده ايميل Root و postmaster: نام كاربري حساب لينوكس اوليه (در اين مثال ها sammy )
ساير مقاصد براي پذيرش ايميل: $myhostname, example.com, mail.example.com, localhost.example.com,localhost
اجبار به روزرساني هاي همزمان در صف ايميل : خير
شبكه هاي محلي: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
محدوديت اندازه صندوق پستي: 0
كاراكتر پسوند آدرس محلي: +
پروتكل هاي اينترنت براي استفاده:al
توجه: اگر نياز به بازگشت براي تغيير اين تنظيمات داشتيد ، مي توانيد با تايپ كردن دستور زير اين كار را انجام دهيد:
$ sudo dpkg-reconfigure postfix
اعلان ها با پاسخ هاي قبلي شما ، از قبل پر مي شوند.
پس از اتمام مراحل نصب ، مي توانيد چند نسخه به روزرساني پيكربندي Postfix خود را انجام دهيد.
مرحله 2 – تغيير پيكربندي Postfix
اكنون مي توانيد برخي تنظيمات را انجام دهيد كه روند نصب بسته از شما نخواسته بود. بسياري از تنظيمات پيكربندي Postfix در فايل /etc/postfix/main.cf تعريف شده اند. به جاي ويرايش مستقيم اين فايل ، مي توانيد از دستور postconf Postfix براي پرس و جو يا تعيين تنظيمات پيكربندي استفاده كنيد.
براي شروع ، لوكيشن را براي صندوق پستي كاربر غير ريشه اوبونتو تنظيم كنيد. در اين راهنما ، ما از قالب Maildir استفاده خواهيم كرد ، كه پيام ها را به فايل هاي جداگانه كه بر اساس عملكرد كاربر بين دايركتوري ها منتقل مي شوند ، جدا مي كند. گزينه ديگري كه در اين راهنما پوشش داده نشده است ، فرمت mbox است كه تمام پيام ها را در يك فايل واحد ذخيره مي كند.
متغير home_mailbox را روي Maildir/ تنظيم كنيد. سپس ، يك ساختار دايركتوري تحت اين نام در ديركتوري هوم كاربر خود ايجاد خواهيد كرد. home_mailbox را با تايپ كردن دستور زير پيكربندي كنيد:
$ sudo postconf -e ‘home_mailbox= Maildir/’
در مرحله بعدي ، مكان جدول virtual_alias_maps را تنظيم كنيد ، كه نقشه هاي ايميل دلخواه را به حساب هاي سيستم لينوكس نگاشت مي كند. دستور زير را اجرا كنيد ، كه نقشه جدول را در يك فايل پايگاه داده هش به نام / etc / postfix / virtual نگاشت مي كند:
$ sudo postconf -e ‘virtual_alias_maps= hash:/etc/postfix/virtual’
اكنون كه مكان فايل نقشه هاي مجازي را در فايل main.cfخود تعريف كرده ايد ، مي توانيد خود اين فايل را ايجاد كرده و نگاشت حساب هاي ايميل را به حساب كاربري در سيستم لينوكس خود شروع كنيد. فايل را با ويرايشگر متن مورد نظر خود ايجاد كنيد. در اين مثال ، ما از nano استفاده خواهيم كرد:
$ sudo nano /etc/postfix/virtual
آدرسهايي را كه مايليد ايميل را براي آن بپذيريد ، ليست كنيد و به دنبال آن فضاي سفيد و كاربر لينوكس را كه دوست داريد ايميل را به ان تحويل دهيد.
به عنوان مثال ، اگر مي خواهيد ايميل را در آدرس contact@example.com و admin@example.com بپذيريد و دوست داريد آن ايميل ها را به كاربر sammy Linux تحويل دهيد ، مي توانيد فايل خود را مانند اين تنظيم كنيد:
/etc/postfix/virtual
contact@example.com sammy
admin@example.com sammy
پس از نگاشت همه آدرس ها به حساب هاي سرور مجازي مناسب ، فايل را ذخيره كنيد و ببنديد. اگر از nano استفاده كرده ايد ، اين كار را با فشار دادن CTRL + X ، Y ، سپس ENTER انجام دهيد.
نگاشت را با تايپ اين دستور اعمال كنيد:
$ sudo postmap /etc/postfix/virtual
فرايند Postfix را مجدداً راه اندازي كنيد تا مطمئن شويد كه تمام تغييرات شما اعمال شده است:
$ sudo systemctl restart postfix
با فرض اينكه از راهنماي ستاپ اوليه پيروي كرده ايد ، فايروال را با UFW پيكربندي نموده ايد. اين فايروال به طور پيش فرض اتصالات خارجي را به سرويس هاي روي سرور مجازي شما مسدود مي كند مگر اينكه اين اتصالات به صراحت مجاز باشند ، بنابراين بايد يك قانون فايروال اضافه كنيد تا استثنائي براي Postfix داشته باشيد.
مي توانيد با تايپ دستور زير، اجازه اتصالات به سرويس را بدهيد:
$ sudo ufw allow Postfix
با اين كار ، Postfix پيكربندي شده و آماده پذيرش اتصالات خارجي است. با اين حال ، شما هنوز آمادگي آزمايش آن را با يك سرويس گيرنده ايميل نداريد. قبل از اينكه بتوانيد كلاينت را نصب كنيد و از آن براي تعامل با ايميل ارسال شده به سرور مجازي خود استفاده كنيد ، لازم است چند تغيير در تنظيمات سرور مجازي اوبونتو انجام دهيد.
مرحله 3 – نصب كلاينت پست الكترونيكي و اوليه سازي ساختار Maildir
به منظور تعامل با ايميل تحويل داده شده ، اين مرحله شما را با روند نصب بسته s-s-nail آشنا مي كند. يك متغير پر از ويژگي از كلاينت xmail BSD است كه مي تواند فرمت Maildir را به درستي اداره كند.
اما قبل از نصب كلاينت ، منطقي است كه مطمئن شويد متغير محيط MAIL شما به درستي تنظيم شده است. s-nailبه دنبال اين متغير است تا بفهمد كجا مي تواند ايميل را براي كاربر شما پيدا كند.
براي اطمينان از تنظيم متغير MAIL بدون توجه به نحوه دسترسي به حساب كاربري خود – خواه از طريق ssh، su، su – يا sudo، به عنوان مثال – بايد متغير را در فايل /etc/bash.bashrc تنظيم كرده و اضافه كنيد. آن را به فايلي در /etc/profile.d اضافه كنيد تا مطمئن شويد كه به طور پيش فرض براي همه كاربران تنظيم شده است.
براي افزودن متغير به اين فايل ها ، دستور زير را تايپ كنيد:
$ echo ‘export MAIL=~/Maildir’ | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh
براي خواندن متغير در بخش فعلي ، فايل /etc/profile.d/mail.sh را وارد كنيد:
$ source /etc/profile.d/mail.sh
با كامل شدن آن ، كلاينت ايميل s-nail را با APT نصب كنيد:
$ sudo apt install s-nail
قبل از اجراي كلاينت ، چند تنظيمات وجود دارد كه بايد انجام دهيد. فايل /etc/s-nail.rc را در ويرايشگر خود باز كنيد:
$ sudo nano /etc/s-nail.rc
در انتهاي فايل گزينه هاي زير را اضافه كنيد:
/etc/s-nail.rc
. . .
set emptystart
set folder=Maildir
set record=+sent
در اينجا عملكرد اين خطوط آورده شده است:
set emptystart به كلاينت اجازه مي دهد حتي با يك صندوق ورودي خالي باز شود
set folder=Maildir ديركت.ري Maildir را روي متغير folder داخلي تنظيم مي كند
set record=+sent يك فايل mbox ارسال شده را براي ذخيره ايميل ارسال شده در هر ديركتوري به عنوان متغير folder ايجاد مي كند ، در اين حالت Maildir
پس از اتمام فايل را ذخيره كنيد و ببنديد. اكنون آماده هستيد تا ساختار Maildir سيستم را تنظيم كنيد.
يك راه سريع براي ايجاد ساختار Maildir در ديركتوري هوم شما اين است كه به خودتان يك ايميل با دستور s-nail ارسال كنيد. از آنجا كه فايل ارسال شده فقط پس از ايجاد Maildir در دسترس خواهد بود ، شما بايد نوشتن آن را براي اين ايميل اوليه غيرفعال كنيد. اين كار را با عبور از گزينه -Snorecord انجام دهيد.
با اتصال يك رشته به دستور s-nail ، ايميل را ارسال كنيد. اين دستور را تنظيم كنيد تا كاربر Linux خود را به عنوان گيرنده علامت گذاري كند:
$ echo ‘init’ | s-nail -s ‘init’ -Snorecord sammy
توجه: ممكن است پاسخ زير را دريافت كنيد:
Output
Can’t canonicalize “/home/sammy/Maildir”
طبيعي است و ممكن است هنگام ارسال اين پيام اول ظاهر شود.
با جستجوي ديركتوري ~ / Maildir خود مي توانيد مطمئن شويد كه ديركتوري ايجاد شده است:
$ ls -R ~/Maildir
خواهيد ديد كه ساختار دايركتوري ايجاد شده است و يك فايل پيام جديد در ديركتوري ~ / Maildir / new موجود است:
Output
/home/sammy/Maildir/:
cur new tmp
/home/sammy/Maildir/cur:
/home/sammy/Maildir/new:
1463177269.Vfd01I40e4dM691221.mail.example.com
/home/sammy/Maildir/tmp:
اكنون كه ساختار دايركتوري ايجاد شده است ، مي توانيد با مشاهده پيام init كه ارسال كرده ايد و ارسال يك پيام به آدرس ايميل خراجي، كلاينت s-nail s را امتحان كنيد.
مرحله 5 – آزمايش كلاينت
براي باز كردن كلاينت ، دستور s-nail را اجرا كنيد:
$ s-nail
در كنسول خود ، يك صندوق ورودي ابتدايي با پيام init خواهيد ديد:
Output
s-nail version v14.9.15. Type `?’ for help
“/home/sammy/Maildir”: 1 mesغير مجاز مي باشدe 1 new
>N 1 sammy@example.com 2020-05-19 15:40 14/392 init
براي نمايش پيام، ENTER را فشار دهيد:
Output
[– Mesغير مجاز مي باشدe 1 — 14 lines, 369 bytes –]:
From sammy@example.com Tue May 19 15:40:48 2020
Date: Tue, 19 May 2020 15:40:48 +0000
To: sammy@example.com
Subject: init
Mesغير مجاز مي باشدe-Id: <20160513220749.A278F228D9@mail.example.com>
From: sammy@example.com
init
مي توانيد با تايپ h و سپس ENTER به ليست پيام ها برگرديد :
? h
Output
>R 1 sammy@example.com 2020-05-19 15:40 14/392 init
توجه كنيد كه پيام اكنون حالت R دارد ، نشان مي دهد كه خوانده شده است.
از آنجا كه اين پيام چندان مفيد نيست ، مي توانيد با فشار دادن d آن را حذف كرده و سپس ENTER بزنيد.
? d
براي بازگشت به ترمينال ، q و سپس ENTER را بزنيد:
? q
به عنوان يك آزمايش نهايي ، بررسي كنيد كه آيا s-nail قادر به ارسال صحيح پيام هاي ايميل است يا خير. براي اين كار مي توانيد همانند پيام init كه در مرحله قبل براي خود ارسال كرديد ، محتويات يك فايل متني را درون فرايند s-nail قرار دهيد.
با نوشتن پيام آزمايشي در ويرايشگر متن شروع كنيد:
$ nano ~/test_mesغير مجاز مي باشدe
در داخل ، متني را كه مي خواهيد ارسال كنيد ، وارد كنيد:
~/test_mesغير مجاز مي باشدe
Hello,
This is a test. Please confirm receipt!
فايل را پس از نوشتن پيام خود ذخيره كنيد و ببنديد.
سپس از دستور cat براي ارسال پيام به روند s-nail استفاده كنيد. مي توانيد با مثال زير اين كار را انجام دهيد:
-s: خط موضوع پيام ايميل را مشخص مي كند
-r: تغيير اختياري در قسمت “from” ايميل. به طور پيش فرض ، كاربر لينوكس كه با آن وارد شده ايد براي پر كردن اين فيلد استفاده مي شود. گزينه -r به شما امكان مي دهد اين مسئله را با يك آدرس معتبر ، مانند يكي از مواردي كه در فايل / etc / postfix / virtual تعريف كرده ايد ، پر كنيد. براي نشان دادن ، دستور زير از contact@example.com استفاده مي كند
همچنين ، حتما user@email.com را به يك آدرس ايميل معتبر كه به آن دسترسي داريد تغيير دهيد:
$ cat ~/test_mesغير مجاز مي باشدe | s-nail -s ‘Test email subject line’ -r contact@example.com user@email.com
سپس ، براي آدرس ايميلي كه پيام را براي آن ارسال كرده ايد ، به صندوق ورودي برويد. پيام خود را تقريباً فوراً خواهيد ديد.
توجه: اگر پيام در صندوق ورودي شما نيست ، ممكن است به پوشه Spam تحويل داده شده باشد.
مي توانيد پيام هاي ارسالي خود را در كلاينت s-nail خود مشاهده كنيد. دوباره كلاينت تعاملي را شروع كنيد:
$ s-nail
از كلاينت ايميل ، پيام هاي ارسالي خود را با تايپ كردن اين دستور مشاهده كنيد:
? file +sent
خروجي مانند اين را خواهيد ديد:
Output
+[/home/sammy/Maildir/]sent: 1 mesغير مجاز مي باشدe 1 new
▸N 1 contact@example.com 2020-05-19 15:47 12/297 Test email subject line
مي توانيد ايميل ارسال شده را با استفاده از همان دستوراتي كه براي ايميل هاي ورودي استفاده مي كنيد مديريت كنيد.
نتيجه
اكنون Postfix را در سرور مجازي Ubuntu 20.04 خود تنظيم كرده ايد. مديريت سرور مجازي هاي ايميل مي تواند يك كار سخت براي مديران جديد سيستم باشد ، اما با اين پيكربندي ، بايد عملكرد ايميل MTA كافي را براي شروع كار خود داشته باشيد.
از اين لينك ها زير مي توانيد آمورش هاي بيشتري براي لينوكس پيدا كنيد :
چگونه به Ubuntu 20.04 Focal Fossa ارتقا دهيد
نحوه ايجاد نماها (Views) براي توسعه وب Django
نصب Mount NFS در اوبونتو 20.04
نحوه توسعه برنامه ها در Kubernetes با Okteto
نصب و پيكربندي Laravel با Nginx در اوبونتو 20.04
نحوه تنظيم Jupyter Notebook با پايتون در Ubuntu 20.04
نصب و پيكربندي Nextcloud در اوبونتو 20.04
نصب و پيكربندي Ansible در اوبونتو 20.04
مقدمه اي بر مديريت پيكربندي با Ansible
ارائه برنامه هاي Flask با uWSGI و Nginx در اوبونتو 18.04
نصب و پيكربندي Postfix در اوبونتو 20.04
خريد vps – خريد سرور مجازي – خريد سرور – سرور هلند – فروش vps – سرور مجازي آمريكا – خريدvps – سرور مجازي هلند – فروش سرور مجازي – سرور آمريكا – vps – سرور مجازي انگليس – سرور مجازي آلمان – سرور مجازي كانادا – خريد vps آمريكا – خريد وي پي اس – سرور – خريد سرور مجازي هلند – vps خريد – سرور مجازي فرانسه – سرور مجازي هلند – خريد vps آمريكا – خريد سرور مجازي ارزان هلند – vps – خريد vps هلند – خريد سرور مجازي آمريكا – خريد vps فرانسه – تست vps – سرور مجازي تست – سرور مجازي ويندوز – ارزانترين vps – خريد وي پي اس – vps ارزان –
برچسب: ،