כיצד להגדיר SPF, DKIM ו-DMARC

מדריך מעשי לאימות הדומיין שלכם: פרסמו SPF, DKIM ו-DMARC בסדר הנכון, שמרו על כתובות ה-IP השולחות שלכם מחוץ לרשימות החסימה, וודאו שכל שכבה באמת עוברת.

זהו מדריך הגדרה מעשי: כיצד לפרסם SPF, DKIM ו-DMARC עבור דומיין שאתם שולחים ממנו דואר, לשמור על כתובות ה-IP השולחות שלכם מחוץ לרשימות החסימה של RBL, ולוודא שהכול באמת עובד. אם תחילה תרצו את התיאוריה בשפה פשוטה של מה כל מנגנון הוא, קראו כל מדריך בסיסי בנושא “כיצד פועל אימות אימייל” — כאן אנו מתמקדים ברשומות שאתם יוצרים, בסדר שבו אתם פורסים אותן, ובטעויות ששוברות דואר אמיתי.

לפני שתתחילו, אספו שני דברים:
  • גישה לאזור ה-DNS של הדומיין שלכם (היכן שאתם מוסיפים רשומות TXT) — בדרך כלל אצל רשם הדומיין או מארח ה-DNS שלכם.
  • רשימה כתובה של כל שירות ששולח דואר בשם הדומיין שלכם: ספק תיבות הדואר שלכם (Google Workspace, Microsoft 365…), שרת הדואר שלכם עצמו, וכל צד שלישי — כלי ניוזלטר, CRM, חיוב/חשבוניות, מערכת תמיכה. אם תפספסו אחד, הדואר שלו ייכשל באימות.

שלב 1 — פרסמו רשומת SPF אחת

SPF היא רשומת TXT יחידה על שורש הדומיין שלכם, המפרטת את השרתים הרשאים לשלוח עבורו. הכלל שמכשיל את כולם: לדומיין יכולה להיות רק רשומת SPF אחת. אם אתם משתמשים במספר שולחים, אתם ממזגים אותם לשורה אחת עם מספר מנגנוני include: — אינכם מפרסמים שתי רשומות SPF.

רשומה טיפוסית עבור דומיין ששולח דרך Google Workspace בתוספת כלי שיווק אחד:

example.com. IN TXT "v=spf1 include:_spf.google.com include:sendgrid.net -all"
רכיבמשמעות
include:_spf.google.comמאשר את כל טווח השליחה של ספק באמצעות הפניה. קבלו את הערך המדויק מהתיעוד של כל שולח.
ip4: / ip6:מאשר את שרת הדואר שלכם עצמו לפי כתובת ה-IP הציבורית שלו, למשל ip4:203.0.113.10.
~all לעומת -all~all = softfail (התחילו כאן בזמן הבדיקות); -all = hardfail (עברו אליו ברגע שהרשימה מלאה).

מגבלת 10 החיפושים. SPF מתירה לכל היותר 10 חיפושי DNS בזמן שהיא מוערכת; כל מנגנון include: ו-a/mx יכול לעלות אחד או יותר. חרגתם ממנה, ו-SPF מחזירה permerror — שנחשב לכישלון. אם אתם ערמים ספקים רבים, הסירו include-ים שאינם בשימוש או השתמשו בשירות SPF-flattening במקום לערום עוד.

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

שלב 2 — הפעילו DKIM אצל כל שולח

DKIM מוסיפה חתימה קריפטוגרפית לכל הודעה. לעתים רחוקות תבנו את המפתח ידנית — כל פלטפורמת שליחה מייצרת אותו ונותנת לכם רשומת TXT (או CNAME) לפרסום תחת selector. עשו זאת עבור כל שולח: Google, Microsoft, ה-ESP שלכם ושרתכם שלכם מקבלים כל אחד selector ומפתח משלו.

  1. בלוח הבקרה של השולח, הפעילו DKIM / “אימות אימייל”. הוא מציג לכם selector (למשל google, s1) ומפתח ציבורי.
  2. פרסמו אותו ב-DNS בכתובת <selector>._domainkey.example.com. ספקים המשתמשים ב-CNAME מאפשרים להם לסובב את המפתח עבורכם — העדיפו זאת כשמוצע.
  3. חזרה בלוח הבקרה, לחצו על Start authenticating כדי שהשולח יתחיל להוסיף את כותרת DKIM-Signature:. העדיפו מפתח 2048-bit היכן שאתם יכולים לבחור.

מכיוון שהחתימה נעה בתוך ההודעה, DKIM שורדת העברה (בניגוד ל-SPF) — וזו בדיוק הסיבה שהשלב הבא נשען עליה.

שלב 3 — פרסו DMARC בהדרגה

DMARC קושרת את SPF ואת DKIM לכתובת ה-From: הגלויה ואומרת לנמענים מה לעשות בכישלון. לעולם אל תתחילו ב-p=reject — תגרמו להקפצת הדואר הלגיטימי שלכם משולח ששכחתם. פרסו אותה בשלושה שלבים, תוך מעקב אחר הדוחות בין כל אחד.

