Email Spam Tester הרצת בדיקה · לסוכנים · API · בלוג

איך הבדיקה פועלת

שלחו הודעה אחת לכתובת חד-פעמית ו-42 בדיקות ירוצו עליה. הדף הזה כולל את כולן: מה כל אחת בודקת, כמה היא עולה בציון כשהיא נכשלת, ומאיזה סעיף בתקן היא מגיעה.

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

עודכן:

בדיקהקבוצההציון שלנוציון קלאסי
שרשרת ARCאימות−20
חתימת DKIMאימות−18−1
התאמת DKIMאימות−10−1
תוצאת DMARCאימות−140
Sender IDאימות−5−0.5
SPFאימות−18−1
התאמת SPFאימות−5−0.5
שם המארח השולח ניתן לפתרוןתשתית ומוניטין−5−3
רשימות חסימהתשתית ומוניטין−25−3
שם HELOתשתית ומוניטין−50
רשומת MXתשתית ומוניטין−5−3
DNS הפוךתשתית ומוניטין−12−1.5
הצפנת תעבורהתשתית ומוניטין−50
שופט AIמנועי ספאם
הכרעה משולבתמנועי ספאם−250
בדיקת הספאם של Postmarkמנועי ספאם
Rspamdמנועי ספאם
SpamAssassinמנועי ספאם0−3
טקסט חלופי לתמונהתוכן−4−0.5
זמינות קישוריםתוכן−5−1
סקריפט ו-iframeתוכן−10−1
איזון בין טקסט ל-HTMLתוכן−3−0.3
חלקי טקסט ו-HTMLתוכן−50
גודל HTMLתוכן−3−0.3
משקל תמונותתוכן−3−0.3
יעדי קישורים גלוייםתוכן−30
מוניטין קישוריםתוכן−400
סריקת קבצים מצורפיםתוכן−600
טקסט מקדיםתוכן−20
שורת נושאתוכן−30
קישורים מקוצריםתוכן−5−0.5
מדיניות DMARC פורסמהכללים לשולחים בתפוצה רחבה−60
List-Unsubscribeכללים לשולחים בתפוצה רחבה−10−1
ביטול רישום בלחיצה אחתכללים לשולחים בתפוצה רחבה−80
TLS לדואר בתפוצה רחבהכללים לשולחים בתפוצה רחבה−50
BIMIהמלצות00
גיל ואורך מפתח DKIMהמלצות00
מסירת דוחות DMARCהמלצות00
DNSSECהמלצות00
MTA-STSהמלצות00
אורך נתיב החזרההמלצות00
דיווח TLSהמלצות00

אימות

האם השרת המקבל יכול להוכיח שההודעה הגיעה מהמקום שממנו היא טוענת שהגיעה. זהו החצי של עבירות הדוא״ל המבוסס כולו על DNS, והחצי ש-Gmail ו-Yahoo הפכו לחובה עבור שולחים בתפוצה רחבה בשנת 2024.

שרשרת ARC auth.arc

ARC משמר את תוצאת האימות לאורך העברה. בלעדיו, רשימת תפוצה שמוסיפה כותרת תחתונה שוברת את חתימת DKIM שלך והעותק המועבר נכשל בבדיקת DMARC בצד המרוחק.

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

עולה עד 2 נקודות מתוך 100 בציון שלנו.

RFC 7960 §1 — Introduction

DMARC with restrictive policies causes problems for many Mailing Lists.

RFC 8617 §2.1 — Evidence

In ARC's situation, the "evidence" is a message's authentication assessment at any point along the delivery path between origination and final delivery.

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

חתימת DKIM auth.dkim

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

אם היא נכשלת: הפעילו DKIM בפלטפורמת השליחה שלכם ופרסמו את המפתח שהיא מספקת לכם. השתמשו ב-2048 ביטים: 1024 עדיין עובר אימות, אבל מפתח קצר כזה ניתן לפיצוח והוא כבר אינו בטוח.

עולה עד 18 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.

RFC 6376 §3.5 — The DKIM-Signature Header Field

The signature of the email is stored in the DKIM-Signature header field.

RFC 6376 §6.1 — Extract Signatures from the Message

