Anonim

אתה מנסה להשבית את משלוח הדואר האלקטרוני המקומי עם iRedMail ו-postfix בשרת האימייל הביתי שלך, ואתה דופק את הראש בקיר. אתה משתמש בשרת תוצרת בית למשלוח דואר אלקטרוני, אבל תיבת הדואר הנכנס חיה בשרת שני. במאמר זה, אשתף במה שלמדתי על כיצד להשבית משלוח דוא"ל מקומי עם Postfix ולאלץ את כל הדוא"ל עבור דומיינים מסוימים להעביר דרך שלהם כתובות MX מתאימות.

חיפשתי וחיפשתי וחיפשתי באינטרנט את המידע הזה, ולמען האמת, אני אפילו לא בטוח אם זה יעבוד עבור ההגדרה שלך.אבל בהתבסס על משך הזמן שהשקעתי בחקר הבעיה הזו, אפילו כמומחה לשרתים שאינם בלינוקס, חשבתי להעביר את הממצאים שלי ולהתפלל שזה יעזור להקל על התסכול שלך.

הטעות

אם אתה רואה את השגיאה "משתמש לא ידוע בטבלת תיבת דואר וירטואלית", אתה במקום הנכון. בעיקרון, אתה רוצה ש-postfix יפסיק לנסות להעביר דוא"ל לחשבונות דוא"ל בשרת שלך שאינם קיימים. האם זה באמת יותר מדי לבקש?

תיקון Postfix כדי להשבית משלוח דואר אלקטרוני עבור דומיין

בעיקרון, כל הגדרות התצורה הראשיות של postfix נמצאות ב-main.cf, כך שתוכל לפתוח את הקובץ על ידי הקלדת vim /etc/postfix/main.cf .

חפשו את שורת הדומיינים הווירטואליים - הגיבו על ידי הוספתלפניה. זה הולך להשבית את משלוח הדואר האלקטרוני המקומי לחלוטין. הנה שלי:

virtual_mailbox_domains=proxy:ldap:/etc/postfix/ldap/virtual_mailbox_domains.cf

לאחר מכן, מצא את שורת relay_domains, והוסף את כל מה שיש שם עם שמות הדומיין של כתובות האימייל שתיבות הדואר הנכנס שלהן do מופיעות אצלך שרת דוא"ל תוצרת בית. שלי נראה כך:

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

לבסוף, מצא את קו transport_maps, והוסף מראש hash:/etc/postfix/transport לכל מה שיש. אנו ניצור את הקובץ בפועל בשלב הבא. שלי נראה כך:

transport_maps=hash:/etc/postfix/transport, proxy:ldap:/etc/postfix/ldap/transport_maps_user.cf, proxy:ldap:/etc/postfix/ldap/transport_maps_domain.cf

עכשיו, כל מה שנותר לעשות הוא ליצור את קובץ התחבורה שאומר "קח את כל הדואר האלקטרוני הנכנס לדומיין הזה ושלח אותו דרך שרת ה-MX הזה במקום זאת!"

לכן, צור את הקובץ על ידי הקלדת vim /etc/postfix/transport . הוסף שורה עבור כל תחום שברצונך להשבית עבורו מסירה מקומית, כמו הדוגמה למטה, תוך שימת שרת MX בתוך סוגריים. הנה שלי:

payetteforward.com smtp:

לאחר מכן, עשה כל מה ש-postmap עושה בקובץ על ידי הקלדת postmap /etc/postfix/transport . זה חשוב - הייתי מסביר למה, אבל אני בטוח שזה מעבר לראש שלך. (אין לי מושג מה זה עושה.)

טריק: אם אתה לא בטוח מהו שרת ה-MX הנכון עבור דומיין נתון, אתה יכול להשתמש בפקודה הגרובית הזו כדי לגלות מהי - אני חושב שבאמת תחפור את זה, אחי .

dig -tmx payetteforward.com

הבא, הפעל מחדש את postfix על ידי הקלדת service postfix restart , אמור תפילה ולאחר מכן נסה שוב. אם זה עובד, קנה לי קורבט. אם זה לא קורה, הודע לי בקטע ההערות ונוכל לעבוד יחד כדי להפוך את זה למדריך קצת מובן לתיקון בעיה זו.

תיקון פוסט

לעת עתה, אסירת תודה שהבעיה נפתרה: השבתת את המסירה המקומית בשרת האימייל המקומי שלך שמריץ postfix או iRedMail, ובמקום זאת אתה משתמש בכתובות ה-MX הנכונות.

השבת משלוח דואר מקומי עם Postfix ו-iRedMail