תיבת catch-all מורה לשרת הדואר לקבל כל הודעה שנשלחת לדומיין, גם כשהנמען אינו קיים. במקום לדחות את typo@yourdomain.com בשגיאת 550, השרת מקבל אותה. הדבר נשמע שימושי עד שדואר זבל, דיוג והתקפות לאיסוף כתובות זורמים דרך הפתח.
דומיינים עלולים לאבד את מוניטין השליחה בתוך שבועות לאחר הפעלת catch-all בלי אמצעי הגנה. ההגדרה עצמה אינה מסובכת. האתגר הוא למנוע ממנה להפוך לבעיה תפעולית.
המדריך מציג שלוש תבניות בידוד להפעלה בטוחה יותר של תיבת catch-all ב-Microsoft 365, במערך Linux או ב-Google Workspace. אם עדיין לא החלטתם אם היא נחוצה, קראו תחילה על דואר catch-all לדומיין.
מהי תיבת catch-all?
תיבת catch-all היא תיבת דואר נכנס אחת שמקבלת כל הודעה לדומיין שאינה תואמת לכתובת קיימת. כשמישהו שולח אל misspelled-name@yourdomain.com, ההודעה מגיעה לתיבה הייעודית במקום להידחות.
הבעיה היא שהשרת מקבל עכשיו הכול. בוטים של ספאם, ניסיונות דיוג וסריקות ספרייה אוטומטיות מקבלים כולם תשובת 250 OK. בלי כללי בידוד, התעבורה מתערבבת בדואר האמיתי ועלולה לפגוע במוניטין הדומיין.
כלל הזהב: לעולם לא לנתב לתיבה ראשית
זהו כלל חיוני. תעבורת catch-all עוקפת את Directory-Based Edge Blocking (DBEB), ולכן השרת מקבל את התוכן לפני אימות הנמען. ניתוב הזרם אל ceo@company.com או לכל תיבה פעילה יוצר שטח מת אבטחתי שעלול להתגלות מאוחר.
כל התבניות הבאות מבוססות על אותו עיקרון: בודדו את זרם ה-catch-all מדואר הייצור.
תבנית 1: מאגר הסגר (Microsoft 365 / Exchange)
זו גישה נפוצה בארגונים שצריכים לשמור דואר catch-all מסיבות משפטיות או לצורכי גילוי, אך אינם רוצים התראות מדי חמש דקות.
איך זה עובד
- קליטה - השרת מקבל דואר לנמענים לא מוכרים.
- תיוג - Transport Rule מזהה שההודעה חיצונית ואינה ממוענת למשתמש תקף.
- דיכוי - הכלל מגדיר Spam Confidence Level (SCL) לערך 9, כלומר ספאם בסבירות גבוהה.
- אחסון - ההודעה מנותבת לתיבה משותפת כמו
catchall-sink@yourdomain.com.
הגדרת PowerShell
תחילה הגדירו את הדומיין כ-"Internal Relay" ב-Exchange Admin Center, פעולה שמשביתה DBEB. לאחר מכן הפעילו:
# Create the sink (shared mailbox - no license needed)
New-Mailbox -Shared -Name "CatchAll Sink" -PrimarySmtpAddress catchall-sink@yourdomain.com
# Create the transport rule
New-TransportRule -Name "Catch-All Routing & Suppression"
-FromScope "NotInOrganization"
-SentTo "catchall-sink@yourdomain.com"
-RedirectMessageTo "catchall-sink@yourdomain.com"
-SetSCL 9
-ExceptIfRecipientBelongsTo "All Valid Users Group"
למה SCL 9? בלעדיו תיבת ה-catch-all מתמלאת ברעש של התראות. SCL 9 מעביר הכול לתיקיית דואר זבל. אפשר לבדוק אותה מדי שבוע במקום מדי שעה.
תבנית 2: זרם מתויג (Postfix / Linux)
אם אתם מפעילים מערך Postfix/Dovecot משלכם, ייתכן שתיבה נפרדת תהיה מיותרת. במקום זאת, הוסיפו כותרת ותנו לכללים בצד הלקוח למיין.
איך זה עובד
- קליטה -
luser_relayמקבל הודעה לנמענים מקומיים לא מוכרים. - שינוי - ה-MTA מוסיף כותרת
X-Catch-All: True. - סינון - כללי Sieve מעבירים את ההודעה לתיקייה ייעודית.
הגדרת Postfix
# /etc/postfix/main.cf
# Route unknown local users to a specific alias
luser_relay = catchall_alias
# /etc/postfix/virtual
# Map the alias to a real user
catchall_alias realuser@yourdomain.com
חשוב: luser_relay פועל רק בדומיינים מקומיים. עבור כמה דומיינים וירטואליים, השתמשו ב-virtual_alias_maps עם תו כללי:
# /etc/postfix/virtual
@example.com realuser@example.com
אם אתם מגדירים העברת דואר לצד כללי catch-all, ודאו שהמפות הווירטואליות אינן מתנגשות. כללים חופפים הם סיבה נפוצה לניתוב שגוי.
מסנן Sieve
אל תסתמכו על העיניים כדי להפריד תעבורת catch-all. הפכו זאת לאוטומטי:
if header :contains "X-Original-To" "catchall_alias" {
fileinto "Junk/CatchAll";
stop;
}
תבנית 3: תו כללי חלקי (ניתוב Regex)
זו גישה מתאימה כשאין צורך בתיבת catch-all מלאה. במקום לקבל *@domain.com, מקבלים רק תבניות מסוימות כמו sales-*@domain.com ודוחים את היתר.
איך זה עובד
מגדירים את ה-MTA או ספק הדואר לקבל כתובות שתואמות לביטוי regex, למשל sales-webinar@ ו-sales-q1@, ולדחות יעדים בסיכון גבוה כמו admin@ או hr@.
הגדרת Google Workspace
- עברו אל Apps > Google Workspace > Gmail > Default Routing.
- תחת Specify Envelope Recipients, בחרו "Pattern Match".
- הזינו regex:
^sales-.*@yourdomain\.com$ - הגדירו פעולה: שינוי נמען המעטפה ל-
sales-team@yourdomain.com.
תוצאה: sales-promo@yourdomain.com מתקבלת. admin@yourdomain.com נדחית עם 550. הדבר עשוי לצמצם מאוד את שטח התקיפה של התקפות לאיסוף כתובות מספרייה.
הכתובות צריכות לתפקד גם ככינויי דוא״ל? אפשר לשלב תווים כלליים חלקיים עם העברת כינויים אם הספק תומך בכך.
מניעת לולאת ניתוב בתיבת catch-all
לולאת ניתוב היא אחד הכשלים המסוכנים בהגדרת catch-all. כך היא נוצרת:
- ה-catch-all מקבל דואר עבור
ghost@domain.com. - כלל מעביר אותו אוטומטית אל
external@gmail.com. - Gmail דוחה אותו בגלל כשל SPF/DMARC.
- Gmail מחזיר את ה-NDR אל
ghost@domain.com. - ה-catch-all מקבל את הודעת ההחזרה.
- הכלל מעביר את הודעת ההחזרה ל-Gmail.
- התהליך חוזר עד חריגה מ-
MaxHopCount.
יופיעו שגיאות כמו 5.4.14 Hop count exceeded או 5.4.6 Routing loop detected. בדומיין עמוס הדבר עלול להגדיל במהירות את תור השליחה ולהפעיל חסימות ספאם בתוך שעות.
רשימת בדיקות למניעה
- בדקו כותרות - ודאו שה-MTA מכבד את הכותרות
X-Loopו-Delivered-To. - חסמו תשובות אוטומטיות - הגדירו כללי catch-all כך שידלגו על הודעות עם הכותרת
Auto-Submitted: auto-generated. - נקודה חשובה ב-Microsoft 365 - מדיניות הספאם היוצא חוסמת כברירת מחדל העברה חיצונית עם השגיאה
5.7.520 Access denied. צריך להפעיל זאת ב-Outbound Spam Filter Policy, אך הדבר מגדיל את סיכון ה-backscatter. שקלו היטב.
למידע נוסף על מלכודות העברה בין ספקים, ראו את המדריך בנושא העברת כינוי דוא״ל.
למה רוב תיבות ה-catch-all קיימות, אף שלעתים עדיף שלא
הסיבה הבסיסית היא לעתים קרובות ניסיון להימנע מעלות רישוי לכל משתמש. אם דרושות הכתובות support@, billing@ ו-jobs@, אך אינכם רוצים לשלם $18 בחודש לכל משתמש ל-Google או Microsoft, catch-all נראה כמו מעקף חכם.
לרוב הוא אינו כזה. הוא עלול להפוך לחוב טכני עם מחיר למוניטין.
פתרון מתאים יותר עשוי להיות ספק שאינו גובה תשלום לכל משתמש. לפי ההצעה המתוארת, TrekMail משתמש באחסון משותף במקום בתמחור למשתמש:
- תוכנית Nano - $0, ללא צורך בכרטיס.
- Starter - $3.50 לחודש עם ניסיון של 14 יום.
- Pro - $10 לחודש עם ניסיון של 14 יום.
- Agency - $23.25 לחודש עם ניסיון של 14 יום.
אפשר ליצור את support@, billing@ ו-jobs@ כתיבות אמיתיות או ככינויים בדומיין המותאם שלכם, בכפוף למגבלות התוכנית העדכניות. מכיוון שהם קיימים בספרייה, השרת יכול לדחות נמענים לא תקפים בקצה בתשובת 550 תקינה. הדבר מסייע להגן על מוניטין הדומיין ועשוי לייתר Transport Rules, מסנני Sieve וניתוב regex.
אם אתם מנהלים כמה דומיינים כ-MSP או כעסק צומח, השוו מעקפי catch-all לחלופות מובנות. תכונת תיבת ה-catch-all של TrekMail נועדה לספק רשת ביטחון ולהפחית חלק מהסיכון המבני כאשר DNS, אימות וניתוב מוגדרים כראוי.
סיכום
תיבת catch-all אינה רעה מטבעה. תיבת catch-all לא מוגנת היא שעלולה לפגוע בדומיינים. בחרו תבנית בידוד שמתאימה למערך, כגון מאגר הסגר ל-Exchange, זרם מתויג ל-Postfix או תו כללי חלקי ל-Workspace, ואכפו את כלל הזהב: אל תערבבו תעבורת catch-all בדואר ייצור.
אפשר גם לוותר על המורכבות אם הדבר מתאים למצבכם. השתמשו בספק שמציע כתובות אמיתיות במחיר שמייתר מלכתחילה את ה-catch-all.