Verifiers MUST NOT attribute ultimate meaning to the order of multiple DKIM-Signature header fields.

RFC 8301 §3.1 — Signing and Verification Algorithms

rsa-sha1 MUST NOT be used for signing or verifying.

RFC 8463 §6 — Transition Considerations

For backward compatibility, signers can add multiple signatures that use old and new signing algorithms.

Google — Set up DKIM

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

התאמת DKIM auth.dkim_alignment

חתימה תקפה אינה מספיקה עבור DMARC. הדומיין החותם חייב להתאים לדומיין שבכותרת From, בדיוק או לפי הדומיין הארגוני, בהתאם למדיניות שפרסמתם.

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

עולה עד 10 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.

RFC 9989 §4.4.1 — DKIM-Authenticated Identifiers

A single email can contain multiple DKIM signatures, and it is considered to produce a DMARC "pass" result if any DKIM-Authenticated Identifier aligns with the Author Domain.

Google — Set up DMARC

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

תוצאת DMARC auth.dmarc

DMARC קושר את SPF ואת DKIM לדומיין שהקורא שלכם רואה ומורה לנמענים מה לעשות כאשר אף אחד מהם אינו תואם. אנו מדווחים על המדיניות שפורסמה ועל השאלה אם הודעה זו עמדה בה.

אם היא נכשלת: פרסמו רשומת DMARC. התחילו עם p=none, קראו את הדוחות במשך כמה שבועות, ולאחר מכן עברו להסגר לאחר שתדעו מה עוד שולח בשמכם.

עולה עד 14 נקודות מתוך 100 בציון שלנו.

RFC 9989 §5.3.5 — Determine DMARC "Pass" or "Fail"

If no Authenticated Identifiers exist for the domain, or none of the Authenticated Identifiers align with the Author Domain, the message is considered to fail the DMARC mechanism check.

RFC 9989 §4.7 — DMARC Policy Record Format

DMARC Policy Records follow the extensible "tag-value" syntax for DNS-based key records defined in DKIM [RFC6376].

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

Sender ID auth.sender_id

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

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

עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 0.5 מתוך 10 בציון הקלאסי.

RFC 4406 §4 — Record Selection

After the above steps, there should be one record remaining and evaluation can proceed.

SPF auth.spf

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

אם היא נכשלת: פרסמו רשומה שמציינת את פלטפורמת השליחה שלכם ולא שום דבר נוסף. אם הרשומה שלכם קרובה למגבלה של עשרה חיפושים, שטחו את הוראות ה-include שאינכם משתמשים בהן (רשומה שעוברת היום תתחיל להיכשל ביום שבו ספק יוסיף הוראת include משלו).

עולה עד 18 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.

RFC 7208 §4.6.4 — DNS Lookup Limits

SPF implementations MUST limit the total number of those terms to 10 during SPF evaluation, to avoid unreasonable load on the DNS. If this limit is exceeded, the implementation MUST return "permerror".

RFC 7208 §2.6 — Results of Evaluation

Section 4 defines check_host(), a model function definition that uses the inputs defined above and the sender's policy published in the DNS to reach a conclusion about client authorization.

Google — Set up SPF

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

התאמת SPF auth.spf_alignment

האם כתובת ההחזר תואמת לכתובת From שהקורא רואה. SPF מאשר את המעטפה, ו-DMARC מתחשב באישור הזה רק כאשר השתיים תואמות.

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

עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 0.5 מתוך 10 בציון הקלאסי.

RFC 9989 §4.4.2 — SPF-Authenticated Identifiers

Only an SPF-Authenticated Identifier that has Identifier Alignment with the Author Domain is enough to validate the authorized use of the Author Domain.

RFC 9989 §5.3.5 — Determine DMARC "Pass" or "Fail"

If one or more of the Authenticated Identifiers align with the Author Domain, the message is considered to pass the DMARC mechanism check.

Google — Set up DMARC

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

תשתית ומוניטין

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

שם המארח השולח ניתן לפתרון infra.a_record

האם לשם המארח שמוכרז ב-HELO יש בכלל רשומת כתובת.

אם היא נכשלת: פרסם רשומת A עבור השם שהשרת שלך מכריז עליו.

עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 3 מתוך 10 בציון הקלאסי.

RFC 5321 §5.1 — Locating the Target Host

If an empty list of MXs is returned, the address is treated as if it was associated with an implicit MX RR, with a preference of 0, pointing to that host.

Google — Set up MX records

רשימות חסימה infra.dnsbl

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

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

עולה עד 25 נקודות מתוך 100 בציון שלנו ו עד 3 מתוך 10 בציון הקלאסי.

RFC 5782 §2.1 — IP Address DNSxL

Each IPv4 address listed in the DNSxL has a corresponding DNS entry.

RFC 5782 §5 — Test and Contact Addresses

IPv4-based DNSxLs MUST contain an entry for 127.0.0.2 for testing purposes.

Google — Postmaster Tools: reputation and delivery errors

Google — Email sender guidelines

שם HELO infra.helo

השם שבו השרת השולח מציג את עצמו בתחילת שיחת ה-SMTP. עליו להיות דומיין מלא שניתן לפתרון.

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

עולה עד 5 נקודות מתוך 100 בציון שלנו.

RFC 5321 §4.1.1.1 — Extended HELLO (EHLO) or HELLO (HELO)

The argument clause contains the fully-qualified domain name of the SMTP client, if one is available.

Google — Email sender guidelines

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

רשומת MX infra.mx

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

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

עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 3 מתוך 10 בציון הקלאסי.

RFC 5321 §5.1 — Locating the Target Host

The lookup first attempts to locate an MX record associated with the name.

Google — Set up MX records

DNS הפוך infra.rdns

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

אם היא נכשלת: בקש ממי שבבעלותו ה-IP להגדיר את רשומת ה-PTR לשם שבשליטתך, וודא שלשם הזה יש רשומת A שמצביעה בחזרה.

עולה עד 12 נקודות מתוך 100 בציון שלנו ו עד 1.5 מתוך 10 בציון הקלאסי.

RFC 1912 §2.1 — Inconsistent, Missing, or Bad Data

Make sure your PTR and A records match. For every IP address, there should be a matching PTR record in the in-addr.arpa domain.

Google — Email sender guidelines

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

הצפנת תעבורה infra.tls

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

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

עולה עד 5 נקודות מתוך 100 בציון שלנו.

RFC 3207 §2 — STARTTLS Extension

The STARTTLS extension to SMTP is laid out as follows:

Google — Send email over a secure TLS connection

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

מנועי ספאם

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

שופט AI spam.ai_judge

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

אם היא נכשלת: מידע בלבד בפני עצמו. ההערכה שלו מזינה את ההכרעה המשולבת שבהמשך.

מוצג לצורך פירוט. לעולם אינו משפיע על הציון.

הכרעה משולבת spam.panel

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

אם היא נכשלת: עברו על הממצאים הנפרדים. שורה זו משתנה כשהם משתנים.

עולה עד 25 נקודות מתוך 100 בציון שלנו.

Google — Why Gmail marks messages as spam

How this score is calculated

בדיקת הספאם של Postmark spam.postmark

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

אם היא נכשלת: אין מה לעשות. כשהיא מושבתת, הבדיקה מדווחת שהיא מושבתת, וזה אינו זהה למעבר מוצלח.

מוצג לצורך פירוט. לעולם אינו משפיע על הציון.

Rspamd spam.rspamd

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

אם היא נכשלת: מידע בלבד. דעתו של מנוע זה משוקללת בהכרעה המשולבת במקום לקבל ציון בפני עצמה.

מוצג לצורך פירוט. לעולם אינו משפיע על הציון.

SpamAssassin spam.spamassassin

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

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

עולה עד 3 מתוך 10 בציון הקלאסי.

Google — Why Gmail marks messages as spam

Apache SpamAssassin — rule documentation

תוכן

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

טקסט חלופי לתמונה content.alt_attributes

האם לתמונות יש מאפייני alt. לקוחות דוא״ל חוסמים תמונות מרוחקות כברירת מחדל, ולכן בשניות הראשונות הטקסט החלופי הוא ההודעה שלכם.

