Anonim

أنت تحاول تعطيل تسليم البريد الإلكتروني المحلي باستخدام iRedMail و postfix على خادم البريد الإلكتروني محلي الصنع ، وأنت تدق رأسك في الحائط. أنت تستخدم خادمًا محلي الصنع لتسليم البريد الإلكتروني ، لكن البريد الوارد يعيش على خادم ثان. في هذه المقالة ، سأشارك ما تعلمته عنكيفية تعطيل تسليم البريد الإلكتروني المحلي باستخدام Postfixوإجبار جميع رسائل البريد الإلكتروني الخاصة بنطاقات معينة على إعادة توجيهها من خلال عناوين MX المناسبة.

لقد بحثت وبحثت وبحثت في الإنترنت عن هذه المعلومات ، ولكي أكون صادقًا ، لست متأكدًا مما إذا كانت ستعمل من أجل الإعداد الخاص بك.ولكن استنادًا إلى مقدار الوقت الذي أمضيته في البحث عن هذه المشكلة ، حتى بصفتي خبيرًا في خوادم غير تابعة لنظام Linux ، فقد اعتقدت أنني سأمرر النتائج التي توصلت إليها وأدعو الله أن يساعد ذلك في التخفيف من إحباطك.

الخطأ

إذا كنت ترى الخطأ "مستخدم غير معروف في جدول صندوق البريد الافتراضي" ، فأنت في المكان الصحيح. في الأساس ، تريد بعد الإصلاح أن يتوقف عن محاولة تسليم البريد الإلكتروني إلى حسابات البريد الإلكتروني على خادمك غير الموجودة. هل هذا حقًا طلب كثير؟

إصلاح Postfix لتعطيل تسليم البريد الإلكتروني المحلي لمجال

بشكل أساسي ، جميع إعدادات التكوين الرئيسية لـ postfix موجودة في main.cf ، لذا يمكنك فتح الملف بكتابة vim /etc/postfix/main.cf.

ابحث عن سطر virtual_mailbox_domains - علق عليه بوضعقبله. سيؤدي ذلك إلى تعطيل تسليم البريد الإلكتروني المحلي تمامًا. ها أنا:

 virtual_mailbox_domains=وكيل: ldap: /etc/postfix/ldap/virtual_mailbox_domains.cf

بعد ذلك ، ابحث عن سطر relay_domains ، وأضف كل ما هو موجود مسبقًا بأسماء المجال الخاصة بعناوين البريد الإلكتروني التي تحتوي علب الوارد الخاصة بهاdoعلى خادم البريد الإلكتروني محلي الصنع. منجم يشبه هذا:

 relay_domains=payette.email، $ mydestination، proxy: ldap: /etc/postfix/ldap/relay_domains.cf

أخيرًا ، ابحث عن سطر خرائط النقل ، وقم بتجزئة مسبقة: / etc / postfix / transport أيًا كان هناك. سننشئ الملف الفعلي في الخطوة التالية. منجم يشبه هذا:

transport_maps=التجزئة: / etc / postfix / transport ، proxy: ldap: /etc/postfix/ldap/transport_maps_user.cf ، الوكيل: ldap: /etc/postfix/ldap/transport_maps_domain.cf

الآن ، كل ما تبقى للقيام به هو إنشاء ملف النقل الذي يقول "خذ كل البريد الإلكتروني الوارد إلى هذا المجال وأرسله عبر خادم MX هذا بدلاً من ذلك!"

لذا ، قم بإنشاء الملف بكتابة vim / etc / postfix / transport. أضف سطرًا لكل مجال تريد تعطيل التسليم المحلي له مثل المثال أدناه ، مع وضع خادم MX داخل قوسين. ها أنا:

 payetteforward.com smtp: 

بعد ذلك ، افعل ما تفعله خريطة البريد على الملف بكتابة postmap / etc / postfix / transport. هذا مهم - سأشرح السبب ، لكنني متأكد من أن الأمر فوق رأسك. (ليس لدي أي فكرة على الإطلاق عما يفعله.)

خدعة: إذا لم تكن متأكدًا من خادم MX الصحيح لمجال معين ، فيمكنك استخدام هذا الأمر الرائع لمعرفة ما هو عليه - أعتقد أنك ستحفره حقًا ، يا رجل .

 dig -tmx payetteforward.com 

بعد ذلك ، أعد تشغيل postfix عن طريق كتابة إعادة تشغيل postfix للخدمة ، وقل صلاة ، ثم حاول مرة أخرى. إذا نجحت ، اشتري لي سيارة كورفيت. إذا لم يحدث ذلك ، أخبرني في قسم التعليقات ويمكننا العمل معًا لجعل هذا دليلًا مفهومًا إلى حد ما لإصلاح هذه المشكلة.

إصلاح Postfix

في الوقت الحالي ، كن ممتنًا لحل المشكلة: لقد عطلت التسليم المحلي على خادم البريد الإلكتروني المحلي الذي يعمل بنظام postfix أو iRedMail ، وأنت تستخدم عناوين MX الصحيحة بدلاً من ذلك.

تعطيل تسليم البريد الإلكتروني المحلي باستخدام Postfix و iRedMail