שלברשומה בכתובת _dmarc.example.comמטרה
1. ניטורv=DMARC1; p=none; rua=mailto:dmarc@example.comאינה משנה דבר עבור הנמענים; רק אוספת דוחות מצטברים על מי שולח בשמכם.
2. הסגר (Quarantine)v=DMARC1; p=quarantine; pct=25; rua=…שולחת חלק מהדואר הנכשל לספאם. העלו את pct ככל שתגברו בביטחון.
3. אכיפהv=DMARC1; p=reject; rua=…; sp=rejectדוחה דואר מזויף לחלוטין. sp= מגדיר את המדיניות עבור תת-דומיינים.

הכתובת ב-rua= מקבלת מדי יום דוחות מצטברים ב-XML מהנמענים. קראו אותם (מציג דוחות DMARC חינמי מספיק בהתחלה): כל אחד מפרט את כתובות ה-IP השולחות המשתמשות בדומיין שלכם והאם עברו SPF ו-DKIM עם יישור (alignment). היישור הוא המלכוד — הודעה לא רק צריכה לעבור SPF או DKIM, הדומיין העובר חייב להתאים לדומיין ה-From:. אם שירות לגיטימי עובר DKIM עבור הדומיין שלו אך לא שלכם, תקנו זאת בפרסום ה-DKIM של אותו שירות תחת הדומיין שלכם (שלב 2) לפני שאתם עוברים לאכיפה.

שלב 4 — שמרו על כתובות ה-IP השולחות מחוץ ל-RBL

SPF/DKIM/DMARC מוכיחות זהות; רשימות החסימה של RBL (DNSBL) שופטות מוניטין של ה-IP השולח. הודעה מאומתת באופן מושלם עדיין נוחתת בספאם אם ה-IP שלה רשום. אינכם מפרסמים דבר עבור RBL — אתם נשארים נקיים מהן:

  • שלחו רק דואר רצוי. תלונות ספאם ופגיעה במלכודות ספאם הן הדרך המהירה ביותר להיכנס לרשימה.
  • חממו כתובות IP חדשות בהדרגה במקום להמטיר נפח ביום הראשון.
  • אבטחו כל חשבון וסקריפט שיכולים לשלוח — טופס או סיסמה בודדים שנפרצו גורמים לרישום כל ה-IP.
  • הגדירו DNS הפוך (PTR) תקין עבור ה-IP השולח שלכם שתואם לשם ה-HELO שלו.

אם בכל זאת נרשמתם, רוב הרשימות המכובדות (Spamhaus ואחרות) מראות מדוע ומציעות הסרה עצמית לאחר תיקון הסיבה. תקנו תחילה, ואז בקשו הסרה — הסרה בעוד הבעיה נמשכת רק גורמת לרישום מחדש.

שלב 5 — ודאו שזה באמת עובד

פרסום רשומות אינו הוכחה. אשרו כל שכבה:

  • בדקו שהרשומות קיימות. תשאלו את ה-DNS ישירות: dig TXT example.com, dig TXT google._domainkey.example.com, dig TXT _dmarc.example.com (או nslookup -type=TXT ב-Windows).
  • אשרו את שרתי הדואר שאישרתם. השתמשו בחיפוש MX שלנו כדי לראות את מארחי ה-MX שדומיין באמת מפרסם — שימושי לזיהוי מארח דואר ישן או שגוי.
  • קראו את התוצאות על הודעה אמיתית. שלחו לעצמכם הודעת בדיקה, פתחו את המקור הגולמי שלה, והדביקו אותו במפענח ה-MIME. הביטו בכותרת Authentication-Results: — היא מציינת spf=pass, dkim=pass ו-dmarc=pass (או את הכישלון המדויק) כפי שהנמען ראה אותה. זו האמת בשטח.
  • עקבו אחר דוחות ה-DMARC לכמה שבועות לפני המעבר מ-p=none לאכיפה.

טעויות הגדרה נפוצות

סימפטוםסיבה רגילה ותיקון
SPF permerrorשתי רשומות SPF, או יותר מ-10 חיפושי DNS. מזגו לרשומה אחת; קצצו include: שאינם בשימוש.
דואר לגיטימי נכשל ב-SPFשולח ששכחתם לאשר, או שהדואר הועבר. הוסיפו את השולח; הסתמכו על יישור DKIM+DMARC עבור העברה.
DKIM fail (body hash)משהו שכתב מחדש את ההודעה במעבר (כותרת תחתונה של רשימת תפוצה, התקן ביניים). חתמו עם relaxed canonicalization; החריגו כותרות משתנות.
DMARC נכשלת למרות מעבר SPF/DKIMאין יישור — הדומיין העובר אינו דומיין ה-From: שלכם. פרסמו את ה-DKIM של אותו שולח תחת הדומיין שלכם עצמו.
תת-דומיינים מזויפיםאין מדיניות תת-דומיין. הוסיפו sp=reject לרשומת ה-DMARC.

ברגע ששלוש הרשומות פעילות, מיושרות ומאומתות — וכתובות ה-IP שלכם נשארות מחוץ לרשימות החסימה — סגרתם את הדלת בפני זיוף הדומיין שלכם ונתתם לדואר האמיתי שלכם את הסיכוי הטוב ביותר להגיע לתיבת הדואר הנכנס. כדי לבדוק כתובות בודדות בכל דומיין, בודק האימייל בעמוד הבית מריץ עבורכם את בדיקות תיבת הדואר החיות.