אם היא נכשלת: כתבו טקסט חלופי שמעביר את המשמעות, ולעולם אל תשאירו את התמונה הראשית בלעדיו.

עולה עד 4 נקודות מתוך 100 בציון שלנו ו עד 0.5 מתוך 10 בציון הקלאסי.

Google — Email sender guidelines

סקריפט ו-iframe content.forbidden_tags

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

אם היא נכשלת: הסירו script, iframe, object ו-embed. כל רכיב אינטראקטיבי צריך להיות מאחורי קישור.

עולה עד 10 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.

Google — Email sender guidelines

איזון בין טקסט ל-HTML content.html_text_ratio

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

אם היא נכשלת: כתבו חלק טקסט שאומר את מה שה-HTML אומר, במקום מציין מקום.

עולה עד 3 נקודות מתוך 100 בציון שלנו ו עד 0.3 מתוך 10 בציון הקלאסי.

RFC 2046 §5.1.4 — Alternative Subtype

Systems should recognize that the content of the various parts are interchangeable.

Google — Why Gmail marks messages as spam

חלקי טקסט ו-HTML content.html_version

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

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

עולה עד 5 נקודות מתוך 100 בציון שלנו.

RFC 2046 §5.1.4 — Alternative Subtype

The "multipart/alternative" type is syntactically identical to "multipart/mixed", but the semantics are different. In particular, each of the body parts is an "alternative" version of the same information.

Google — Email sender guidelines

גודל HTML content.html_weight

מה גודלו של חלק ה-HTML. Gmail קוטע הודעה מעבר לכ-102 KB ומסתיר את השאר מאחורי קישור, שלוקח איתו את כותרת התחתית להסרה מרשימת התפוצה.

אם היא נכשלת: צמצמו CSS מוטבע ובלוקי סגנון חוזרים (רוב התבניות נכנסות בשליש מהמגבלה לאחר הסרת הכללים שאינם בשימוש).

עולה עד 3 נקודות מתוך 100 בציון שלנו ו עד 0.3 מתוך 10 בציון הקלאסי.

Google — Email sender guidelines

משקל תמונות content.images_weight

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

אם היא נכשלת: דחסו אותן וודאו שההודעה עדיין קריאה כשהתמונות כבויות.

עולה עד 3 נקודות מתוך 100 בציון שלנו ו עד 0.3 מתוך 10 בציון הקלאסי.

Google — Email sender guidelines

סריקת קבצים מצורפים content.malware

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

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

עולה עד 60 נקודות מתוך 100 בציון שלנו.

Google — Why Gmail marks messages as spam

ClamAV — how detection works

טקסט מקדים content.preheader

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

אם היא נכשלת: הוסיפו בלוק טקסט מקדים מוסתר כרכיב הראשון בגוף ההודעה.

עולה עד 2 נקודות מתוך 100 בציון שלנו.

Google — Email sender guidelines

שורת נושא content.subject

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

אם היא נכשלת: שמרו על פחות מכ-60 תווים, והסירו את הצעקנות ואת סימני הקריאה.

עולה עד 3 נקודות מתוך 100 בציון שלנו.

RFC 5322 §2.2 — Header Fields

Header fields are lines beginning with a field name, followed by a colon (":"), followed by a field body, and terminated by CRLF.

RFC 2047 §2 — Syntax of encoded-words

An 'encoded-word' is defined by the following ABNF grammar.

Google — Why Gmail marks messages as spam

קישורים מקוצרים content.url_shortener

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

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

עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 0.5 מתוך 10 בציון הקלאסי.

Google — Why Gmail marks messages as spam

כללים לשולחים בתפוצה רחבה

הדרישות ש-Gmail ו-Yahoo מפרסמות לכל מי ששולח בהיקף גדול. הן חלות על דיוורים והבדיקה עליהן מדולגת בהודעות שאינן נראות כמו דיוור.

מדיניות DMARC פורסמה compliance.dmarc_present

האם דומיין From מפרסם בכלל רשומת DMARC, בנפרד מהשאלה אם ההודעה הזו עברה אותה. Gmail ו-Yahoo דורשות זאת משולחי דואר בתפוצה רחבה.

