שלחו הודעה אחת לכתובת חד-פעמית ו-42 בדיקות ירוצו עליה. הדף הזה כולל את כולן: מה כל אחת בודקת, כמה היא עולה בציון כשהיא נכשלת, ומאיזה סעיף בתקן היא מגיעה.
שום דבר כאן אינו דעה שלנו שמוצגת ככלל. כאשר בדיקה אוכפת דבר שנאמר בתקן, המשפט מאותו תקן מצוטט מתחתיה. כאשר היא אוכפת במקום זאת דרישה של Google או Yahoo, מצורף קישור לדף שלהם. כאשר מדובר בשיקול דעת שלנו, הדבר מצוין.
אימות
האם השרת המקבל יכול להוכיח שההודעה הגיעה מהמקום שממנו היא טוענת שהגיעה. זהו החצי של עבירות הדוא״ל המבוסס כולו על 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
זמינות קישורים content.broken_links
האם הקישורים בהודעה נפתחים. קישור מת בניוזלטר פוגע מיד באמון, וגם המסננים מבחינים בכך.
אם היא נכשלת: תקנו או הסירו אותם. בדקו גם את דומיין המעקב: אם תוקפו פג, כל הקישורים נשברים בבת אחת.
עולה עד 5 נקודות מתוך 100 בציון שלנו ו עד 1 מתוך 10 בציון הקלאסי.
Google — Why Gmail marks messages as spam
סקריפט ו-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.link_mismatch
משווה את הדומיין בטקסט הקישור ליעד אחרי הפניות HTTP. דומיין מעקב ביניים לבדו אינו הוכחה להטעיה.
אם היא נכשלת: השתמשו בדומיין היעד או בטקסט תיאורי. יעדים שאינם נגישים נשארים לא מאומתים.
עולה עד 3 נקודות מתוך 100 בציון שלנו.
Google — Email sender guidelines
מוניטין קישורים content.malicious_links
בודק כתובות מול רשימות איומים. התאמה אינה אומרת שכל נמען יחסום את ההודעה.
אם היא נכשלת: בדקו את היעדים שסומנו והחליפו או הסירו קישורים לא בטוחים. רישום היסטורי לבדו אינו מוכיח זיהום נוכחי.
עולה עד 40 נקודות מתוך 100 בציון שלנו.
Google — Why Gmail marks messages as spam
סריקת קבצים מצורפים content.malware
האם קבצים מצורפים מכילים נוזקה מוכרת. בהתקנות שבהן הסורק כבוי, מצוין שהסריקה לא בוצעה במקום לדווח שהקבצים נקיים.
אם היא נכשלת: אם הבדיקה הזו מופעלת, הפסיקו לשלוח ובררו מה נמצא במחשב שיצר את ההודעה.
עולה עד 60 נקודות מתוך 100 בציון שלנו.
Google — Why Gmail marks messages as spam
ClamAV — how detection works
שורת נושא 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
TLS לדואר בתפוצה רחבה compliance.tls_required
האם ההודעה הגיעה מוצפנת. מכוסה על ידי בדיקת התשתית כאשר זו כבר הורצה.
אם היא נכשלת: ראו את בדיקת הצפנת התעבורה לעיל.
עולה עד 5 נקודות מתוך 100 בציון שלנו.
Google — Send email over a secure TLS connection
Google — Sender guidelines FAQ: rules for 5,000+ messages a day
המלצות
כדאי לבצע ולעולם אינו משפיע על הציון. שום דבר בסעיף הזה אינו יכול לעלות בנקודות, וזוהי החלטת מוצר שהבדיקות אוכפות.
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.