نصب و راه‌اندازیiredmail

iredmail چیست؟یک Mail Server متن‌باز، رایگان است که System Administrator ها کمک می‌کند تا از پیچیدگی‌های پیکربندی فاصله بگیرند. این Mail Server بر روی همه توزیع‌های اصلی لینوکسی قابلیت نصب و پیاده‌سازی داشته و از Packageهای زیر نیز استفاده می‌کند.میل سروری که خیلی آسون راه اندازی میشه و پیچیدگی های خیلی از سیستم های مشابه رو نداره به همین دلیل امروز آموزش نصب و راه اندازی این میل سرور رو گذاشتم.مشخصات مورد نیاز سیستمسرور لینوکسی (در این اموزش از اوبنتو 22.04 استفاده شده )ماشین مجازی حداقل با 4 گیگ رم ، دو هسته cpuثبت دامنه و ایجاد رکورد MX برای میل سازمانیدر ابتدا سرور را بروز رسانی می‌کنیم.sudo apt update -y sudo apt upgrade -yدر گام بعد انتخاب نام ماشین مجازی است؛ نام هاست باید بصورت انتخاب شود: mail.Domain-Name sudo hostnamectl set-hostname mail.<Domain-Name>در بخش بعد تنظیمات dns را انجام می‌دهیم با ویرایش فایل /etc/hostssudo nano /etc/hosts <Server-IP> mail.<Domain-Name>تا این قسمت تنظیمات اولیه سرور به پایان رسیدحالا باید فایل اسکریپت مربوطه را دانلود کنیم(پیشنهاد می‌کنم مستقیم از خود وب سایت اخرین نسخه رو دریافت کنید.) از لینک زیر می‌تونید اخرین نسخه رو دریافت کنین.wget https://www.iredmail.org/download.htmlیه فایل با پسوند tar.gz هست که بعد دانلود در سرور باید استخراجش کنین با دستور زیر و بعد وارد دایرکتوری ایجاد شده می‌شویم.tar xvf X.tar.gz cd iRedMail-X/در قدم بعدی به اسکریپت دسترسی داده و اجرا می‌کنیم :chmod +x iRedMail.sh bash iRedMail.shورود به بخش نصبمکان پیش فرض لاگ ها این دایرکتوری هست که برای امنیت میشه تغییر داد انتخاب دیتابیس مورد نظر که بهتره برای سازمان های متوسط MySQL و سازمان های بزرگ Postgres توصیه میشه و اگه میخواین با LDAP ارتباط برقرار کنه OpenLDAP گزنیه مناسب تریه .برای ارتباط با LDAP باید دامین رو وارد کنیداضافه کردن اولین دامنه مورد نظر ایمیل پیش فرض برای مدیریت postmaster هست که باید رمز رو انتخاب کنیندر قسمت آخر هم به صورت اختیاری برخی ویژگی به شما ارائه میشه که می‌توانید انتخاب کرده و نصب نمایید.(توصیه میشه از fail2ban و sogo حتما استفاده کنین)و iredadmin هم برای مدیریت خود میل سرور بصورت گرافیکی هست که حتما نصب بشهدر آخر یه تاییده نصب از شما میخواد که با y پاسخ بدید و تمام :)حالا یکبار سرور رو ری استارت کنید.sudo shutdown -r nowفقط یه نکته برای سوال زیر این n را انتخاب کنیم:در بخش دوم باید تنظیمات مربوط به certificatie انجام داد که با دستور های ذیل میشه یه certificatie رایگان برای خودمون بگیریم.sudo apt install software-properties-common sudo add-apt-repository ppa:certbot/certbot -y sudo apt install certbot -y با دستور زیر هم certificatie ایجاد میشه:sudo certbot certonly --webroot --agree-tos --email you@example.com -d mail.your-domain.com -w /var/www/html/فقط یه نکته برای سوال زیر این n را انتخاب کنیم:چیزی نمونده فقط باید certificatie ایجاد شده در Nginx قرار بدیم فایل رو ویرایش می‌کنیم و مقادیر رو جابه جا میشن sudo nano /etc/nginx/templates/ssl.tmpl ssl_certificate /etc/ssl/certs/iRedMail.crt;ssl_certificate_key /etc/ssl/private/iRedMail.key;--------------------Replcae---------------------ssl_certificate /etc/letsencrypt/live/mail.<Domain-Name>/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/mail.<Domain-Name>/privkey.pem; و nginx ری استارت بشه sudo nginx -t sudo systemctl reload nginxخب سرور هم ارتباط امن داره حالا در قدم بعد دو سرویس Postfix و Dovecot ارائه دهنده ایمیل باید certificatie رو دریافت کنن :فایل مربوطه رو ادیت می‌کنیم و مقادیر جدید تعویض میشنsudo nano /etc/postfix/main.cf smtpd_tls_key_file = /etc/ssl/private/iRedMail.keysmtpd_tls_cert_file = /etc/ssl/certs/iRedMail.crtsmtpd_tls_CAfile = /etc/ssl/certs/iRedMail.crt--------------------Replcae---------------------smtpd_tls_key_file = /etc/letsencrypt/live/mail.<Domain-Name>/privkey.pemsmtpd_tls_cert_file = /etc/letsencrypt/live/mail.<Domain-Name>/cert.pemsmtpd_tls_CAfile = /etc/letsencrypt/live/mail.<Domain-Name>/chain.pemو سرویس ری استارت بشه sudo systemctl reload postfixحالا تنظیم شدن Postfix مونده:sudo nano /etc/dovecot/dovecot.conf ssl_cert = </etc/ssl/certs/iRedMail.crtssl_key = </etc/ssl/private/iRedMail.key--------------------Replcae---------------------ssl_cert = </etc/letsencrypt/live/mail.<Domain-Name>/fullchain.pemssl_key = </etc/letsencrypt/live/mail.<Domain-Name>/privkey.pemو dovecot ری استارت بشه sudo systemctl reload dovecotتبریک تامام !!برای ورود به میل سرور از آدرس های زیر استفاده کنین.https://mail.your-domain.com/iredadmin/ https://mail.your-domain.com/sogo/ https://mail.your-domain.com/mail/اما یه نکته مونده dns ها چی میشن؟؟؟؟در سناریویی که من دارم وب سایت با cpanel میزبانی میشه اما میل سرور در مکانی دیگه است.خب برای این کار باید چندتا رکورد مختلف در cpanel ایجاد کنیم و بیشتر این رکورد ها برای اینکه ایمیل ها معتبر باشن و در اسپم نرن و یک رکورد باید توسط سرویس دهنده ایجاد شه 1- A record= mail server ip2-MX record= X.com / Priority: 0/ Destination: X.com3-MX record= autodiscover / Priority: 0/ Destination: mail.X.com4-MX record= autoconfig / Priority: 0/ Destination: mail.X.com5-DMARC record= TXT _dmarc &quot v=DMARC1; p=none &quot6- spf record= TXT &quot v=spf1 ip4:... ~all &quot خب دوتا رکورد دیگه مونده که برای ایجاد DKIM باید از سرور کمک بگیریم و دستور ذیل رو اجرا کنیمبعد خروجی رو داخل cpnel قرار میدیمamavisd-new showkeysخروجی بعد داخل یه رکورد متنی قرار می‌دیمdkim record= TXT v=DKIM1; p= without&quot&quotبرای رکورد سرویس دهنده ام باید یه رکورد PTR باشه که میتونید تیکت بزنید با ادرس دامنه ایجاد کنه برای چک کردن ام از ادرس زیر استفاده کنیدhttps://www.whatsmydns.net/dns-lookup/ptr-records دیگه چیزی نمونده هم سرور امن شده و هم dns ها ست شدن از میل سرور لذت ببرید.پورت 25 ,465 ,587 برای دریافت ایمیل باز باشه می‌تونید برای مانیتوریگ بیشتر netdata رو نصب کنین فقط یه مشکلی داره authentication نداره و روی سرور های پابلیک میتونه خطرناک باشه دستور اول برای نصب دستور دوم برای ویرایش ip که سرویس رو ببینه و دستور سوم برای ری استارت سرویس sudo apt install netdata /etc/netdata/netdata.conf >>>>>>>>>>>>bind socket to IP = YourSeverIPAddresssudo systemctl restart netdataخب برای حسن ختام می‌تونید با وب سایت زیر ایمیل سرور رو چک کنین و بهتون امتیاز میده که بدونید درست پیکربندی شده یا نه و اینکه چه مشکلاتی داره https://www.mail-tester.com/امیداروم از این آموزش استفاده کنید :)