אם היא נכשלת: פרסמו רשומה. p=none מספיק כדי לעמוד בדרישה ומספק לכם דוחות שאפשר לעבוד איתם.

עולה עד 6 נקודות מתוך 100 בציון שלנו.

RFC 9989 §4.7 — DMARC Policy Record Format

If this tag is not present in an otherwise syntactically valid DMARC Policy Record, then the record is treated as if it included "p=none".

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

List-Unsubscribe compliance.list_unsubscribe

האם ההודעה כוללת כותרת לביטול רישום שלקוח דואר יכול לפעול לפיה. Gmail ו-Yahoo דורשות זאת משולחי דואר בתפוצה רחבה, והיעדרה מוביל לסינון בלי קשר לכל השאר. הכלל חל על דיוור. מכתב שמבקש מהנמען לאשר הרשמה, או מודיע לו שהיא הושלמה, נשלח לאדם אחד בנוגע לפעולה שזה עתה ביצע; CAN-SPAM מגדיר זאת כהודעת עסקה או קשר, ולא Gmail ולא Yahoo דורשות בה כותרת לביטול רישום. לכן הבדיקה קוראת תחילה את המכתב. אישור הרשמה, מכתב ברוכים הבאים, מכתב עסקה או התראה ללא כותרות רשימה אינם נחשבים להפרה, והדוח מציין כיצד סווג המכתב. מכתב ברוכים הבאים שמרופד בהצעות הוא למעשה הגיליון הראשון של הדיוור; ללא כותרות רשימה הבדיקה אינה יכולה להבחין בין השניים, והיא אינה קובעת הפרה על סמך ניחוש. אם המכתב כולל List-Unsubscribe או List-Id, הצהרתם בעצמכם שזהו דואר רשימה, והבדיקה פועלת כפי שפעלה תמיד.

אם היא נכשלת: הוסיפו כותרת List-Unsubscribe עם URI מסוג HTTPS. כל פלטפורמת שליחה יכולה לעשות זאת.

עולה עד 10 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.

RFC 2369 §3.2 — List-Unsubscribe

The List-Unsubscribe field describes the command (preferably using mail) to directly unsubscribe the user (removing them from the list).

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

ביטול רישום בלחיצה אחת compliance.one_click_unsubscribe

הצורה המחמירה יותר: URI מסוג HTTPS, כותרת "List-Unsubscribe-Post" וחתימת DKIM תקפה אחת המכסה את שתי הכותרות. נדרשים כל השלושה, אחרת המקבל אינו מציג את הכפתור. כמו בדיקת List-Unsubscribe, היא חלה על דיוור, לא על אישור או על מכתב ברוכים הבאים.

אם היא נכשלת: ההחמצה הנפוצה היא החתימה: פלטפורמות חותמות על "List-Unsubscribe" ושוכחות את "List-Unsubscribe-Post". שני שמות הכותרות חייבים להופיע בתג h= של אותה חתימה.

עולה עד 8 נקודות מתוך 100 בציון שלנו.

RFC 8058 §4 — Additional Requirements

The List-Unsubscribe and List-Unsubscribe-Post headers MUST be covered by the signature and included in the "h=" tag of a valid DKIM-Signature header field.

RFC 8058 §3.1 — Mail Senders

The List-Unsubscribe header field MUST contain one HTTPS URI.

Google — Sender guidelines FAQ: rules for 5,000+ messages a day

Yahoo — Sender requirements and recommendations

המלצות

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

BIMI advisory.bimi

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

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

המלצה. לא עולה דבר.

BIMI — draft specification, not yet an RFC

גיל ואורך מפתח DKIM advisory.dkim_key_rotation

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

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

המלצה. לא עולה דבר.

RFC 8301 §3.2 — Key Sizes

Since short RSA keys more easily succumb to off-line attacks, Signers MUST use RSA keys of at least 1024 bits for all keys. Signers SHOULD use RSA keys of at least 2048 bits.

Google — Set up DKIM

מסירת דוחות DMARC advisory.dmarc_reporting

