איך למזג רשומות SPF מרובות?

SPF הוא קיצור של Sender Policy Framework. מדובר בשיטת אימות דוא"ל, והיא מסייעת לשרתים לאמת הודעות שנראות שמגיעות מדומיין ספציפי, בעצם נשלחות משרתים המורשים על ידי בעל הדומיין. אימות הדוא"ל מיושם באמצעות רשומות מסוג TXT הידועות בשם רשומות SPF. הוא עוזר להגן על הדומיין מפני התחזות וזיופים, והוא גם מבטיח שההודעות מועברות בצורה נכונה. בפוסט זה נסביר כיצד להימנע מאחת מבעיות ה-SPF הנפוצות בעת הגדרת רשומות SPF מרובות עבור דומיין יחיד.

הימנעות מרשומות SPF מרובות

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

אז איך ממזגים רשומות SPF מרובות?

כדי למזג מספר רשומות SPF לרשומה אחת, אתם צריכים לשלב את כל המנגנונים או הערכים באותה רשומה.
נניח שיש לכם את רשומת ה-SPF הבאה עבור Elastic Email:
v=spf1 a mx include:_spf.elasticemail.com ~all
כעת אתם רוצים להוסיף את רשומת ה-SPF השנייה לתיבת הדואר Rackspace:
v=spf1 include:emailsrvr.com ~all

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

מנגנוני הקלטת SPF השונים

אם נחזור לדוגמא שלנו, יש לנו את שני הרשומות הבאות:

v=spf1 a mx include:_spf.elasticemail.com ~all
v=spf1 include:emailsrvr.com ~all

למיזוג ערכי SPF, כלול את כל החלקים לרשומה אחת אחת מבלי לחזור על מנגנונים כלשהם.

אם לאחת הרשומות או לשתיהן יש מנגנון "a", יש לכלול אותו רק פעם אחת בהתחלה.

אם אחת הרשומות (או שתיהן) מורכבת ממנגנון "mx", יש לכלול אותו גם פעם אחת.

מנגנון ה"include" מתווסף לציון שרתי הדואר משתי רשומות SPF.

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

רשומת ה-SPF הממוזגת תיראה כך:

v=spf1 a mx include:_spf.elasticemail.com include:emailsrvr.com -all

הגבלת חיפוש DNS

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

אז איך לתקן בעיה זו?

לרשומת SPF בודדת יש מגבלה של עשרה חיפושי "include". המשמעות היא שהרשומה שלכם לא יכולה ליצור יותר מעשר הפניות לדומיינים אחרים. זה נעשה כדי להפחית את העומס בצד מקבלי הדוא"ל. המנגנונים הבאים נחשבים כחיפושים:

  • include

  • a

  • mx

  • ptr

  • exists

  • redirect

להלן רשומה לדוגמה החורגת ממגבלת הרשומות SPF:

				
					v=spf1 a mx include:example1.com include:example2.com include:example3.com include:example4.com include:example5.com include:example6.com include:example7.com include:example8.com include:example9.com include:example10.com -all

				
			

הנה דוגמה שכן עומדת במגבלת הרשומות SPF:

				
					v=spf1 a mx include:example1.com include:example2.com include:example3.com include:example4.com include:example5.com include:example6.com -all

				
			

כדי להימנע מבעיות כאלה, תוכלו להסיר "includes" והפניות לכל אותם דומיינים שכבר אינם בשימוש. פתרון נוסף יהיה שימוש בתת -דומיינים מכיוון שהוא יאפשר רשומת SPF נוספת. לאחר שהוספת או עדכנתם את רשומות ה- DNS, ייתכן שיחלפו עד 24 שעות עד שהשינויים שלכם יהיו יעילים ברחבי האינטרנט.