האם הכתובות ברשומת ה-DMARC שלכם אכן יקבלו משהו. אם כתובת דוח נמצאת מחוץ לדומיין שלכם, RFC 9990 מחייב את הדומיין הזה לפרסם תחילה הרשאה משלו, כרשומת TXT ב-your-domain._report._dmarc.their-domain. בלעדיה, שרת מקבל משמיט את הכתובת: אין הודעת החזרה, אין שגיאה, אין דוח. זוהי תצורה רגילה ולא חריגה, מכיוון שהכתובת נמצאת בדרך כלל אצל ספק ניטור, או בדומיין הראשי שלכם בזמן שהמדיניות נמצאת בתת-דומיין שולח. אותו כלל חל על דוחות כשל, כאשר RFC 9991 מפנה לאותו נוהל עבור התג ruf. אנחנו מחפשים את אותן רשומות ששרת מקבל היה מחפש ומציגים לכם את השמות שביקשנו.

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

המלצה. לא עולה דבר.

RFC 9990 §4 — Verifying External Destinations

When a Mail Receiver discovers a DMARC Policy Record in the DNS, and the Organizational Domain at which that record was discovered is not identical to the Organizational Domain of the host part of the authority component of a [RFC3986] specified in the "rua" tag, the following verification steps MUST be taken:

RFC 9990 §4 — Verifying External Destinations

Where the above algorithm fails to confirm that the external reporting was authorized by the Report Consumer, the URI MUST be ignored by the Mail Receiver generating the report.

RFC 9991 §5 — Verifying External Destinations

In case of external destinations, a Mail Receiver who generates failure reports MUST use the Verifying External Destinations procedure described in Section 4 of [RFC9990], substituting the "ruf" tag where the "rua" tag appears in that procedure.

Google — Set up DMARC

DNSSEC advisory.dnssec

האם הדומיין חתום. SPF, DKIM ו-DMARC נמצאים כולם ב-DNS, ולכן תוקף שיכול לזייף תשובות DNS יכול לזייף את שלושתם.

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

המלצה. לא עולה דבר.

RFC 4033 §2 — Definitions of Important DNSSEC Terms

Authentication Chain: An alternating sequence of DNS public key (DNSKEY) RRsets and Delegation Signer (DS) RRsets

MTA-STS advisory.mta_sts

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

אם היא נכשלת: פרסמו את רשומת ה-TXT ואת קובץ המדיניות דרך HTTPS (אחר צהריים של עבודה, וזה סוגר מתקפת שדרוג לאחור).

המלצה. לא עולה דבר.

RFC 8461 §3 — Policy Discovery

To discover if a recipient domain implements MTA-STS, a sender need only resolve a single TXT record.

אורך נתיב החזרה advisory.return_path_length

מהו אורכה של כתובת ההחזרה. RFC 5321 מחייב שרת מקבל לקבל 64 אוקטטים לפני ה-@, ובאותו סעיף מציין שאף מימוש אינו אמור להטיל מגבלה שביכולתו להימנע ממנה. למרות זאת, רבים מטילים מגבלה כזו, והודעה שחורגת ממנה נדחית בשלב MAIL FROM, עוד לפני שגוף ההודעה נשלח. פלטפורמות שליחה נתקלות בכך כשהן מקודדות את הנמען בנתיב החזרה כדי שאפשר יהיה לשייך בחזרה הודעות החזרה, ולכן האורך תלוי בנמען שאליו כותבים ולא בכם.

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

המלצה. לא עולה דבר.

RFC 5321 §4.5.3.1.1 — Local-part

The maximum total length of a user name or other local-part is 64 octets.

RFC 5321 §4.5.3.1 — Size Limits and Minimums

Every implementation MUST be able to receive objects of at least these sizes.

Haraka — the address parser that enforces the 64-octet local-part, and the flag that relaxes it

דיווח TLS advisory.tls_rpt

האם הדומיין מבקש דוחות כאשר מישהו נכשל במסירה אליו באמצעות TLS. משלים את MTA-STS: המדיניות ללא הדיווח אינה מאפשרת לדעת אם היא פועלת.

אם היא נכשלת: הוסיפו את רשומת ה-TXT עם כתובת שמקבלת את הדוחות היומיים.

המלצה. לא עולה דבר.

RFC 8460 §3 — Reporting Policy

A domain publishes a record to its DNS indicating that it wishes to receive reports.