<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.inboxsys.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sebastian</id>
	<title>InboxSys document library - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.inboxsys.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Sebastian"/>
	<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php/Special:Contributions/Sebastian"/>
	<updated>2026-04-23T12:31:02Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=382</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=382"/>
		<updated>2025-11-11T20:26:31Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
By default, a BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. In this case, &amp;quot;default&amp;quot; is the &#039;&#039;&#039;selector&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
* Optional: Avatar Preference - in case a user-avatar is also present, which to prefer. Options &amp;quot;bimi&amp;quot; or &amp;quot;personal&amp;quot;. In case this is not set, it defaults to &amp;quot;bimi&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem; s=bimi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, it&#039;s also possible to use a different selector for the BIMI record. For example, if the following header is found in the E-Mail that is supposed to show the BIMI logo in the inbox: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIMI-Selector: v=BIMI1; s=myselector&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual BIMI record can be found with this query:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt myselector._bimi.example.com&lt;br /&gt;
myselector._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==On which domains to set a BIMI record==&lt;br /&gt;
&lt;br /&gt;
BIMI records can, just like DMARC records, be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no BIMI record inherits its BIMI record from the organisational domain. If a given selector is not found on a subdomain, the organisational domain is queried with that same selector.&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Verified Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Common Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your BIMI record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/bimi.php BIMI checker] to check your BIMI record.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;br /&gt;
* [https://app.inboxsys.com/bimi.php InboxSys BIMI checker]&lt;br /&gt;
* [https://inboxsys.com/introducing-the-inboxsys-bimi-checker/ Blog post about BIMI]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=381</id>
		<title>Sending a message to the seedlist</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=381"/>
		<updated>2025-09-13T15:33:30Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
[[Category:Seeds]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Sending a message to the seedlist&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Campaigns are analysed in [[:Category:InboxSys|InboxSys]] app by sending them to a [[:Category:Seeds|seedlist]]. This list consists of 2 parts:&lt;br /&gt;
&lt;br /&gt;
* The trigger - this is an address ending with @app.inboxsys.com.&lt;br /&gt;
* The [[:Category:Reputation|ISP]] seeds - those are the ISP seeds that are sent to Gmail, Outlook.com, Yahoo, Orange.fr and many others.&lt;br /&gt;
&lt;br /&gt;
=Seedlist=&lt;br /&gt;
&lt;br /&gt;
You can find your personal seedlist in your InboxSys account by clicking on the cogwheels icon in the far right top.&lt;br /&gt;
&lt;br /&gt;
The ISP seeds are showing in the &amp;quot;Inbox Delivery&amp;quot;-section on the individual campaign results. This section shows if the seeds have arrived to the inbox, the [[wikipedia:Email_spam|spam]]-folder, or somewhere else. For all mails received, it is possible to show full mail headers.&lt;br /&gt;
&lt;br /&gt;
In case you would like to test delivery to any ISP not on the list, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
Messages to the trigger address are the messages that get actually [[:Category:E-Mail_analysis|analysed]]. &lt;br /&gt;
* A message that is not sent to the trigger address, will not be displayed in InboxSys at all. &lt;br /&gt;
* Messages sent to the trigger address only, will arrive, but show all ISP seeds as &amp;quot;missing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each message sent to an ISP seed is one that will not be opened and will not have it&#039;s links clicked. Only the trigger seed has clickable links and potentially responding tracking pixels. E-Mail addresses that show no response may have a negative effect on your reputation on the long run. Since many ISPs rely on user-based engagement metrics, it has become impossible to definitely determine if a message has or hasn&#039;t hit the spam folder. When it hits the spamfolder in our pristine ISP seed addresses, that doesn&#039;t mean it also lands in the spamfolder for someone who has gathered and shared a lot of user-based engagement metrics with their ISP, or vice versa.&lt;br /&gt;
&lt;br /&gt;
For that reason, we recommend to start testing to the trigger seed only and do full seedlist test after all issues, reported by InboxSys, have been fixed, or in case spamfolder-issues are suspected. When the ISP seedlist detects an issue, it&#039;s already too late for preventive measures. Prevention can already be achieved by sending to the trigger address only.&lt;br /&gt;
&lt;br /&gt;
Messages to the full seedlist should be sent as list - in single messages. Adding seeds to CC or BCC will distort the final analysis. If you don&#039;t have access to an ESP, you can use [https://support.microsoft.com/en-us/office/use-mail-merge-for-bulk-email-letters-labels-and-envelopes-f488ed5b-b849-4c11-9cff-932c49474705 Mail Merge for Microsoft] or [https://addons.thunderbird.net/en-US/thunderbird/addon/mail-merge/ Mail Merge for Thunderbird] to simulate list-sending.&lt;br /&gt;
&lt;br /&gt;
=Methods of matching triggers to ISP-seeds=&lt;br /&gt;
&lt;br /&gt;
By default, seeds are matched based on the sender address &#039;&#039;and&#039;&#039;  [[subject]]line, it is important that all subjectlines are exactly the same. If [[personalisation]] on the subjectline is being used, personalization variables for each address in the seedlist should have the same content.&lt;br /&gt;
&lt;br /&gt;
In case your test messages have different sender addresses and/or subject line, you can choose to set a specific X-Header in order to invoke a different method of matching. Available X-Headers/methods are: &lt;br /&gt;
&lt;br /&gt;
==X-Campaign-ID==&lt;br /&gt;
&lt;br /&gt;
Each time you press &amp;quot;send to list&amp;quot;, it&#039;s a new &amp;quot;campaign&amp;quot;. The X-Campaign-ID contains a unique identifier for a single campaign. Let&#039;s say, the campaign ID is &amp;quot;12345678-a&amp;quot;. In that case, the X-Campaign-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-Campaign-ID: &amp;lt;12345678-a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Because the campaign ID alone doesn&#039;t allow us to match to a specific user account reliably, it&#039;s required the campaign has at least one more identifier. This can be the sender address &#039;&#039;or&#039;&#039; the subject. One of both is sufficient, it doesn&#039;t matter which one.&lt;br /&gt;
&lt;br /&gt;
==X-InboxSys-ID==&lt;br /&gt;
&lt;br /&gt;
The X-InboxSys-ID allows you to send your user-ID along with your campaign ID. This way, the campaign can be directly matched to your user account and no further identifiers are required. In this example, those are your user IDs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Account name!!Account ID&lt;br /&gt;
|-&lt;br /&gt;
|main_account||1234&lt;br /&gt;
|-&lt;br /&gt;
|sub_account||1235&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, the trigger of your seedlist is sub_account@app.inboxsys.com and your unique campaign ID is &amp;quot;12345678-b&amp;quot;. In that case, your X-InboxSys-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-InboxSys-ID: &amp;lt;1235_12345678-b&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as your campaign ID is unique, this matches both your user account and the campaign in question. In this case, no further matching is required. Subject, sender and content can be entirely different.&lt;br /&gt;
&lt;br /&gt;
=InboxSys trigger seed unsubscribes=&lt;br /&gt;
&lt;br /&gt;
InboxSys calls the headers of all links in all seeds, in order to test if links work. InboxSys is not calling the &#039;&#039;body&#039;&#039; of that link! If this little check unsubscribes immediately, that indicates a few severe flaws in the unsubscribe mechanism.&lt;br /&gt;
&lt;br /&gt;
First of all, no-one uses a single-click [[unsubscribe]] in the bottom of an E-Mail. It&#039;s legally allowed to use a dual-click unsubscribe, so that is the common standard. When you click on an unsusbscribe link, the landing page should show a confirmation dialog. Otherwise, you get bot-unsubscribes! That is basically what we have here: a bot-unsubscribe.&lt;br /&gt;
&lt;br /&gt;
Secondly, we are calling the header of the page, but not the body. Even if there is no dialog, calling the header should only send back header information, but not execute actions that are typically taken &#039;&#039;after&#039;&#039; the &#039;&#039;full page&#039;&#039; has loaded.&lt;br /&gt;
&lt;br /&gt;
An immediate unsubscribe upon only calling the header of a page looks symptomatic to a [[List-Unsubscribe]] link. LU have opposite requirements and best practices from standard unsubscribe links. InboxSys never calls a List-Unsubscribe link, for this exact, obvious reason.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting unsubscribes==&lt;br /&gt;
&lt;br /&gt;
* Check your logs to see the reason for the unsubscription&lt;br /&gt;
* Request Information from your ESP to explain why this has happened&lt;br /&gt;
* InboxSys can assist to converse with ESP to see if their approach can be changed&lt;br /&gt;
* Ensure the InboxSys trigger seed is safe-listed&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/what-is-a-seed-list/ Blog article on seedlists]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=380</id>
		<title>Sending a message to the seedlist</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=380"/>
		<updated>2025-09-13T15:07:52Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
[[Category:Seeds]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Sending a message to the seedlist&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Campaigns are analysed in [[:Category:InboxSys|InboxSys]] app by sending them to a [[:Category:Seeds|seedlist]]. This list consists of 2 parts:&lt;br /&gt;
&lt;br /&gt;
* The trigger - this is an address ending with @app.inboxsys.com.&lt;br /&gt;
* The [[:Category:Reputation|ISP]] seeds - those are the ISP seeds that are sent to Gmail, Outlook.com, Yahoo, Orange.fr and many others.&lt;br /&gt;
&lt;br /&gt;
=Seedlist=&lt;br /&gt;
&lt;br /&gt;
You can find your personal seedlist in your InboxSys account by clicking on the cogwheels icon in the far right top.&lt;br /&gt;
&lt;br /&gt;
The ISP seeds are showing in the &amp;quot;Inbox Delivery&amp;quot;-section on the individual campaign results. This section shows if the seeds have arrived to the inbox, the [[wikipedia:Email_spam|spam]]-folder, or somewhere else. For all mails received, it is possible to show full mail headers.&lt;br /&gt;
&lt;br /&gt;
In case you would like to test delivery to any ISP not on the list, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
Messages to the trigger address are the messages that get actually [[:Category:E-Mail_analysis|analysed]]. &lt;br /&gt;
* A message that is not sent to the trigger address, will not be displayed in InboxSys at all. &lt;br /&gt;
* Messages sent to the trigger address only, will arrive, but show all ISP seeds as &amp;quot;missing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each message sent to an ISP seed is one that will not be opened and will not have it&#039;s links clicked. Only the trigger seed has clickable links and potentially responding tracking pixels. E-Mail addresses that show no response may have a negative effect on your reputation on the long run. Since many ISPs rely on user-based engagement metrics, it has become impossible to definitely determine if a message has or hasn&#039;t hit the spam folder. When it hits the spamfolder in our pristine ISP seed addresses, that doesn&#039;t mean it also lands in the spamfolder for someone who has gathered and shared a lot of user-based engagement metrics with their ISP, or vice versa.&lt;br /&gt;
&lt;br /&gt;
For that reason, we recommend to start testing to the trigger seed only and do full seedlist test after all issues, reported by InboxSys, have been fixed, or in case spamfolder-issues are suspected. When the ISP seedlist detects an issue, it&#039;s already too late for preventive measures. Prevention can already be achieved by sending to the trigger address only.&lt;br /&gt;
&lt;br /&gt;
Messages to the full seedlist should be sent as list - in single messages. Adding seeds to CC or BCC will distort the final analysis. If you don&#039;t have access to an ESP, you can use [https://support.microsoft.com/en-us/office/use-mail-merge-for-bulk-email-letters-labels-and-envelopes-f488ed5b-b849-4c11-9cff-932c49474705 Mail Merge for Microsoft] or [https://addons.thunderbird.net/en-US/thunderbird/addon/mail-merge/ Mail Merge for Thunderbird] to simulate list-sending.&lt;br /&gt;
&lt;br /&gt;
=Methods of matching triggers to ISP-seeds=&lt;br /&gt;
&lt;br /&gt;
By default, seeds are matched based on the sender address &#039;&#039;and&#039;&#039;  [[subject]]line, it is important that all subjectlines are exactly the same. If [[personalisation]] on the subjectline is being used, personalization variables for each address in the seedlist should have the same content.&lt;br /&gt;
&lt;br /&gt;
In case your test messages have different sender addresses and/or subject line, you can choose to set a specific X-Header in order to invoke a different method of matching. Available X-Headers/methods are: &lt;br /&gt;
&lt;br /&gt;
==X-Campaign-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
Each time you press &amp;quot;send to list&amp;quot;, it&#039;s a new &amp;quot;campaign&amp;quot;. The X-Campaign-ID contains a unique identifier for a single campaign. Let&#039;s say, the campaign ID is &amp;quot;12345678-a&amp;quot;. In that case, the X-Campaign-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-Campaign-ID: &amp;lt;12345678-a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Because the campaign ID alone doesn&#039;t allow us to match to a specific user account reliably, it&#039;s required the campaign has at least one more identifier. This can be the sender address &#039;&#039;or&#039;&#039; the subject. One of both is sufficient, it doesn&#039;t matter which one.&lt;br /&gt;
&lt;br /&gt;
==X-InboxSys-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
The X-InboxSys-ID allows you to send your user-ID along with your campaign ID. This way, the campaign can be directly matched to your user account and no further identifiers are required. In this example, those are your user IDs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Account name!!Account ID&lt;br /&gt;
|-&lt;br /&gt;
|main_account||1234&lt;br /&gt;
|-&lt;br /&gt;
|sub_account||1235&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, the trigger of your seedlist is sub_account@app.inboxsys.com and your unique campaign ID is &amp;quot;12345678-b&amp;quot;. In that case, your X-InboxSys-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-InboxSys-ID: &amp;lt;1235_12345678-b&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as your campaign ID is unique, this matches both your user account and the campaign in question. In this case, no further matching is required. Subject, sender and content can be entirely different.&lt;br /&gt;
&lt;br /&gt;
=InboxSys trigger seed unsubscribes=&lt;br /&gt;
&lt;br /&gt;
InboxSys calls the headers of all links in all seeds, in order to test if links work. InboxSys is not calling the &#039;&#039;body&#039;&#039; of that link! If this little check unsubscribes immediately, that indicates a few severe flaws in the unsubscribe mechanism.&lt;br /&gt;
&lt;br /&gt;
First of all, no-one uses a single-click [[unsubscribe]] in the bottom of an E-Mail. It&#039;s legally allowed to use a dual-click unsubscribe, so that is the common standard. When you click on an unsusbscribe link, the landing page should show a confirmation dialog. Otherwise, you get bot-unsubscribes! That is basically what we have here: a bot-unsubscribe.&lt;br /&gt;
&lt;br /&gt;
Secondly, we are calling the header of the page, but not the body. Even if there is no dialog, calling the header should only send back header information, but not execute actions that are typically taken &#039;&#039;after&#039;&#039; the &#039;&#039;full page&#039;&#039; has loaded.&lt;br /&gt;
&lt;br /&gt;
An immediate unsubscribe upon only calling the header of a page looks symptomatic to a [[List-Unsubscribe]] link. LU have opposite requirements and best practices from standard unsubscribe links. InboxSys never calls a List-Unsubscribe link, for this exact, obvious reason.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting unsubscribes==&lt;br /&gt;
&lt;br /&gt;
* Check your logs to see the reason for the unsubscription&lt;br /&gt;
* Request Information from your ESP to explain why this has happened&lt;br /&gt;
* InboxSys can assist to converse with ESP to see if their approach can be changed&lt;br /&gt;
* Ensure the InboxSys trigger seed is safe-listed&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/what-is-a-seed-list/ Blog article on seedlists]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=379</id>
		<title>Sending a message to the seedlist</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=379"/>
		<updated>2025-09-13T15:06:37Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
[[Category:Seeds]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Sending a message to the seedlist&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Campaigns are analysed in [[:Category:InboxSys|InboxSys]] app by sending them to a [[:Category:Seeds|seedlist]]. This list consists of 2 parts:&lt;br /&gt;
&lt;br /&gt;
* The trigger - this is an address ending with @app.inboxsys.com.&lt;br /&gt;
* The [[:Category:Reputation|ISP]] seeds - those are the ISP seeds that are sent to Gmail, Outlook.com, Yahoo, Orange.fr and many others.&lt;br /&gt;
&lt;br /&gt;
=Seedlist=&lt;br /&gt;
&lt;br /&gt;
You can find your personal seedlist in your InboxSys account by clicking on the cogwheels icon in the far right top.&lt;br /&gt;
&lt;br /&gt;
The ISP seeds are showing in the &amp;quot;Inbox Delivery&amp;quot;-section on the individual campaign results. This section shows if the seeds have arrived to the inbox, the [[wikipedia:Email_spam|spam]]-folder, or somewhere else. For all mails received, it is possible to show full mail headers.&lt;br /&gt;
&lt;br /&gt;
In case you would like to test delivery to any ISP not on the list, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
Messages to the trigger address are the messages that get actually [[:Category:E-Mail_analysis|analysed]]. &lt;br /&gt;
* A message that is not sent to the trigger address, will not be displayed in InboxSys at all. &lt;br /&gt;
* Messages sent to the trigger address only, will arrive, but show all ISP seeds as &amp;quot;missing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each message sent to an ISP seed is one that will not be opened and will not have it&#039;s links clicked. Only the trigger seed has clickable links and potentially responding tracking pixels. E-Mail addresses that show no response may have a negative effect on your reputation on the long run. Since many ISPs rely on user-based engagement metrics, it has become impossible to definitely determine if a message has or hasn&#039;t hit the spam folder. When it hits the spamfolder in our pristine ISP seed addresses, that doesn&#039;t mean it also lands in the spamfolder for someone who has gathered and shared a lot of user-based engagement metrics with their ISP, or vice versa.&lt;br /&gt;
&lt;br /&gt;
For that reason, we recommend to start testing to the trigger seed only and do full seedlist test after all issues, reported by InboxSys, have been fixed, or in case spamfolder-issues are suspected. When the ISP seedlist detects an issue, it&#039;s already too late for preventive measures. Prevention can be achieved by sending to the trigger address only.&lt;br /&gt;
&lt;br /&gt;
Messages to the full seedlist should be sent as list - in single messages. Adding seeds to CC or BCC will distort the final analysis. If you don&#039;t have access to an ESP, you can use [https://support.microsoft.com/en-us/office/use-mail-merge-for-bulk-email-letters-labels-and-envelopes-f488ed5b-b849-4c11-9cff-932c49474705 Mail Merge for Microsoft] or [https://addons.thunderbird.net/en-US/thunderbird/addon/mail-merge/ Mail Merge for Thunderbird] to simulate list-sending.&lt;br /&gt;
&lt;br /&gt;
=Methods of matching triggers to ISP-seeds=&lt;br /&gt;
&lt;br /&gt;
By default, seeds are matched based on the sender address &#039;&#039;and&#039;&#039;  [[subject]]line, it is important that all subjectlines are exactly the same. If [[personalisation]] on the subjectline is being used, personalization variables for each address in the seedlist should have the same content.&lt;br /&gt;
&lt;br /&gt;
In case your test messages have different sender addresses and/or subject line, you can choose to set a specific X-Header in order to invoke a different method of matching. Available X-Headers/methods are: &lt;br /&gt;
&lt;br /&gt;
==X-Campaign-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
Each time you press &amp;quot;send to list&amp;quot;, it&#039;s a new &amp;quot;campaign&amp;quot;. The X-Campaign-ID contains a unique identifier for a single campaign. Let&#039;s say, the campaign ID is &amp;quot;12345678-a&amp;quot;. In that case, the X-Campaign-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-Campaign-ID: &amp;lt;12345678-a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Because the campaign ID alone doesn&#039;t allow us to match to a specific user account reliably, it&#039;s required the campaign has at least one more identifier. This can be the sender address &#039;&#039;or&#039;&#039; the subject. One of both is sufficient, it doesn&#039;t matter which one.&lt;br /&gt;
&lt;br /&gt;
==X-InboxSys-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
The X-InboxSys-ID allows you to send your user-ID along with your campaign ID. This way, the campaign can be directly matched to your user account and no further identifiers are required. In this example, those are your user IDs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Account name!!Account ID&lt;br /&gt;
|-&lt;br /&gt;
|main_account||1234&lt;br /&gt;
|-&lt;br /&gt;
|sub_account||1235&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, the trigger of your seedlist is sub_account@app.inboxsys.com and your unique campaign ID is &amp;quot;12345678-b&amp;quot;. In that case, your X-InboxSys-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-InboxSys-ID: &amp;lt;1235_12345678-b&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as your campaign ID is unique, this matches both your user account and the campaign in question. In this case, no further matching is required. Subject, sender and content can be entirely different.&lt;br /&gt;
&lt;br /&gt;
=InboxSys trigger seed unsubscribes=&lt;br /&gt;
&lt;br /&gt;
InboxSys calls the headers of all links in all seeds, in order to test if links work. InboxSys is not calling the &#039;&#039;body&#039;&#039; of that link! If this little check unsubscribes immediately, that indicates a few severe flaws in the unsubscribe mechanism.&lt;br /&gt;
&lt;br /&gt;
First of all, no-one uses a single-click [[unsubscribe]] in the bottom of an E-Mail. It&#039;s legally allowed to use a dual-click unsubscribe, so that is the common standard. When you click on an unsusbscribe link, the landing page should show a confirmation dialog. Otherwise, you get bot-unsubscribes! That is basically what we have here: a bot-unsubscribe.&lt;br /&gt;
&lt;br /&gt;
Secondly, we are calling the header of the page, but not the body. Even if there is no dialog, calling the header should only send back header information, but not execute actions that are typically taken &#039;&#039;after&#039;&#039; the &#039;&#039;full page&#039;&#039; has loaded.&lt;br /&gt;
&lt;br /&gt;
An immediate unsubscribe upon only calling the header of a page looks symptomatic to a [[List-Unsubscribe]] link. LU have opposite requirements and best practices from standard unsubscribe links. InboxSys never calls a List-Unsubscribe link, for this exact, obvious reason.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting unsubscribes==&lt;br /&gt;
&lt;br /&gt;
* Check your logs to see the reason for the unsubscription&lt;br /&gt;
* Request Information from your ESP to explain why this has happened&lt;br /&gt;
* InboxSys can assist to converse with ESP to see if their approach can be changed&lt;br /&gt;
* Ensure the InboxSys trigger seed is safe-listed&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/what-is-a-seed-list/ Blog article on seedlists]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Register_a_test_account&amp;diff=378</id>
		<title>Register a test account</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Register_a_test_account&amp;diff=378"/>
		<updated>2025-09-13T14:50:30Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Register a test account&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can sign up to InboxSys on https://app.inboxsys.com/login.php?showform=createaccount. (People with a referral code can use [https://app.inboxsys.com/login.php?showform=createaccount this link] instead) Before the first login, your E-Mail address needs to be verified. We will send an Email with:&lt;br /&gt;
&lt;br /&gt;
* Username&lt;br /&gt;
* Password&lt;br /&gt;
* Activation code&lt;br /&gt;
&lt;br /&gt;
In this E-mail, an activation link can be found. This link has the activation code included. Signing up should be as simple as pressing the link in the E-mail and entering username and password. If, for any reason, the activation code is not included in the link, you will be asked to enter the activation code manually.&lt;br /&gt;
&lt;br /&gt;
Once your account is ready, you can proceed to [[Sending_a_message_to_the_seedlist|send your first test message to your new seedlist]], as shown in [https://youtu.be/EUCWWOuLxnQ this video]. &lt;br /&gt;
&lt;br /&gt;
==What if it does not work?==&lt;br /&gt;
&lt;br /&gt;
In case the first E-mail does not arrive - please allow it 30 minutes and check all mail-folders and tabs before to proceed - a new password can be requested at https://app.inboxsys.com/login.php?getpassword=yes. With username and the new password, a fresh activation code can be requested after login.&lt;br /&gt;
&lt;br /&gt;
==How long can I use InboxSys?==&lt;br /&gt;
&lt;br /&gt;
InboxSys can be tested in full functionality for 14 days. After those 14 days, a commercial licence can be acquired from within your account. Detailed information on features and pricing can be found at https://inboxsys.com/&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/ InboxSys Website]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=377</id>
		<title>Sending a message to the seedlist</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=377"/>
		<updated>2025-09-13T03:35:12Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
[[Category:Seeds]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Sending a message to the seedlist&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Campaigns are analysed in [[:Category:InboxSys|InboxSys]] app by sending them to a [[:Category:Seeds|seedlist]]. This list consists of 2 parts:&lt;br /&gt;
&lt;br /&gt;
* The trigger - this is an address ending with @app.inboxsys.com.&lt;br /&gt;
* The [[:Category:Reputation|ISP]] seeds - those are the ISP seeds that are sent to Gmail, Outlook.com, Yahoo, Orange.fr and many others.&lt;br /&gt;
&lt;br /&gt;
=Seedlist=&lt;br /&gt;
&lt;br /&gt;
You can find your personal seedlist in your InboxSys account by clicking on the cogwheels icon in the far right top.&lt;br /&gt;
&lt;br /&gt;
The ISP seeds are showing in the &amp;quot;Inbox Delivery&amp;quot;-section on the individual campaign results. This section shows if the seeds have arrived to the inbox, the [[wikipedia:Email_spam|spam]]-folder, or somewhere else. For all mails received, it is possible to show full mail headers.&lt;br /&gt;
&lt;br /&gt;
In case you would like to test delivery to any ISP not on the list, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
Messages to the trigger address are the messages that get actually [[:Category:E-Mail_analysis|analysed]]. &lt;br /&gt;
* A message that is not sent to the trigger address, will not be displayed in InboxSys at all. &lt;br /&gt;
* Messages sent to the trigger address only will arrive, but show all ISP seeds as &amp;quot;missing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Messages to the seedlist should be sent as list - in single messages. Adding seeds to CC or BCC will distort the final analysis. If you don&#039;t have access to an ESP, you can use [https://support.microsoft.com/en-us/office/use-mail-merge-for-bulk-email-letters-labels-and-envelopes-f488ed5b-b849-4c11-9cff-932c49474705 Mail Merge for Microsoft] or [https://addons.thunderbird.net/en-US/thunderbird/addon/mail-merge/ Mail Merge for Thunderbird] to simulate list-sending.&lt;br /&gt;
&lt;br /&gt;
=Methods of matching triggers to ISP-seeds=&lt;br /&gt;
&lt;br /&gt;
By default, seeds are matched based on the sender address &#039;&#039;and&#039;&#039;  [[subject]]line, it is important that all subjectlines are exactly the same. If [[personalisation]] on the subjectline is being used, personalization variables for each address in the seedlist should have the same content.&lt;br /&gt;
&lt;br /&gt;
In case your test messages have different sender addresses and/or subject line, you can choose to set a specific X-Header in order to invoke a different method of matching. Available X-Headers/methods are: &lt;br /&gt;
&lt;br /&gt;
==X-Campaign-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
Each time you press &amp;quot;send to list&amp;quot;, it&#039;s a new &amp;quot;campaign&amp;quot;. The X-Campaign-ID contains a unique identifier for a single campaign. Let&#039;s say, the campaign ID is &amp;quot;12345678-a&amp;quot;. In that case, the X-Campaign-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-Campaign-ID: &amp;lt;12345678-a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Because the campaign ID alone doesn&#039;t allow us to match to a specific user account reliably, it&#039;s required the campaign has at least one more identifier. This can be the sender address &#039;&#039;or&#039;&#039; the subject. One of both is sufficient, it doesn&#039;t matter which one.&lt;br /&gt;
&lt;br /&gt;
==X-InboxSys-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
The X-InboxSys-ID allows you to send your user-ID along with your campaign ID. This way, the campaign can be directly matched to your user account and no further identifiers are required. In this example, those are your user IDs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Account name!!Account ID&lt;br /&gt;
|-&lt;br /&gt;
|main_account||1234&lt;br /&gt;
|-&lt;br /&gt;
|sub_account||1235&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, the trigger of your seedlist is sub_account@app.inboxsys.com and your unique campaign ID is &amp;quot;12345678-b&amp;quot;. In that case, your X-InboxSys-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-InboxSys-ID: &amp;lt;1235_12345678-b&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as your campaign ID is unique, this matches both your user account and the campaign in question. In this case, no further matching is required. Subject, sender and content can be entirely different.&lt;br /&gt;
&lt;br /&gt;
=InboxSys trigger seed unsubscribes=&lt;br /&gt;
&lt;br /&gt;
InboxSys calls the headers of all links in all seeds, in order to test if links work. InboxSys is not calling the &#039;&#039;body&#039;&#039; of that link! If this little check unsubscribes immediately, that indicates a few severe flaws in the unsubscribe mechanism.&lt;br /&gt;
&lt;br /&gt;
First of all, no-one uses a single-click [[unsubscribe]] in the bottom of an E-Mail. It&#039;s legally allowed to use a dual-click unsubscribe, so that is the common standard. When you click on an unsusbscribe link, the landing page should show a confirmation dialog. Otherwise, you get bot-unsubscribes! That is basically what we have here: a bot-unsubscribe.&lt;br /&gt;
&lt;br /&gt;
Secondly, we are calling the header of the page, but not the body. Even if there is no dialog, calling the header should only send back header information, but not execute actions that are typically taken &#039;&#039;after&#039;&#039; the &#039;&#039;full page&#039;&#039; has loaded.&lt;br /&gt;
&lt;br /&gt;
An immediate unsubscribe upon only calling the header of a page looks symptomatic to a [[List-Unsubscribe]] link. LU have opposite requirements and best practices from standard unsubscribe links. InboxSys never calls a List-Unsubscribe link, for this exact, obvious reason.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting unsubscribes==&lt;br /&gt;
&lt;br /&gt;
* Check your logs to see the reason for the unsubscription&lt;br /&gt;
* Request Information from your ESP to explain why this has happened&lt;br /&gt;
* InboxSys can assist to converse with ESP to see if their approach can be changed&lt;br /&gt;
* Ensure the InboxSys trigger seed is safe-listed&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/what-is-a-seed-list/ Blog article on seedlists]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Register_a_test_account&amp;diff=376</id>
		<title>Register a test account</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Register_a_test_account&amp;diff=376"/>
		<updated>2025-09-13T03:34:30Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Register a test account&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can sign up to InboxSys on https://app.inboxsys.com/login.php?showform=createaccount. (People with a referral code can use [https://app.inboxsys.com/login.php?showform=createaccount this link] instead) Before the first login, your E-Mail address needs to be verified. We will send an Email with:&lt;br /&gt;
&lt;br /&gt;
* Username&lt;br /&gt;
* Password&lt;br /&gt;
* Activation code&lt;br /&gt;
&lt;br /&gt;
In this E-mail, an activation link can be found. This link has the activation code included. Signing up should be as simple as pressing the link in the E-mail and entering username and password. If, for any reason, the activation code is not included in the link, you will be asked to enter the activation code manually.&lt;br /&gt;
&lt;br /&gt;
==What if it does not work?==&lt;br /&gt;
&lt;br /&gt;
In case the first E-mail does not arrive - please allow it 30 minutes and check all mail-folders and tabs before to proceed - a new password can be requested at https://app.inboxsys.com/login.php?getpassword=yes. With username and the new password, a fresh activation code can be requested after login.&lt;br /&gt;
&lt;br /&gt;
==How long can I use InboxSys?==&lt;br /&gt;
&lt;br /&gt;
InboxSys can be tested in full functionality for 14 days. After those 14 days, a commercial licence can be acquired from within your account. Detailed information on features and pricing can be found at https://inboxsys.com/&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/ InboxSys Website]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;br /&gt;
* [https://youtu.be/EUCWWOuLxnQ Video tutorial]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=InboxSys_document_library&amp;diff=375</id>
		<title>InboxSys document library</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=InboxSys_document_library&amp;diff=375"/>
		<updated>2025-09-13T03:32:49Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Full logo.svg|thumb|InboxSys Logo]]&lt;br /&gt;
&lt;br /&gt;
[https://inboxsys.com InboxSys] is a service developed with years of industry expertise to meet the constantly evolving methods and criteria applied by [[:Category:Reputation|ISP]]s (Internet Service Providers) to prevent [[wikipedia:Email_spam|spam]] from reaching their users. As spam prevention methods are becoming more sophisticated, the risk of your content being flagged is increased and this can quickly escalate into large scale issues such as [[Blocklists|blocklisting]]s and negative categorization. InboxSys&#039; system allows senders to quickly identify and address [[:Category:Deliverability|deliverability]] issues to bring them under control.&lt;br /&gt;
&lt;br /&gt;
=Getting started=&lt;br /&gt;
Before you can get started with InboxSys, you need an [[Register_a_test_account|InboxSys account]]. Once that&#039;s done, you can [[Sending_a_message_to_the_seedlist|send your first test message to your new seedlist]]. &lt;br /&gt;
&lt;br /&gt;
=Deliverability=&lt;br /&gt;
[[:Category:Deliverability|Deliverability]] is the foundation of email engagement, and it is comprised of a series of technologies and requirements that allow ISPs to differentiate between legitimate mail and spam. With so many filters used by ISPs, from infrastructure mechanisms to content level checks, even general sendings can become a real risk to your ability to efficiently communicate with your clients and partners.&lt;br /&gt;
&lt;br /&gt;
=Read further...=&lt;br /&gt;
* [[:Category:InboxSys]]&lt;br /&gt;
* [[:Category:Configuration]]&lt;br /&gt;
* [[:Category:Deliverability]]&lt;br /&gt;
* [[:Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
* [https://www.youtube.com/@Email-Matters InboxSys on YouTube]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=374</id>
		<title>MTA-STS</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=374"/>
		<updated>2025-08-15T13:52:10Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[wikipedia:Transport_Layer_Security|TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SMTP MTA Strict Transport Security&#039;&#039;&#039; (MTA-STS) was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to secure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails.&lt;br /&gt;
&lt;br /&gt;
=Configuration and setup=&lt;br /&gt;
&lt;br /&gt;
MTA-STS is set up on a so-called &amp;quot;policy domain&amp;quot;. This is the domain that holds the policy. Each [[RFC5322.From]] domain should have it&#039;s own MTA-STS policy configuration. Subdomains don&#039;t automatically inherit MTA-STS settings. &lt;br /&gt;
&lt;br /&gt;
MTA-STS consists of two components:&lt;br /&gt;
&lt;br /&gt;
* Policy file&lt;br /&gt;
* DNS record&lt;br /&gt;
&lt;br /&gt;
==Policy file==&lt;br /&gt;
&lt;br /&gt;
The policy file is stored on a webhost in the &amp;quot;.well-known&amp;quot; webdirectory with a subdomain of the policy domain named &amp;quot;mta-sts&amp;quot; and the filename named &amp;quot;mta-sts.txt&amp;quot;. It must be reachable from outside and contain the following keys: &lt;br /&gt;
&lt;br /&gt;
* version: This is the mta-sts version used. Currently, &amp;quot;STSv1&amp;quot; is the only valid value.&lt;br /&gt;
* mode: This can be either&lt;br /&gt;
** testing: Testing mode,&lt;br /&gt;
** enforce: Enforced TLS, or&lt;br /&gt;
** none: MTA-STS is disabled. May be useful to receive TLSRPT reports only.&lt;br /&gt;
* mx: Each MX has its own line.&lt;br /&gt;
* max_age: Should not exceed 31557600 (~1 year).&lt;br /&gt;
&lt;br /&gt;
For example, the policy domain for policydomain.TLD is located at https://mta-sts.policydomain.TLD/.well-known/mta-sts.txt and contains the following text: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version: STSv1&lt;br /&gt;
mode: enforce&lt;br /&gt;
mx: mta1.policydomain.TLD&lt;br /&gt;
mx: mta2.policydomain.TLD&lt;br /&gt;
max_age: 86400&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DNS record==&lt;br /&gt;
&lt;br /&gt;
In order to tell the world that a particular domain is an MTA-STS policy domain, it&#039;s required to create another subdomain with a TXT record present. The subdomain is &amp;quot;_mta-sts&amp;quot; and the TXT record syntax has two switches: &lt;br /&gt;
&lt;br /&gt;
* v: For &amp;quot;version&amp;quot;. This is exactly the same key/value pair as in the policy file. &amp;quot;STSv1&amp;quot; currently is the only valid value.&lt;br /&gt;
* id: A unique and incremental number, indicating the version update of the policy. This number should be changed each time the policy file is modified. It&#039;s recommended to use a generic value, such as date and time. &lt;br /&gt;
&lt;br /&gt;
For example, policy domain &amp;quot;policydomain.TLD&amp;quot; could have the following DNS TXT MTA-STS record: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_mta-sts.policydomain.TLD. IN TXT &amp;quot;v=STSv1; id=202403010850;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TLS reporting=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[TLSRPT]]&lt;br /&gt;
&lt;br /&gt;
RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLS reporting (TLSRPT)&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant domains should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=DNS-based_Authentication_of_Named_Entities_(DANE)&amp;diff=373</id>
		<title>DNS-based Authentication of Named Entities (DANE)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=DNS-based_Authentication_of_Named_Entities_(DANE)&amp;diff=373"/>
		<updated>2025-08-15T13:46:45Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Created page with &amp;quot;Category:Deliverability Category:Authentication  In modern E-Mail communication, Opportunistic TLS is common. This means that TLS encryption for the transition of E-Mail is negotiated by MTAs on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted.   &amp;#039;&amp;#039;&amp;#039;DANE (DNS-bas...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[wikipedia:Transport_Layer_Security|TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DANE (DNS-based Authentication of Named Entities)&#039;&#039;&#039;, together with the TLSA protocol, was introduced in [https://www.rfc-editor.org/rfc/rfc6698 RFC 6698]. It&#039;s main purpose is to secure TLS connections against [[wikipedia:Man-in-the-middle_attack|MitM (Man in the Middle) attacks]]. Dane requires [[wikipedia:DNSSEC|DNSSEC]]. DANE compliant Mail is returned to the sender if the TLS negotiation fails.&lt;br /&gt;
&lt;br /&gt;
=Configuration and setup=&lt;br /&gt;
&lt;br /&gt;
DANE is set up on the recipient&#039;s mail host in multiple layers:&lt;br /&gt;
&lt;br /&gt;
==DNSSEC==&lt;br /&gt;
&lt;br /&gt;
The first connection attempt requires DNSSEC for all DNS queries:&lt;br /&gt;
&lt;br /&gt;
# Querying MX records from the &#039;&#039;&#039;recipient domain&#039;&#039;&#039;.&lt;br /&gt;
# Querying &#039;&#039;&#039;MX domains / MTA hostnames&#039;&#039;&#039; for TLSA records.&lt;br /&gt;
&lt;br /&gt;
==TLSA DNS record==&lt;br /&gt;
&lt;br /&gt;
TLSA records are set on MTA hostnames on a sudomain that consists of: &lt;br /&gt;
&lt;br /&gt;
* Port&lt;br /&gt;
* Protocol (UDP, TCP or SCTP)&lt;br /&gt;
&lt;br /&gt;
For example, if the MTA has &#039;&#039;mta.example.com&#039;&#039; as hostname, &#039;&#039;TCP&#039;&#039; as protocol and we&#039;re using port &#039;&#039;25&#039;&#039; for SMTP connections, this is what a lookup of the TLSA record would look like: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t tlsa _25._tcp.mta.example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inside the record, we find the following components:&lt;br /&gt;
&lt;br /&gt;
===Certificate Usage Field (CUF)===&lt;br /&gt;
&lt;br /&gt;
The CUF specifies how the recipient server&#039;s certificate is to be verified.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Certificate Usage Field&lt;br /&gt;
|-&lt;br /&gt;
!Value!!Type!!Description&lt;br /&gt;
|-&lt;br /&gt;
|0||PKIX-TA||Allows the certificate of the trust anchor to be utilised along with Certificate Authority certificates&lt;br /&gt;
|-&lt;br /&gt;
|1||PKIX-EE||PKIX verification, including various checks&lt;br /&gt;
|-&lt;br /&gt;
|2||DANE-TA2||Validate the domain TLS certificates using the server private key from the X.509 (PKI) tree&lt;br /&gt;
|-&lt;br /&gt;
|3||DANE-EE||The CUF must only match against the certificate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Selector Field (SF)===&lt;br /&gt;
&lt;br /&gt;
The SF specifies which part of the recipient server&#039;s TLS certificate will be matched against the Certificate Association Data.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Selector Field&lt;br /&gt;
|-&lt;br /&gt;
!Value!!Type!!Description&lt;br /&gt;
|-&lt;br /&gt;
|0||SubjectPublicKeyInfo (SPKI)||Parts of the certificate, such as public key, pk algorithm, etc.&lt;br /&gt;
|-&lt;br /&gt;
|1||Full certificate||Full certificate&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Matching Type Field (MTF)===&lt;br /&gt;
&lt;br /&gt;
The MTF specifies how the CAD is presented for use with the Selector Field.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Matching Type Field&lt;br /&gt;
|-&lt;br /&gt;
!Value!!Type!!Description&lt;br /&gt;
|-&lt;br /&gt;
|1||SHA-256||SHA-256 hash of CAD based on the SF value&lt;br /&gt;
|-&lt;br /&gt;
|2||SHA-512||SHA-512 hash of CAD based on the SF value&lt;br /&gt;
|-&lt;br /&gt;
|0||Full||Exact match against CAD based on the SF value&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Certificate Association Data (CAD)===&lt;br /&gt;
&lt;br /&gt;
At the end of the TLSA record, we find a long string named &#039;&#039;&#039;Certificate Association Data&#039;&#039;&#039; (CAD). This field contains the hashed certificate date that matches the CUF.&lt;br /&gt;
&lt;br /&gt;
That said, the result of our above lookup could be something like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_25._tcp.mta.example.com has TLSA record 3 1 1 0AD1234567890ABCD1234567890ABCD1234567890ABCD1234567890ABCD12390&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==STARTTLS==&lt;br /&gt;
&lt;br /&gt;
STARTTLS is required on the recipients server for DANE to work. If no STARTTLS is offered, a so-called &amp;quot;downgrade attack&amp;quot; is suspected and the connection is dropped immediately. If STARTLS is offered, the checksum of the TLS certificate is compared to the information found in the TLSA DNS record.&lt;br /&gt;
&lt;br /&gt;
=TLS reporting=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[TLSRPT]]&lt;br /&gt;
&lt;br /&gt;
[https://www.rfc-editor.org/rfc/rfc8460 RFC 8460] states that &amp;lt;q&amp;gt;Recipient domains may also use the mechanisms defined by [[MTA-STS]] [RFC8461] or DANE [RFC6698] to publish additional encryption and authentication requirements; this document defines a mechanism for sending domains that are compatible with MTA-STS or DANE to share success and failure statistics with recipient domains.&amp;lt;/q&amp;gt; Even though this is not explicitly mentioned in RFC 6698, DANE compliant MTAs should be able to receive and process TLSRPT reports.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc6698 RFC 6698]: DANE RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:DNSSEC]]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=DANE&amp;diff=372</id>
		<title>DANE</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=DANE&amp;diff=372"/>
		<updated>2025-08-15T13:38:16Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Changed redirect target from DNS-based Authentication of Named Entities to DNS-based Authentication of Named Entities (DANE)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[DNS-based_Authentication_of_Named_Entities_(DANE)]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=DANE&amp;diff=371</id>
		<title>DANE</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=DANE&amp;diff=371"/>
		<updated>2025-08-15T13:37:53Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Redirected page to DNS-based Authentication of Named Entities&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[DNS-based_Authentication_of_Named_Entities]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=370</id>
		<title>MTA-STS</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=370"/>
		<updated>2025-08-15T11:53:34Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[wikipedia:Transport_Layer_Security|TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
MTA-STS was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to secure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails.&lt;br /&gt;
&lt;br /&gt;
=Configuration and setup=&lt;br /&gt;
&lt;br /&gt;
MTA-STS is set up on a so-called &amp;quot;policy domain&amp;quot;. This is the domain that holds the policy. Each [[RFC5322.From]] domain should have it&#039;s own MTA-STS policy configuration. Subdomains don&#039;t automatically inherit MTA-STS settings. &lt;br /&gt;
&lt;br /&gt;
MTA-STS consists of two components:&lt;br /&gt;
&lt;br /&gt;
* Policy file&lt;br /&gt;
* DNS record&lt;br /&gt;
&lt;br /&gt;
==Policy file==&lt;br /&gt;
&lt;br /&gt;
The policy file is stored on a webhost in the &amp;quot;.well-known&amp;quot; webdirectory with a subdomain of the policy domain named &amp;quot;mta-sts&amp;quot; and the filename named &amp;quot;mta-sts.txt&amp;quot;. It must be reachable from outside and contain the following keys: &lt;br /&gt;
&lt;br /&gt;
* version: This is the mta-sts version used. Currently, &amp;quot;STSv1&amp;quot; is the only valid value.&lt;br /&gt;
* mode: This can be either&lt;br /&gt;
** testing: Testing mode,&lt;br /&gt;
** enforce: Enforced TLS, or&lt;br /&gt;
** none: MTA-STS is disabled. May be useful to receive TLSRPT reports only.&lt;br /&gt;
* mx: Each MX has its own line.&lt;br /&gt;
* max_age: Should not exceed 31557600 (~1 year).&lt;br /&gt;
&lt;br /&gt;
For example, the policy domain for policydomain.TLD is located at https://mta-sts.policydomain.TLD/.well-known/mta-sts.txt and contains the following text: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version: STSv1&lt;br /&gt;
mode: enforce&lt;br /&gt;
mx: mta1.policydomain.TLD&lt;br /&gt;
mx: mta2.policydomain.TLD&lt;br /&gt;
max_age: 86400&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DNS record==&lt;br /&gt;
&lt;br /&gt;
In order to tell the world that a particular domain is an MTA-STS policy domain, it&#039;s required to create another subdomain with a TXT record present. The subdomain is &amp;quot;_mta-sts&amp;quot; and the TXT record syntax has two switches: &lt;br /&gt;
&lt;br /&gt;
* v: For &amp;quot;version&amp;quot;. This is exactly the same key/value pair as in the policy file. &amp;quot;STSv1&amp;quot; currently is the only valid value.&lt;br /&gt;
* id: A unique and incremental number, indicating the version update of the policy. This number should be changed each time the policy file is modified. It&#039;s recommended to use a generic value, such as date and time. &lt;br /&gt;
&lt;br /&gt;
For example, policy domain &amp;quot;policydomain.TLD&amp;quot; could have the following DNS TXT MTA-STS record: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_mta-sts.policydomain.TLD. IN TXT &amp;quot;v=STSv1; id=202403010850;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TLS reporting=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[TLSRPT]]&lt;br /&gt;
&lt;br /&gt;
RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLS reporting (TLSRPT)&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=369</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=369"/>
		<updated>2025-02-14T19:21:05Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
By default, a BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. In this case, &amp;quot;default&amp;quot; is the &#039;&#039;&#039;selector&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
* Optional: Avatar Preference - in case a user-avatar is also present, which to prefer. Options &amp;quot;bimi&amp;quot; or &amp;quot;personal&amp;quot;. In case this is not set, it defaults to &amp;quot;bimi&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem; s=bimi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, it&#039;s also possible to use a different selector for the BIMI record. For example, if the following header is found in the E-Mail that is supposed to show the BIMI logo in the inbox: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BIMI-Selector: v=BIMI1; s=myselector&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual BIMI record can be found with this query:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt myselector._bimi.example.com&lt;br /&gt;
myselector._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==On which domains to set a BIMI record==&lt;br /&gt;
&lt;br /&gt;
BIMI records can, just like DMARC records, be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no BIMI record inherits its BIMI record from the organisational domain. If a given selector is not found on a subdomain, the organisational domain is queried with that same selector.&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Verified Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Common Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=368</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=368"/>
		<updated>2025-02-03T20:40:48Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Brand Indicators for Message Identification (BIMI)=&lt;br /&gt;
&#039;&#039;Main article: [[Brand Indicators for Message Identification (BIMI)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
DMARC=pass with a policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot; is a prerequisite for BIMI to work.&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/domainchecker.php domainchecker] to check your DMARC record.&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [[TLSRPT]]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [https://app.inboxsys.com/domainchecker.php domainchecker]&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=367</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=367"/>
		<updated>2025-02-03T20:35:36Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
By default, a BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. In this case, &amp;quot;default&amp;quot; is the &#039;&#039;&#039;selector&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
* Optional: Avatar Preference - in case a user-avatar is also present, which to prefer. Options &amp;quot;bimi&amp;quot; or &amp;quot;personal&amp;quot;. In case this is not set, it defaults to &amp;quot;bimi&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem; s=bimi&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, it&#039;s also possible to use a different selector for the BIMI record. For example, if the following record is found: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; s=myselector;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual BIMI record can be found with this query:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt myselector._bimi.example.com&lt;br /&gt;
myselector._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==On which domains to set a BIMI record==&lt;br /&gt;
&lt;br /&gt;
BIMI records can, just like DMARC records, be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no BIMI record inherits its BIMI record from the organisational domain. If a given selector is not found on a subdomain, the organisational domain is queried with that same selector.&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Verified Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Common Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=366</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=366"/>
		<updated>2025-02-03T18:37:28Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Verified Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
* &#039;&#039;&#039;CMC&#039;&#039;&#039; means &amp;quot;&#039;&#039;&#039;Common Mark Certificate&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=DomainKeys_Identified_Mail_(DKIM)&amp;diff=365</id>
		<title>DomainKeys Identified Mail (DKIM)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=DomainKeys_Identified_Mail_(DKIM)&amp;diff=365"/>
		<updated>2025-02-01T03:45:24Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&#039;&#039;&#039;DKIM (DomainKeys Identified Mail)&#039;&#039;&#039; is an E-Mail domain [[:Category:Authentication|authentication]] method, designed to protect E-Mail sender domains ([[RFC5322.From]]) from forgery (spoofing). DKIM is defined in [https://www.rfc-editor.org/rfc/rfc6376.html RFC 6376] with updates in [https://www.rfc-editor.org/rfc/rfc8301.html RFC 8301] and [https://www.rfc-editor.org/rfc/rfc8463.html RFC 8463]. DKIM is a requirement of [[DMARC]].&lt;br /&gt;
&lt;br /&gt;
=Functionality=&lt;br /&gt;
&lt;br /&gt;
Each message is digitally signed by the sending server when it&#039;s being sent. DKIM works with a public key and a private key for signing and a selector for identification.&lt;br /&gt;
&lt;br /&gt;
==Selector==&lt;br /&gt;
&lt;br /&gt;
The selector assures that multiple DKIM records can be set on a single sender domain. Selectors can be any phrase. Here&#039;s an example from RFC 6376:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   selectors might indicate the names of office locations (e.g.,&lt;br /&gt;
   &amp;quot;sanfrancisco&amp;quot;, &amp;quot;coolumbeach&amp;quot;, and &amp;quot;reykjavik&amp;quot;), the signing date&lt;br /&gt;
   (e.g., &amp;quot;january2005&amp;quot;, &amp;quot;february2005&amp;quot;, etc.), or even an individual&lt;br /&gt;
   user.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selector is used to compile a subdomain for the DKIM DNS TXT record. If, for example, the selector is &amp;quot;reykjavik&amp;quot; and the senderdomain is &amp;quot;email.example.com&amp;quot;, the following subdomain should be created: &#039;&#039;reykjavik._domainkey.email.example.com&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Public and private key==&lt;br /&gt;
&lt;br /&gt;
The public key is publicly accessible in this [[DNS]] TXT record. The full content of the DNS TXT record may look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
v=DKIM1; t=s; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0vuPa8g6qdfYLi9TWfbMzFoijdNfJC6/a0uGfIj6fOr+z1fJlOsM1DhKaEaSkNeI0ClKjLx9648CfMl02TxViTvG1Ne2sDsFvGc53NzEd65I2BsPuLpBsHo5zXbZ1ZvLhFm+iOjXlPnD1WlOeQuDhFdIdR+1lWt5aExNwBvIqBr+nYfJt094h9fUwXxMpJ+75GtBdAo3j2nOlWlZtCkWnDmCsXd0j6nNrHz0fO8VqCcJmQsP1ThUgBlO7T3L4PiVg1yHbDpKyTgVb6zHpYt/cXiKmIxVn6nQoDxL9ZfQ2EmVi7hUfMcSoFpWdIpYuOnMmPgPk47J+YZjv4N2X6UpSQIDAQAB&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are numerous switches that can be applied to a DKIM record. The ones we see here are:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DKIM record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DKIM1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| t &lt;br /&gt;
|| &amp;lt;code&amp;gt;t=s&amp;lt;/code&amp;gt; || Alignment / Testing || Recommended&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| k &lt;br /&gt;
|| &amp;lt;code&amp;gt;k=rsa&amp;lt;/code&amp;gt; || Key type || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;pre&amp;gt;p=LONG KEY&amp;lt;/pre&amp;gt; &lt;br /&gt;
|| Public key || Required&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The long key (p-switch) is the public key that matches the private key on the signing server. This key can be obtained from your [[ISP]]/[[ESP]] or your mail server administrator.&lt;br /&gt;
&lt;br /&gt;
The minimum length for DKIM keys is 1024 bit. The minimum recommended length for DKIM keys is 2048 bit.&lt;br /&gt;
&lt;br /&gt;
Once a message has been received, the DKIM signature can be found in the [[E-Mail header]] and it looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=email.example.com;&lt;br /&gt;
	s=reykjavik; t=1117574938; i=@email.example.com;&lt;br /&gt;
	bh=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=;&lt;br /&gt;
	h=To:Message-ID:Date:Content-Type:Subject:From:List-Unsubscribe:&lt;br /&gt;
	 From:To:Cc:Subject;&lt;br /&gt;
	b=nXiJoG9QuMwPyLsCw0yCx2bCd92K89bGgOb/nUsFpUuHvRfM9M1QnQaPdTaJu7pBm&lt;br /&gt;
	 2Yl7xHdSqXj6cU2Y2MoDeFgBkFpSa14ZiByX7VwPq8eGiNzB2580l52LtBeVxKtWrH&lt;br /&gt;
	 By9oU96j4h7bMxRgYvTe/r7dWaHbGaIwMwNc4eXa=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The meaning of the individual switches we see in the example is as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DKIM header switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| a &lt;br /&gt;
|| &amp;lt;code&amp;gt;a=rsa-sha256&amp;lt;/code&amp;gt; || Key type / Signing algorithm|| Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| c &lt;br /&gt;
|| &amp;lt;code&amp;gt;c=relaxed/relaxed&amp;lt;/code&amp;gt; || Canonicalization algorithm(s) for header and body || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| d &lt;br /&gt;
|| &amp;lt;code&amp;gt;d=email.example.com&amp;lt;/code&amp;gt; || Signing Domain Identifier (SDID) || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| s &lt;br /&gt;
|| &amp;lt;code&amp;gt;s=reykjavik&amp;lt;/code&amp;gt; || Selector || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| t &lt;br /&gt;
|| &amp;lt;code&amp;gt;t=1117574938&amp;lt;/code&amp;gt; || Timestamp || Recommended&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| i &lt;br /&gt;
|| &amp;lt;code&amp;gt;i=@email.example.com&amp;lt;/code&amp;gt; || Sending domain (AUID) || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| bh &lt;br /&gt;
|| &amp;lt;code&amp;gt;bh=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=&amp;lt;/code&amp;gt; || Body hash || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| h &lt;br /&gt;
|| &amp;lt;pre&amp;gt;h=To:Message-ID:Date:Content-Type:Subject:From:List-Unsubscribe:&lt;br /&gt;
 From:To:Cc:Subject;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|| list of header fields that have been signed || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| b &lt;br /&gt;
|| &amp;lt;pre&amp;gt;b=nXiJoG9QuMwPyLsCw0yCx2bCd92K89bGgOb/nUsFpUuHvRfM9M1QnQaPdTaJu7pBm&lt;br /&gt;
 2Yl7xHdSqXj6cU2Y2MoDeFgBkFpSa14ZiByX7VwPq8eGiNzB2580l52LtBeVxKtWrH&lt;br /&gt;
 By9oU96j4h7bMxRgYvTe/r7dWaHbGaIwMwNc4eXa=&amp;lt;/pre&amp;gt; &lt;br /&gt;
|| Signature of headers and body || Required&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Alignment=&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
DKIM is aligned when the sender domain matches the signing domain. In correct phrasing: when the RFC5322.From domain (also &amp;quot;Agent or User Identifier&amp;quot;), represented in the i-switch, matches the &amp;quot;Signing Domain Identifier&amp;quot;, represented in the d-switch.&lt;br /&gt;
&lt;br /&gt;
=Double DKIM=&lt;br /&gt;
&#039;&#039;Main article: [[Double DKIM]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=DKIM in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DKIM record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/domainchecker.php domainchecker] to check your DKIM record.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://www.rfc-editor.org/rfc/rfc6376.html RFC 6376]&lt;br /&gt;
* [https://www.rfc-editor.org/rfc/rfc8301.html RFC 8301]&lt;br /&gt;
* [https://www.rfc-editor.org/rfc/rfc8463.html RFC 8463]&lt;br /&gt;
* https://www.mailhardener.com/kb/how-to-use-dkim-with-ed25519&lt;br /&gt;
* [https://app.inboxsys.com/domainchecker.php Domainchecker]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sender_Policy_Framework_(SPF)&amp;diff=364</id>
		<title>Sender Policy Framework (SPF)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sender_Policy_Framework_(SPF)&amp;diff=364"/>
		<updated>2025-02-01T03:44:18Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&#039;&#039;&#039;SPF (Sender Policy Framework)&#039;&#039;&#039; is an E-Mail domain [[:Category:Authentication|authentication]] method, designed to protect E-Mail sender domains ([[RFC5321.MailFrom]]) from forgery (spoofing). SPF is defined as a &amp;quot;proposed standard&amp;quot; in [https://www.rfc-editor.org/rfc/rfc7208.html RFC 7208]. SPF is required for [[DMARC]] and it&#039;s the base for [[SenderID]].&lt;br /&gt;
&lt;br /&gt;
=Functionality=&lt;br /&gt;
&lt;br /&gt;
An SPF record is a [[DNS]] TXT record that defines which IPs are allowed to send with the domain in question. An example of a very simple SPF record is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
example.com descriptive text &amp;quot;v=spf1 ip4:1.2.3.4 ip4:4.3.2.0/24 -all&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the domain &amp;quot;example.com&amp;quot; is strictly and only allowed to send from IP &#039;&#039;1.2.3.4&#039;&#039; or from the [[CIDR]] network &#039;&#039;4.3.2.0/24&#039;&#039; (4.3.2.1 - 4.3.2.254). This example-record consists of 3 parts:&lt;br /&gt;
&lt;br /&gt;
# Version (v=spf1)&lt;br /&gt;
# Method (ip4:1.2.3.4 ip4:4.3.2.0/24)&lt;br /&gt;
# Policy qualifier (-all)&lt;br /&gt;
&lt;br /&gt;
==Version==&lt;br /&gt;
&lt;br /&gt;
Since SenderID is deprecated, there is only one SPF version: spf1. &lt;br /&gt;
&lt;br /&gt;
==Method==&lt;br /&gt;
&lt;br /&gt;
SPF offers 8 mechanisms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ SPF methods&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| A &lt;br /&gt;
|| &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; || Matches the domain&#039;s A-record.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| All&lt;br /&gt;
|| &amp;lt;code&amp;gt;ALL&amp;lt;/code&amp;gt; || Matches always. This mechanism is rarely used.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| EXISTS&lt;br /&gt;
|| &amp;lt;code&amp;gt;exists:example.com&amp;lt;/code&amp;gt; || Matches the IP behind the domain. Can be used with [https://www.jamieweb.net/blog/using-spf-macros-to-solve-the-operational-challenges-of-spf/ SPF macro language] and is rarely used.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| IP4 &lt;br /&gt;
|| &amp;lt;code&amp;gt;ip4:4.3.2.0/24&amp;lt;/code&amp;gt; || Includes IPv4 addresses.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| IP6 &lt;br /&gt;
|| &amp;lt;code&amp;gt;ip6:2001:db8:a::123/64&amp;lt;/code&amp;gt; || Includes IPv6 addresses.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| INCLUDE &lt;br /&gt;
|| &amp;lt;code&amp;gt;include:subdomain.example.com&amp;lt;/code&amp;gt; || Include the results of the SPF record of another domain.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| MX &lt;br /&gt;
|| &amp;lt;code&amp;gt;MX&amp;lt;/code&amp;gt; || Matches all IPs in the domain&#039;s [[MX-Record|MX-record]].&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| PTR &lt;br /&gt;
|| &amp;lt;code&amp;gt;PTR&amp;lt;/code&amp;gt; || Matches only if the reverse DNS (PTR) for the client&#039;s address is in the domain in question and the PTR record resolves back to the domain&#039;s A or AAAA record. Should be avoided!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy qualifier==&lt;br /&gt;
&lt;br /&gt;
The policy qualifier defines what to do when all previous methods fail. The following qualifiers are available:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ SPF policy qualifiers&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Name&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| +all &lt;br /&gt;
|| PASS || SPF returns PASS, even if it fails. This renders SPF obsolete and is not considered valid by all [[ISP]]s.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ?all &lt;br /&gt;
|| NEUTRAL || SPF returns NEUTRAL, even if it fails.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ~all &lt;br /&gt;
|| SOFTFAIL || SPF returns SOFTFAIL when it fails.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| -all &lt;br /&gt;
|| FAIL || SPF returns FAIL when it fails. Can break things when using [[mailing lists]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Forwarding an E-Mail with the RFC5321.MailFrom unchanged, but from a different IP, breaks SPF authentication. For this reason &#039;&#039;~all&#039;&#039; is sometimes preferred over &#039;&#039;-all&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=Alignment=&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
SPF aligns when the RFC5321.MailFrom domain matches the [[RFC5322.From]] domain. In laymen terms: When the envelope-from domain matches the sender domain.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=SPF in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your SPF record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/domainchecker.php domainchecker] to check your SPF record.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://www.rfc-editor.org/rfc/rfc7208.html RFC 7208]&lt;br /&gt;
* [https://app.inboxsys.com/domainchecker.php Domainchecker]&lt;br /&gt;
* [[wikipedia:Sender_Policy_Framework]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sender_Policy_Framework_(SPF)&amp;diff=363</id>
		<title>Sender Policy Framework (SPF)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sender_Policy_Framework_(SPF)&amp;diff=363"/>
		<updated>2025-02-01T03:44:05Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&#039;&#039;&#039;SPF (Sender Policy Framework)&#039;&#039;&#039; is an E-Mail domain [[:Category:Authentication|authentication]] method, designed to protect E-Mail sender domains ([[RFC5321.MailFrom]]) from forgery (spoofing). SPF is defined as a &amp;quot;proposed standard&amp;quot; in [https://www.rfc-editor.org/rfc/rfc7208.html RFC 7208]. SPF is required for [[DMARC]] and it&#039;s the base for [[SenderID]].&lt;br /&gt;
&lt;br /&gt;
=Functionality=&lt;br /&gt;
&lt;br /&gt;
An SPF record is a [[DNS]] TXT record that defines which IPs are allowed to send with the domain in question. An example of a very simple SPF record is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
example.com descriptive text &amp;quot;v=spf1 ip4:1.2.3.4 ip4:4.3.2.0/24 -all&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the domain &amp;quot;example.com&amp;quot; is strictly and only allowed to send from IP &#039;&#039;1.2.3.4&#039;&#039; or from the [[CIDR]] network &#039;&#039;4.3.2.0/24&#039;&#039; (4.3.2.1 - 4.3.2.254). This example-record consists of 3 parts:&lt;br /&gt;
&lt;br /&gt;
# Version (v=spf1)&lt;br /&gt;
# Method (ip4:1.2.3.4 ip4:4.3.2.0/24)&lt;br /&gt;
# Policy qualifier (-all)&lt;br /&gt;
&lt;br /&gt;
==Version==&lt;br /&gt;
&lt;br /&gt;
Since SenderID is deprecated, there is only one SPF version: spf1. &lt;br /&gt;
&lt;br /&gt;
==Method==&lt;br /&gt;
&lt;br /&gt;
SPF offers 8 mechanisms:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ SPF methods&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| A &lt;br /&gt;
|| &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; || Matches the domain&#039;s A-record.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| All&lt;br /&gt;
|| &amp;lt;code&amp;gt;ALL&amp;lt;/code&amp;gt; || Matches always. This mechanism is rarely used.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| EXISTS&lt;br /&gt;
|| &amp;lt;code&amp;gt;exists:example.com&amp;lt;/code&amp;gt; || Matches the IP behind the domain. Can be used with [https://www.jamieweb.net/blog/using-spf-macros-to-solve-the-operational-challenges-of-spf/ SPF macro language] and is rarely used.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| IP4 &lt;br /&gt;
|| &amp;lt;code&amp;gt;ip4:4.3.2.0/24&amp;lt;/code&amp;gt; || Includes IPv4 addresses.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| IP6 &lt;br /&gt;
|| &amp;lt;code&amp;gt;ip6:2001:db8:a::123/64&amp;lt;/code&amp;gt; || Includes IPv6 addresses.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| INCLUDE &lt;br /&gt;
|| &amp;lt;code&amp;gt;include:subdomain.example.com&amp;lt;/code&amp;gt; || Include the results of the SPF record of another domain.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| MX &lt;br /&gt;
|| &amp;lt;code&amp;gt;MX&amp;lt;/code&amp;gt; || Matches all IPs in the domain&#039;s [[MX-Record|MX-record]].&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| PTR &lt;br /&gt;
|| &amp;lt;code&amp;gt;PTR&amp;lt;/code&amp;gt; || Matches only if the reverse DNS (PTR) for the client&#039;s address is in the domain in question and the PTR record resolves back to the domain&#039;s A or AAAA record. Should be avoided!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy qualifier==&lt;br /&gt;
&lt;br /&gt;
The policy qualifier defines what to do when all previous methods fail. The following qualifiers are available:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ SPF policy qualifiers&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Name&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| +all &lt;br /&gt;
|| PASS || SPF returns PASS, even if it fails. This renders SPF obsolete and is not considered valid by all [[ISP]]s.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ?all &lt;br /&gt;
|| NEUTRAL || SPF returns NEUTRAL, even if it fails.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ~all &lt;br /&gt;
|| SOFTFAIL || SPF returns SOFTFAIL when it fails.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| -all &lt;br /&gt;
|| FAIL || SPF returns FAIL when it fails. Can break things when using [[mailing lists]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Forwarding an E-Mail with the RFC5321.MailFrom unchanged, but from a different IP, breaks SPF authentication. For this reason &#039;&#039;~all&#039;&#039; is sometimes preferred over &#039;&#039;-all&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=Alignment=&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
SPF aligns when the RFC5321.MailFrom domain matches the [[RFC5322.From]] domain. In laymen terms: When the envelope-from domain matches the sender domain.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=SPF in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your SPF record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/domainchecker.php domainchecker] to check your SPF record.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://www.rfc-editor.org/rfc/rfc7208.html RFC 7208]&lt;br /&gt;
* [https://app.inboxsys.com/domainchecker.php domainchecker]&lt;br /&gt;
* [[wikipedia:Sender_Policy_Framework]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=362</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=362"/>
		<updated>2025-02-01T03:43:19Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Brand Indicators for Message Identification (BIMI)=&lt;br /&gt;
&#039;&#039;Main article: [[Brand_Indicators_for_Message_Identification_(BIMI)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
DMARC=pass with a policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot; is a prerequisite for BIMI to work.&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]]. Optionally, you can use the [https://app.inboxsys.com/domainchecker.php domainchecker] to check your DMARC record.&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [[TLSRPT]]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [https://app.inboxsys.com/domainchecker.php domainchecker]&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=361</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=361"/>
		<updated>2025-02-01T03:32:51Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=360</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=360"/>
		<updated>2025-02-01T03:30:47Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=359</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=359"/>
		<updated>2025-02-01T03:19:31Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=358</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=358"/>
		<updated>2025-02-01T03:17:40Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS Record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI Logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI Certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organisation name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI Adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=357</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=357"/>
		<updated>2025-02-01T03:17:22Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS Record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI Logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record should comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI Certificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organization name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI Adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=356</id>
		<title>Brand Indicators for Message Identification (BIMI)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Brand_Indicators_for_Message_Identification_(BIMI)&amp;diff=356"/>
		<updated>2025-02-01T02:59:40Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Created page with &amp;quot;Category:InboxSys Category:Deliverability Category:Authentication Category:Reputation  &amp;#039;&amp;#039;&amp;#039;Brand Indicators for Message Identification&amp;#039;&amp;#039;&amp;#039;, or &amp;#039;&amp;#039;&amp;#039;BIMI&amp;#039;&amp;#039;&amp;#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].  =Prerequisites=  BIMI requires a valid and passing DMARC record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;qu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reputation]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Brand Indicators for Message Identification&#039;&#039;&#039;, or &#039;&#039;&#039;BIMI&#039;&#039;&#039;, is a specification allowing for the display of brand logos in the inbox. BIMI is currently an RFC [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ draft].&lt;br /&gt;
&lt;br /&gt;
=Prerequisites=&lt;br /&gt;
&lt;br /&gt;
BIMI requires a valid and passing [[DMARC]] record, with the policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
=DNS Record=&lt;br /&gt;
&lt;br /&gt;
A BIMI DNS record is set on a subdomain named &#039;&#039;&#039;default._bimi&#039;&#039;&#039;. It contains the following elements:&lt;br /&gt;
&lt;br /&gt;
* A BIMI version (Currently only &#039;&#039;&#039;BIMI1&#039;&#039;&#039; is available).&lt;br /&gt;
* A link to a BIMI &#039;&#039;&#039;logo&#039;&#039;&#039;.&lt;br /&gt;
* Optional: A link to a BIMI certificate (&#039;&#039;&#039;VMC&#039;&#039;&#039; or &#039;&#039;&#039;CMC&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
BIMI DNS records looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BIMI Logo==&lt;br /&gt;
&lt;br /&gt;
The logo that&#039;s included in the &amp;quot;v&amp;quot;-switch of the BIMI DNS record must comply to the folowing: &lt;br /&gt;
&lt;br /&gt;
* It must be in [[wikipedia:SVG_Tiny_P/S|SVG (Tiny P/S)]] format.&lt;br /&gt;
* The &amp;quot;version&amp;quot; attribute must be set to &amp;quot;1.2&amp;quot;&lt;br /&gt;
* A &amp;lt;title&amp;gt; element must be included that reflects the company name.&lt;br /&gt;
* A &amp;lt;desc&amp;gt; (i.e. the &amp;quot;description&amp;quot;) element is not required, but this should be included to support accessibility.&lt;br /&gt;
* The image must be sqare. Length and width should have the same value.&lt;br /&gt;
* The image size shouldn&#039;t exceed 32 Kb.&lt;br /&gt;
* No external links or references (other than to the specified XML namespaces) should be included.&lt;br /&gt;
* No scripts, animation, or other interactive elements should be included.&lt;br /&gt;
* No &amp;quot;x=&amp;quot; or &amp;quot;y=&amp;quot; attributes should be included within the &amp;lt;svg&amp;gt; root element.&lt;br /&gt;
* The image should not have a transparent background.&lt;br /&gt;
&lt;br /&gt;
==BIMI Cerificate==&lt;br /&gt;
&lt;br /&gt;
The optional BIMI certificate is used to digitally sign the logo and the [[RFC5322.From|senderdomain]]. It contains other elements, such as an organization name, a list of domains signed by this certificate and an expiration date. There are 2 types of certificate: &#039;&#039;&#039;VMC&#039;&#039;&#039; and &#039;&#039;&#039;CMC&#039;&#039;&#039;. CMC certificates are slightly less expensive than VMC certificates. They are issued by certification authorities (Entrust or DigiCert) recognized by the [https://bimigroup.org/ BIMI Working Group]. &lt;br /&gt;
&lt;br /&gt;
It is [https://community.letsencrypt.org/t/verified-mark-certificates/176835 not possible to create valid VMC or CMC certificates] with a free service such as [https://letsencrypt.org Letsencrypt].&lt;br /&gt;
&lt;br /&gt;
===Difference between VMC and CMC certificates===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ VMC vs. CMC&lt;br /&gt;
! Requirement !! VMC !! CMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Trademark Registration&lt;br /&gt;
| Yes&lt;br /&gt;
| No &lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Logo in use&lt;br /&gt;
| Can be used immediately&lt;br /&gt;
| Must have been in use since 1 year&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=BIMI Adoption by ISPs=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Email clients supporting BIMI&lt;br /&gt;
! Client !! VMC !! CMC !! Self-Asserted !! Comment&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AOL / Yahoo!&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Only for bulk messages from high-reputation domains&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Apple Mail&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Unknown&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Fastmail&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| Gmail&lt;br /&gt;
| Yes&lt;br /&gt;
| Yes&lt;br /&gt;
| No&lt;br /&gt;
| Only VMC certificates get a blue checkmark.&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| La Poste&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Yes&lt;br /&gt;
| Domains without VMCs must be submitted and manually verified by La Poste.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://datatracker.ietf.org/doc/draft-brand-indicators-for-message-identification/ BIMI draft]&lt;br /&gt;
* [[wikipedia:Brand_Indicators_for_Message_Identification]]&lt;br /&gt;
* [https://bimigroup.org/creating-bimi-svg-logo-files/ Creating BIMI svg logo files]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=355</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=355"/>
		<updated>2025-02-01T00:42:41Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Brand Indicators for Message Identification (BIMI)=&lt;br /&gt;
&#039;&#039;Main article: [[Brand_Indicators_for_Message_Identification_(BIMI)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
DMARC=pass with a policy set to either &amp;quot;reject&amp;quot; or &amp;quot;quarantine&amp;quot; is a prerequisite for BIMI to work.&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]].&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [[TLSRPT]]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Category:Authentication&amp;diff=354</id>
		<title>Category:Authentication</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Category:Authentication&amp;diff=354"/>
		<updated>2025-02-01T00:40:15Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
&amp;lt;strong&amp;gt;E-Mail Authentication&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With E-Mail Authentication we refer to:&lt;br /&gt;
&lt;br /&gt;
* [[SPF]]&lt;br /&gt;
* [[DKIM]]&lt;br /&gt;
* [[DMARC]]&lt;br /&gt;
&lt;br /&gt;
=Authentication results in InboxSys=&lt;br /&gt;
&lt;br /&gt;
The Authentication results section shows the following items:&lt;br /&gt;
&lt;br /&gt;
* [[MX-Record]]&lt;br /&gt;
* SPF&lt;br /&gt;
* [[SPF identifier alignment]]&lt;br /&gt;
* DKIM&lt;br /&gt;
* [[DKIM identifier alignment]]&lt;br /&gt;
* DMARC&lt;br /&gt;
* [[BIMI]]&lt;br /&gt;
&lt;br /&gt;
=E-Mail From-addresses explained=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ From-address naming table&lt;br /&gt;
|-&lt;br /&gt;
! Postal Letter !! Email Part !! Precise Term !! Loose phrasing&lt;br /&gt;
|-&lt;br /&gt;
| Sender on envelope || Message Envelope || [https://tools.ietf.org/html/rfc5321 RFC5321].MailFrom || Bounce address / Returnpath / Envelope-From&lt;br /&gt;
|-&lt;br /&gt;
| Addressee on envelope || Message Envelope || RFC5321.RcptTo || Recipient&lt;br /&gt;
|-&lt;br /&gt;
| Sender on letter || Message Header || [https://tools.ietf.org/html/rfc5322 RFC5322].From || Sender address / From:-Header&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ ECO whitepaper]: E-Mail authentication for senders&lt;br /&gt;
* [https://international.eco.de/download/209121/ ECO whitepaper]: E-Mail authentication for recipients&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=BIMI&amp;diff=353</id>
		<title>BIMI</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=BIMI&amp;diff=353"/>
		<updated>2025-02-01T00:38:34Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Redirected page to Brand Indicators for Message Identification (BIMI)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Brand_Indicators_for_Message_Identification_(BIMI)]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain_Name_System_(DNS)&amp;diff=352</id>
		<title>Domain Name System (DNS)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain_Name_System_(DNS)&amp;diff=352"/>
		<updated>2025-02-01T00:36:01Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
The &#039;&#039;&#039;Domain Name System&#039;&#039;&#039; is a naming system for the internet. It was originally invented to assign names to IPs, because names are more easy to remember than the numbers in IP addresses. meanwhile, DNS has more purposes than to translate names in numbers only. &lt;br /&gt;
&lt;br /&gt;
=Hierarchy=&lt;br /&gt;
&lt;br /&gt;
DNS is a hierarchical system. On top of the hierarchy-stryucture of a domain name is the &#039;&#039;&#039;[[wikipedia:DNS_root_zone|toplevel domain (TLD)]]&#039;&#039;&#039;. Examples of toplevel domains are &amp;quot;[[wikipedia:.com|com]]&amp;quot;, &amp;quot;[[wikipedia:.net|net]]&amp;quot;, &amp;quot;[[wikipedia:.org|org]]&amp;quot;, &amp;quot;[[wikipedia:.nl|nl]]&amp;quot;, &amp;quot;[[wikipedia:.berlin|berlin]]&amp;quot; and many more. TLDs are provided by [[wikipedia:Internet_Assigned_Numbers_Authority|IANA]].&lt;br /&gt;
&lt;br /&gt;
In the example &amp;quot;example.com&amp;quot;, &amp;quot;com&amp;quot; is the toplevel domain and &amp;quot;example&amp;quot; is the &#039;&#039;&#039;second level domain (SLD)&#039;&#039;&#039; or &#039;&#039;&#039;public suffix domain (PSD)&#039;&#039;&#039;. The PSD is also called &amp;quot;&#039;&#039;&#039;organisational domain&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
SLD and PSD are not exactly the same thing, because some toplevel domains have a second-level domain included in their hierarchy. One famous example is &amp;quot;[[wikipedia:.uk#Second-level_domains|co.uk]]&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
* In &amp;quot;example.co.uk&amp;quot;, &amp;quot;[[wikipedia:.uk|uk]]&amp;quot; is the TLD, &amp;quot;co&amp;quot; is the SLD and &amp;quot;example&amp;quot; is the PSD.&lt;br /&gt;
* In &amp;quot;example.com&amp;quot;, the TLD is &amp;quot;com&amp;quot; and &amp;quot;example&amp;quot; is the SLD/PSD.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;responsible domain&#039;&#039;&#039; is the domain that&#039;s on top of a zone. Any responsible domain can have almost infinite subdomains. In our example &amp;quot;sub.example.com&amp;quot;, &amp;quot;example.com&amp;quot; is the responsible domain and &amp;quot;sub&amp;quot; is the subdomain. In &amp;quot;sub1.sub2.sub3.example.com&amp;quot;, &amp;quot;example.com&amp;quot; is the responsible domain for all subdomain levels. However, if I create a separate zone for &amp;quot;sub.example.com&amp;quot;, then &amp;quot;sub.example.com&amp;quot; is a responsible domain on top of it&#039;s own hierarchy (see also [[#Domain delegation]]).&lt;br /&gt;
&lt;br /&gt;
=Record types=&lt;br /&gt;
&lt;br /&gt;
There are various [[wikipedia:List_of_DNS_record_types|types of records]] with a variety of functions. The most important ones are:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DNS Record Types&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Purpose !! Lookup result example&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| A &lt;br /&gt;
|| Assigns an IPv4 address to a name || &amp;lt;pre&amp;gt;$ host -t a example.com&lt;br /&gt;
example.com has address 192.168.10.34&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| AAAA &lt;br /&gt;
|| Assigns an IPv6 address to a name || &amp;lt;pre&amp;gt;host -t aaaa example.com&lt;br /&gt;
example.com has IPv6 address fe80::1ff:fe23:4567:890a&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| MX &lt;br /&gt;
|| Assigns mail-receiving hostnames with priorities to a name || &amp;lt;pre&amp;gt;$ host -t mx example.com&lt;br /&gt;
example.com mail is handled by 10 mx2.example.com.&lt;br /&gt;
example.com mail is handled by 5 mx1.example.com.&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| CNAME &lt;br /&gt;
|| Causes this domain to be an alias of another domain || &amp;lt;pre&amp;gt;$ host -t cname aliasdomain.example.net&lt;br /&gt;
aliasdomain.example.net is an alias for example.com.&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| TXT &lt;br /&gt;
|| Holds a piece of text || &amp;lt;pre&amp;gt;$ host -t txt example.com&lt;br /&gt;
example.com descriptive text &amp;quot;lorem ipsum&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| PTR &lt;br /&gt;
|| Reverse DNS assigns a name to an IP || &amp;lt;pre&amp;gt;$ host -t ptr 192.168.10.34&lt;br /&gt;
34.10.168.192.in-addr.arpa domain name pointer example.com.&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| NS &lt;br /&gt;
|| Delegates a subdomain to one or more nameservers || &amp;lt;pre&amp;gt;$ host -t ns example.com&lt;br /&gt;
example.com name server dns2.example.net.&lt;br /&gt;
example.com name server dns1.example.net.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==A- and AAAA-Record==&lt;br /&gt;
&lt;br /&gt;
Those two record types assign IPs to domain names. For example, if my domain name is &amp;quot;example.com&amp;quot; and my website is hosted at &amp;quot;192.168.10.34&amp;quot;, I need to set an A-Record with the content &amp;quot;192.168.10.34&amp;quot; on &amp;quot;example.com&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==MX-Record==&lt;br /&gt;
&lt;br /&gt;
MX Records assign mail servers (MTAs) to a domain. MX records consist of a domain name and a priority:&lt;br /&gt;
&lt;br /&gt;
* The domain name should contain an A and/or AAAA record with the IP address of the MTA.&lt;br /&gt;
* The priority is used to prioritise one MTA over another. In the above example, &amp;quot;mx1.example.com&amp;quot; has the lowest priority (5) and will be tried first. Only if &amp;quot;mx1.example.com&amp;quot; is unavailable, &amp;quot;mx2.example.com&amp;quot; is used. When multiple domains in an MX record have the same priority, a random choice is made (round robin).&lt;br /&gt;
&lt;br /&gt;
==CNAME Record==&lt;br /&gt;
&lt;br /&gt;
CNAME records are aliases. Let&#039;s stick with the example from the above table and &amp;quot;aliasdomain.example.net&amp;quot; is an alias of &amp;quot;example.com&amp;quot;, as you can see from the CNAME record. If we now first query the A-Records and then the MX records for &amp;quot;aliasdomain.example.net&amp;quot;, this will be the output:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host aliasdomain.example.net&lt;br /&gt;
aliasdomain.example.net is an alias for example.com.&lt;br /&gt;
example.com has address 192.168.10.34&lt;br /&gt;
example.com has IPv6 address fe80::1ff:fe23:4567:890a&lt;br /&gt;
&lt;br /&gt;
$ host -t mx aliasdomain.example.net&lt;br /&gt;
aliasdomain.example.net is an alias for example.com.&lt;br /&gt;
example.com mail is handled by 10 mx2.example.com.&lt;br /&gt;
example.com mail is handled by 5 mx1.example.com.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A CNAME record ona domain renders A-, MX- and TXT-records on the same domain invalid. In fact, it&#039;s recommended to remove all other records once a CNAME record is available.&lt;br /&gt;
&lt;br /&gt;
Common use cases for CNAME records are:&lt;br /&gt;
&lt;br /&gt;
* [[Link- and Imagedomain tracking]]&lt;br /&gt;
* [[DKIM key rotation]]&lt;br /&gt;
&lt;br /&gt;
In both use cases, [[Domain Delegation‏‎|domain delegation]] could offer a much better solution. &lt;br /&gt;
&lt;br /&gt;
==TXT Record==&lt;br /&gt;
&lt;br /&gt;
TXT records are records that can hold various pieces of text. The most common use case is for domain verification, whereby a provider provides a code and when this code is later found in a DNS TXT record, domain ownership has been verified. Common use cases in E-Mail are:&lt;br /&gt;
&lt;br /&gt;
===SPF records===&lt;br /&gt;
&#039;&#039;Main article: [[Sender Policy Framework (SPF)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _spf.example.com&lt;br /&gt;
_spf.example.com descriptive text &amp;quot;v=spf1 ip4:192.168.10.34 ip6:fe80::1ff:fe23:4567:890a ~all&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===DKIM records===&lt;br /&gt;
&#039;&#039;Main article: [[DomainKeys Identified Mail (DKIM)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
host -t txt selector._domainkey.example.com&lt;br /&gt;
selector._domainkey.example.com descriptive text &amp;quot;v=DKIM1; t=s; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0vuPa8g6qdfYLi9TWfbMzFoijdNfJC6/a0uGfIj6fOr+z1fJlOsM1DhKaEaSkNeI0ClKjLx9648CfMl02TxViTvG1Ne2sDsFvGc53NzEd65I2BsPuLpBsHo5zXbZ1ZvLhFm+iOjXlPnD1WlOeQuDhFdIdR+1lWt5aExNwBvIqBr+nYfJt094h9fUwXxMpJ+75GtBdAo3j2nOlWlZtCkWnDmCsXd0j6nNrHz0fO8VqCcJmQsP1ThUgBlO7T3L4PiVg1yHbDpKyTgVb6zHpYt/cXiKmIxVn6nQoDxL9ZfQ2EmVi7hUfMcSoFpWdIpYuOnMmPgPk47J+YZjv4N2X6UpSQIDAQAB&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===DMARC records===&lt;br /&gt;
&#039;&#039;Main article: [[Domain-based Message Authentication, Reporting, and Conformance (DMARC)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.example.com&lt;br /&gt;
_dmarc.example.com descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===BIMI records===&lt;br /&gt;
&#039;&#039;Main article: [[Brand Indicators for Message Identification (BIMI)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt default._bimi.example.com&lt;br /&gt;
default._bimi.example.com descriptive text &amp;quot;v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/image/certificate.pem;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==PTR Record==&lt;br /&gt;
&lt;br /&gt;
The reverse lookup is meant to find a name to an IP, instead of the other way around. Because it&#039;s not possible to create a DNS zone with an IP, an alias (canonical name) is used for each IP. This alias always has the TLD &amp;quot;arpa&amp;quot;, which is reserved for this purpose. IPv4 uses &amp;quot;in-addr.arpa&amp;quot; and IPv6 uses &amp;quot;ip6.arpa&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Each sending IP should resolve recursively to a domain. This domain is the &amp;quot;hostname&amp;quot;. Each hostname should resolve to an IP. This IP should be the same sending IP we started from. &lt;br /&gt;
&lt;br /&gt;
Example from Gmail with sending IP &#039;&#039;2a00:1450:4864:20::632&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t ptr 2a00:1450:4864:20::632&lt;br /&gt;
2.3.6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.ip6.arpa domain name pointer mail-ej1-x632.google.com.&lt;br /&gt;
&lt;br /&gt;
$ host -t aaaa mail-ej1-x632.google.com&lt;br /&gt;
mail-ej1-x632.google.com has IPv6 address 2a00:1450:4864:20::632&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==NS Record==&lt;br /&gt;
&lt;br /&gt;
Nameserver records are found on responsible domains. They define which nameserver stores the zone file with resource records for this domain. &lt;br /&gt;
&lt;br /&gt;
=Domain delegation=&lt;br /&gt;
&lt;br /&gt;
If you create an NS record for a subdomain, this subdomain now is responsible for it&#039;s own zone, on top of it&#039;s own hierarchy. What used to be a subdomain, is now a responsible domain. &lt;br /&gt;
&lt;br /&gt;
Because of that, with DNS delegation it&#039;s possible for - for example - Jake&#039;s nameservers (dns[1|2].example.com) to host the zone for &amp;quot;example.com&amp;quot;, while Andrew&#039;s nameservers (dns[1|2].example.net) host the zone for &amp;quot;sub.example.com&amp;quot;. While Jake still owns &amp;quot;example.com&amp;quot; and all its subdomains, Andrew is now the only person who can set resource records for the subdomain &amp;quot;sub.example.com&amp;quot;, until Jake revokes the delegation by removing the NS records from the subdomain.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [[wikipedia:Domain_Name_System]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=351</id>
		<title>Sending a message to the seedlist</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Sending_a_message_to_the_seedlist&amp;diff=351"/>
		<updated>2024-11-28T16:32:48Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:E-Mail_analysis]]&lt;br /&gt;
[[Category:Seeds]]&lt;br /&gt;
&amp;lt;strong&amp;gt;Sending a message to the seedlist&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Campaigns are analysed in [[:Category:InboxSys|InboxSys]] app by sending them to a [[:Category:Seeds|seedlist]]. This list consists of 2 parts:&lt;br /&gt;
&lt;br /&gt;
* The trigger - this is an address ending with @app.inboxsys.com.&lt;br /&gt;
* The [[:Category:Reputation|ISP]] seeds - those are the ISP seeds that are sent to Gmail, Outlook.com, Yahoo, Orange.fr and many others.&lt;br /&gt;
&lt;br /&gt;
=Seedlist=&lt;br /&gt;
&lt;br /&gt;
You can find your personal seedlist in your InboxSys account by clicking on the cogwheels icon in the far right top.&lt;br /&gt;
&lt;br /&gt;
The ISP seeds are showing in the &amp;quot;Inbox Delivery&amp;quot;-section on the individual campaign results. This section shows if the seeds have arrived to the inbox, the [[wikipedia:Email_spam|spam]]-folder, or somewhere else. For all mails received, it is possible to show full mail headers.&lt;br /&gt;
&lt;br /&gt;
In case you would like to test delivery to any ISP not on the list, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
Messages to the trigger address are the messages that get actually [[:Category:E-Mail_analysis|analysed]]. &lt;br /&gt;
* A message that is not sent to the trigger address, will not be displayed in InboxSys at all. &lt;br /&gt;
* Messages sent to the trigger address only will arrive, but show all ISP seeds as &amp;quot;missing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Messages to the seedlist should be sent as list - in single messages. Adding seeds to CC or BCC will distort the final analysis. If you don&#039;t have access to an ESP, you can use [https://support.microsoft.com/en-us/office/use-mail-merge-for-bulk-email-letters-labels-and-envelopes-f488ed5b-b849-4c11-9cff-932c49474705 Mail Merge for Microsoft] or [https://addons.thunderbird.net/en-US/thunderbird/addon/mail-merge/ Mail Merge for Thunderbird] to simulate list-sending.&lt;br /&gt;
&lt;br /&gt;
=Methods of matching triggers to ISP-seeds=&lt;br /&gt;
&lt;br /&gt;
By default, seeds are matched based on the sender address &#039;&#039;and&#039;&#039;  [[subject]]line, it is important that all subjectlines are exactly the same. If [[personalisation]] on the subjectline is being used, personalization variables for each address in the seedlist should have the same content.&lt;br /&gt;
&lt;br /&gt;
In case your test messages have different sender addresses and/or subject line, you can choose to set a specific X-Header in order to invoke a different method of matching. Available X-Headers/methods are: &lt;br /&gt;
&lt;br /&gt;
==X-Campaign-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
Each time you press &amp;quot;send to list&amp;quot;, it&#039;s a new &amp;quot;campaign&amp;quot;. The X-Campaign-ID contains a unique identifier for a single campaign. Let&#039;s say, the campaign ID is &amp;quot;12345678-a&amp;quot;. In that case, the X-Campaign-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-Campaign-ID: &amp;lt;12345678-a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Because the campaign ID alone doesn&#039;t allow us to match to a specific user account reliably, it&#039;s required the campaign has at least one more identifier. This can be the sender address &#039;&#039;or&#039;&#039; the subject. One of both is sufficient, it doesn&#039;t matter which one.&lt;br /&gt;
&lt;br /&gt;
==X-InboxSys-ID (BETA)==&lt;br /&gt;
&lt;br /&gt;
The X-InboxSys-ID allows you to send your user-ID along with your campaign ID. This way, the campaign can be directly matched to your user account and no further identifiers are required. In this example, those are your user IDs:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Account name!!Account ID&lt;br /&gt;
|-&lt;br /&gt;
|main_account||1234&lt;br /&gt;
|-&lt;br /&gt;
|sub_account||1235&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, for example, the trigger of your seedlist is sub_account@app.inboxsys.com and your unique campaign ID is &amp;quot;12345678-b&amp;quot;. In that case, your X-InboxSys-ID should look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X-InboxSys-ID: &amp;lt;1235_12345678-b&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as your campaign ID is unique, this matches both your user account and the campaign in question. In this case, no further matching is required. Subject, sender and content can be entirely different.&lt;br /&gt;
&lt;br /&gt;
=InboxSys trigger seed unsubscribes=&lt;br /&gt;
&lt;br /&gt;
InboxSys calls the headers of all links in all seeds, in order to test if links work. InboxSys is not calling the &#039;&#039;body&#039;&#039; of that link! If this little check unsubscribes immediately, that indicates a few severe flaws in the unsubscribe mechanism.&lt;br /&gt;
&lt;br /&gt;
First of all, no-one uses a single-click [[unsubscribe]] in the bottom of an E-Mail. It&#039;s legally allowed to use a dual-click unsubscribe, so that is the common standard. When you click on an unsusbscribe link, the landing page should show a confirmation dialog. Otherwise, you get bot-unsubscribes! That is basically what we have here: a bot-unsubscribe.&lt;br /&gt;
&lt;br /&gt;
Secondly, we are calling the header of the page, but not the body. Even if there is no dialog, calling the header should only send back header information, but not execute actions that are typically taken &#039;&#039;after&#039;&#039; the &#039;&#039;full page&#039;&#039; has loaded.&lt;br /&gt;
&lt;br /&gt;
An immediate unsubscribe upon only calling the header of a page looks symptomatic to a [[List-Unsubscribe]] link. LU have opposite requirements and best practices from standard unsubscribe links. InboxSys never calls a List-Unsubscribe link, for this exact, obvious reason.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting unsubscribes==&lt;br /&gt;
&lt;br /&gt;
* Check your logs to see the reason for the unsubscription&lt;br /&gt;
* Request Information from your ESP to explain why this has happened&lt;br /&gt;
* InboxSys can assist to converse with ESP to see if their approach can be changed&lt;br /&gt;
* Ensure the InboxSys trigger seed is safe-listed&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://inboxsys.com/what-is-a-seed-list/ Blog article on seedlists]&lt;br /&gt;
* [https://app.inboxsys.com/login.php InboxSys login]&lt;br /&gt;
* [https://app.inboxsys.com/login.php?showform=createaccount InboxSys registration]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=350</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=350"/>
		<updated>2024-11-01T20:52:45Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
&lt;br /&gt;
TLSRPT is used to send back feedback reports about TLS connections made while sending E-Mail. It&#039;s used to gain insight on the implementation of [[MTA-STS]] and or [[DANE]]. In praxis, many reporting organisations require a valid MTA-STS policy (&amp;quot;testing&amp;quot;, &amp;quot;enforce&amp;quot; or &amp;quot;none&amp;quot;), before any reports are sent.&lt;br /&gt;
&lt;br /&gt;
MTA-STS was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461], which states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
 &lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=349</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=349"/>
		<updated>2024-11-01T20:52:27Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
&lt;br /&gt;
TLSRPT is used to send back feedback reports about TLS connections made while sending E-Mail. It&#039;s used to gain insight on the implementation of [[MTA-STS]] and or [[DANE]]. In praxis, many reporting organisations require a valid MTA-STS policy (&amp;quot;testing&amp;quot;, &amp;quot;enforce&amp;quot; or &amp;quot;none&amp;quot;), before any reports are sent.&lt;br /&gt;
&lt;br /&gt;
MTA-STS was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461], which states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot DANE.&lt;br /&gt;
 &lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=348</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=348"/>
		<updated>2024-11-01T20:52:10Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
&lt;br /&gt;
TLSRPT is used to send back feedback reports about TLS connections made while sending E-Mail. It&#039;s used to gain insight on the implementation of [[MTA-STS]] and or [[DANE]]. In praxis, many reporting organisations require a valid MTA-STS policy (&amp;quot;testing&amp;quot;, &amp;quot;enforce&amp;quot; or &amp;quot;none&amp;quot;), before any reports are sent.&lt;br /&gt;
&lt;br /&gt;
MTA-STS was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461], which states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
 &lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=347</id>
		<title>MTA-STS</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=MTA-STS&amp;diff=347"/>
		<updated>2024-11-01T20:45:36Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Created page with &amp;quot;Category:Deliverability Category:Authentication  In modern E-Mail communication, Opportunistic TLS is common. This means that TLS encryption for the transition of E-Mail is negotiated by MTAs on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted.   MTA-STS was introduced in [https://tools.ietf.org/h...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
MTA-STS was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to secure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails.&lt;br /&gt;
&lt;br /&gt;
=Configuration and setup=&lt;br /&gt;
&lt;br /&gt;
MTA-STS is set up on a so-called &amp;quot;policy domain&amp;quot;. This is the domain that holds the policy. Each [[RFC5322.From]] domain should have it&#039;s own MTA-STS policy configuration. Subdomains don&#039;t automatically inherit MTA-STS settings. &lt;br /&gt;
&lt;br /&gt;
MTA-STS consists of two components:&lt;br /&gt;
&lt;br /&gt;
* Policy file&lt;br /&gt;
* DNS record&lt;br /&gt;
&lt;br /&gt;
==Policy file==&lt;br /&gt;
&lt;br /&gt;
The policy file is stored on a webhost in the &amp;quot;.well-known&amp;quot; webdirectory with a subdomain of the policy domain named &amp;quot;mta-sts&amp;quot; and the filename named &amp;quot;mta-sts.txt&amp;quot;. It must be reachable from outside and contain the following keys: &lt;br /&gt;
&lt;br /&gt;
* version: This is the mta-sts version used. Currently, &amp;quot;STSv1&amp;quot; is the only valid value.&lt;br /&gt;
* mode: This can be either&lt;br /&gt;
** testing: Testing mode,&lt;br /&gt;
** enforce: Enforced TLS, or&lt;br /&gt;
** none: MTA-STS is disabled. May be useful to receive TLSRPT reports only.&lt;br /&gt;
* mx: Each MX has its own line.&lt;br /&gt;
* max_age: Should not exceed 31557600 (~1 year).&lt;br /&gt;
&lt;br /&gt;
For example, the policy domain for policydomain.TLD is located at https://mta-sts.policydomain.TLD/.well-known/mta-sts.txt and contains the following text: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
version: STSv1&lt;br /&gt;
mode: enforce&lt;br /&gt;
mx: mta1.policydomain.TLD&lt;br /&gt;
mx: mta2.policydomain.TLD&lt;br /&gt;
max_age: 86400&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==DNS record==&lt;br /&gt;
&lt;br /&gt;
In order to tell the world that a particular domain is an MTA-STS policy domain, it&#039;s required to create another subdomain with a TXT record present. The subdomain is &amp;quot;_mta-sts&amp;quot; and the TXT record syntax has two switches: &lt;br /&gt;
&lt;br /&gt;
* v: For &amp;quot;version&amp;quot;. This is exactly the same key/value pair as in the policy file. &amp;quot;STSv1&amp;quot; currently is the only valid value.&lt;br /&gt;
* id: A unique and incremental number, indicating the version update of the policy. This number should be changed each time the policy file is modified. It&#039;s recommended to use a generic value, such as date and time. &lt;br /&gt;
&lt;br /&gt;
For example, policy domain &amp;quot;policydomain.TLD&amp;quot; could have the following DNS TXT MTA-STS record: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
_mta-sts.policydomain.TLD. IN TXT &amp;quot;v=STSv1; id=202403010850;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TLS reporting=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[TLSRPT]]&lt;br /&gt;
&lt;br /&gt;
RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLS reporting (TLSRPT)&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=346</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=346"/>
		<updated>2024-11-01T19:53:59Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]]. Unfortunately, without a valid MTA-STS policy (&amp;quot;testing&amp;quot;, &amp;quot;enforce&amp;quot; or &amp;quot;none&amp;quot;), most reporting organisations don&#039;t send reports at all.&lt;br /&gt;
 &lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=345</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=345"/>
		<updated>2024-11-01T19:42:10Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=SSL/TLS&amp;diff=344</id>
		<title>SSL/TLS</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=SSL/TLS&amp;diff=344"/>
		<updated>2024-10-10T16:20:15Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Redirected page to TLS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=343</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=343"/>
		<updated>2024-10-08T22:29:58Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that [[TLS]] encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, DNSSEC, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain_and_IP_settings&amp;diff=342</id>
		<title>Domain and IP settings</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain_and_IP_settings&amp;diff=342"/>
		<updated>2024-10-07T18:49:43Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:IP monitor]]&lt;br /&gt;
&amp;lt;strong&amp;gt;How to configure domains and IPs in InboxSys&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Domain settings&amp;quot; in InboxSys are used to:&lt;br /&gt;
&lt;br /&gt;
* Configure the [[domainchecker]]&lt;br /&gt;
* [[:Category:IP_monitor|Monitor IPs]]&lt;br /&gt;
* Set an [[SNDS]] API Key&lt;br /&gt;
&lt;br /&gt;
Domain settings are found by clicking the cogwheels in the far right top, selecting &amp;quot;account settings&amp;quot; and &amp;quot;Domain settings&amp;quot;. The form shown has 3 sections with the following options:&lt;br /&gt;
&lt;br /&gt;
# Link domain template&lt;br /&gt;
## Cname&lt;br /&gt;
# Sender domain template&lt;br /&gt;
## [[MX-Record|MX-record]]&lt;br /&gt;
## Default [[SPF]] / [[SenderID]] record&lt;br /&gt;
## Alternative SPF /SenderID record&lt;br /&gt;
## Default [[DKIM]] [[DomainKeys_Identified_Mail_(DKIM)#Selector|selector]]&lt;br /&gt;
## Default DKIM key&lt;br /&gt;
## Alternative DKIM selector&lt;br /&gt;
## Alternative DKIM key&lt;br /&gt;
# Formatting&lt;br /&gt;
&lt;br /&gt;
=Template system=&lt;br /&gt;
&lt;br /&gt;
The dropdown menus for linkdomains and senderdomains how all link- and senderdomains that can be found in the messages in your account. Picking an option from the linkdomain template automatically changes the CNAME field to show the setting from the selected domain. Picking an option from the senderdomain template automatically changes the MX, default SPF, alternative SPF, default DKIM Key and default DKIM selector fields to show the settings from the selected domain. The alternative DKIM key and the alternative DKIM selector remain unchanged.&lt;br /&gt;
&lt;br /&gt;
The template system is the way to configure all fields at once, especially when you are unsure what to set. However, it is only possible to use the template system after you have [[Sending_a_message_to_the_seedlist|received one or more campaigns to the seedlist trigger address]].&lt;br /&gt;
&lt;br /&gt;
=Cname=&lt;br /&gt;
&lt;br /&gt;
Cname&#039;s are used for link redirection. All CNAME records that should be considered &amp;quot;correct&amp;quot; by the domainchecker can be entered in this field, separated by pipes.&lt;br /&gt;
&lt;br /&gt;
Example: 2 domains are used for redirection across all messages: &#039;&#039;&#039;link.example.com&#039;&#039;&#039; and &#039;&#039;&#039;image.example.com&#039;&#039;&#039;. The following lookups apply:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t cname link.example.com&lt;br /&gt;
link.example.com is an alias for example.org.&lt;br /&gt;
&lt;br /&gt;
$ host -t cname image.example.com&lt;br /&gt;
image.example.com is an alias for example.net.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this constellation, the correct setting to put in this field is: &amp;quot;&#039;&#039;&#039;example.org|example.net&#039;&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=MX record=&lt;br /&gt;
&lt;br /&gt;
All MX records that should be considered &amp;quot;correct&amp;quot; by the domainchecker can be entered in this field, separated by pipes.&lt;br /&gt;
&lt;br /&gt;
=SPF / SenderID (default and alternative)=&lt;br /&gt;
[[File:ip2cidr1.png|thumb|Converting an IP range starting with 1]]&lt;br /&gt;
&lt;br /&gt;
All IP networks that should be considered &amp;quot;correct&amp;quot; by the domainchecker when checking for SPF or SenderID can be entered in this field, separated by pipes.&lt;br /&gt;
&lt;br /&gt;
Example: Mail is primarilly sent from IPS A. Some streams go out via ISP B and rarely, Mails are being sent out from the local infrastructure. ESP A allows sending via the networks 127.0.0.0/24, 127.0.1.0/23 and 127.0.3.0/24. ESP B is allows sending via the networks 127.1.0.0/24 and 127.1.1.0/24 and the IP for the local infrastructure is 127.5.5.123. We want to set IPs fom ESP A as default and all other IPs as alternative. The correct settings are:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Default SPF: 127.0.0.0/24|127.0.1.0/23|127.0.3.0/24&lt;br /&gt;
&lt;br /&gt;
Alternative SPF: 127.1.0.0/24|127.1.1.0/24|127.5.5.123/32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Adding multiple IPs to the IP monitor==&lt;br /&gt;
[[File:Ip2cidr2.png|thumb|Converting an IP range starting with 0]]&lt;br /&gt;
&lt;br /&gt;
IPs can be added individually or in correct [[CIDR]] ranges. CIDR stands for &amp;quot;Classless Inter-Domain Routing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* A /24 CIDR range starts from 0 in the fourth octet (class D as in A.B.C.D) and has 255 wildcard bits (Mask: 255.255.255.0).&lt;br /&gt;
* A /32 range is a single address with 0 wildcard bits (Mask: 255.255.255.255).&lt;br /&gt;
* The /0 range holds all IPs worldwide (that&#039;s 4.294.967.296 IPs) it starts from 0.0.0.0, ends with 255.255.255.255 and 255.255.255.255 also covers its wildcard bits (Mask: 0.0.0.0).&lt;br /&gt;
&lt;br /&gt;
Use [https://www.calculator.net/ip-subnet-calculator.html a subnet calculator] to calculate CIDR ranges.&lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
Let&#039;s say, we want to monitor the following list of IPs: &lt;br /&gt;
&lt;br /&gt;
 * 192.168.236.1 to 192.168.236.32&lt;br /&gt;
 * 192.168.236.49 to 192.168.236.50&lt;br /&gt;
 * 192.168.236.65 to 192.168.236.88&lt;br /&gt;
 * 192.168.236.97 to 192.168.236.104&lt;br /&gt;
 * 192.168.236.113 to 192.168.236.114&lt;br /&gt;
 * 192.168.236.129 to 192.168.236.152&lt;br /&gt;
 * 192.168.236.161 to 192.168.236.168&lt;br /&gt;
 * 192.168.236.177&lt;br /&gt;
 * 192.168.236.181&lt;br /&gt;
 * 192.168.236.193 to 192.168.236.200&lt;br /&gt;
 * 192.168.236.209 to 192.168.236.232&lt;br /&gt;
 * 192.168.236.245&lt;br /&gt;
&lt;br /&gt;
Let&#039;s start with the first line. That line contains the first 32 IPs in the /24 CIDR range, which includes 254 IPs. In fact, I found a nice website to help doing so: If you look at [https://ipaddressguide.com/cidr ipaddressguide.com], you can convert an address range to CIDR. I did this with the exact range provided. If I take the result and split the ranges with pipes, the following should be added to InboxSys: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
192.168.236.1/32|192.168.236.2/31|192.168.236.4/30|192.168.236.8/29|192.168.236.16/28|192.168.236.32/32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
However, there is one thing to notice here. CIDR ranges typically start from 0 and not from 1. If we take in the 0, as in the second thumbnail on this page, then this is all we need to add to get the exact same result:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
192.168.236.0/27|192.168.236.32/32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example adds &#039;&#039;&#039;159&#039;&#039;&#039; IPs to the monitor, including the &#039;&#039;&#039;138&#039;&#039;&#039; IPs from the list above:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
192.168.236.0/27|192.168.236.32/32|192.168.236.49/32|192.168.236.50/32|192.168.236.64/27|192.168.236.96/27|192.168.236.113/32|192.168.236.114/32|192.168.236.128/27|192.168.236.161/29|192.168.236.168/32|192.168.236.177/32|192.168.236.181/32|192.168.236.192/29|192.168.236.200/32|192.168.236.208/28|192.168.236.224/29|192.168.236.232/32|192.168.236.245/32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example adds &#039;&#039;&#039;254&#039;&#039;&#039; IPs to the monitor, including the &#039;&#039;&#039;138&#039;&#039;&#039; IPs from the list above. It&#039;s a full /24 CIDR range:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
192.168.236.0/24&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DKIM selector (default and alternative)=&lt;br /&gt;
&lt;br /&gt;
Each DKIM selector field can hold one selector. This way, it is possible to add max. 2 selectors, for the domainchecker to consider &amp;quot;correct&amp;quot; on your domains.&lt;br /&gt;
&lt;br /&gt;
=DKIM key (default and alternative)=&lt;br /&gt;
&lt;br /&gt;
Each DKIM key field can hold one DKIM key. This way, it is possible to add max. 2 public keys, for the domainchecker to consider &amp;quot;correct&amp;quot; when checking DKIM settings on your domains.&lt;br /&gt;
&lt;br /&gt;
=Formatting=&lt;br /&gt;
&lt;br /&gt;
This dropdown menu shows all possible output formats for the copy/paste section in the domainchecker and other query outputs. This feature was designed to paste query results directly from InboxSys in a ticket, formatted according to the ticket system used. In case you need any format which is not in the list, or you need any other help configuring the Domain Settings, please don&#039;t hesitate to create a [https://support.inboxsys.com/login?back_url=https%3A%2F%2Fsupport.inboxsys.com%2Fissues%2Fnew support ticket].&lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* https://www.calculator.net/ip-subnet-calculator.html - a subnet calculator&lt;br /&gt;
* [[wikipedia:Classless_Inter-Domain_Routing]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=341</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=341"/>
		<updated>2024-10-07T16:10:49Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that TLS encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, DNSSEC, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=340</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=340"/>
		<updated>2024-10-07T16:03:07Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that TLS encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connnections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that &amp;lt;q&amp;gt;MTA-STS is intended to be used along with TLSRPT&amp;lt;/q&amp;gt; ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, DNSSEC, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=339</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=339"/>
		<updated>2024-10-07T16:01:11Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that TLS encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement can be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connnections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that _MTA-STS is intended to be used along with TLSRPT_ ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, DNSSEC, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=338</id>
		<title>TLSRPT</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=TLSRPT&amp;diff=338"/>
		<updated>2024-10-07T16:00:34Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: Created page with &amp;quot;Category:Deliverability Category:Reporting In modern E-Mail communication, Opportunistic TLS is common. This means that TLS encryption for the transition of E-Mail is negotiated by MTAs on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement van be reached, mail is transferred unencrypted.   MTA-STS was introduced in [https://tools.ietf.org/html/rf...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
In modern E-Mail communication, [[wikipedia:Opportunistic_TLS|Opportunistic TLS]] is common. This means that TLS encryption for the transition of E-Mail is negotiated by [[MTA]]s on both ends. If two MTAs can agree on a TLS encryption method and cypher, transit proceeds TLS encrypted. If, however, no agreement van be reached, mail is transferred unencrypted. &lt;br /&gt;
&lt;br /&gt;
[[MTA-STS]] was introduced in [https://tools.ietf.org/html/rfc8461 RFC 8461]. It&#039;s main purpose is to assure TLS connnections. MTA-STS compliant Mail is returned to the sender if the TLS negotiation fails. RFC 8461 states that _MTA-STS is intended to be used along with TLSRPT_ ([https://tools.ietf.org/html/rfc8460 RFC 8460]). It doesn&#039;t include the recommendation to send reports, but MTA-STS compliant MTAs should be able to receive and process TLSRPT reports at least.&lt;br /&gt;
&lt;br /&gt;
TLSRPT is also used to monitor and troubleshoot [[DANE]].&lt;br /&gt;
&lt;br /&gt;
=Configuring TLSRPT=&lt;br /&gt;
&lt;br /&gt;
TLSRPT is configured with a DNS record on a specific subdomain of your [[Organisational Domain|organisational domain]], which includes the connection protocol. A TLSRPT record for E-Mail connections looks like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _smtp._tls.senderdomain.TLD&lt;br /&gt;
_smtp._tls.senderdomain.TLD descriptive text &amp;quot;v=TLSRPTv1; rua=mailto:tlsrpt@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reports about successful and failed TLS connections is sent to the address in the rua-switch. TLSRPT reports provide information about: &lt;br /&gt;
&lt;br /&gt;
* Volume / Reporting organisations&lt;br /&gt;
* TLS successes and failures&lt;br /&gt;
* Information about policies used (MTA-STS, TLSA, DANE, DNSSEC, etc.)&lt;br /&gt;
&lt;br /&gt;
=TLS reports with InboxSys=&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for [[DMARC]] and TLSRPT. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8460 RFC 8460]: TLSRPT RFC&lt;br /&gt;
* [https://tools.ietf.org/html/rfc8461 RFC 8461]: MTA-STS RFC&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:Opportunistic_TLS]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=337</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=337"/>
		<updated>2024-10-07T15:04:28Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]].&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [[TLSRPT]]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=336</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=336"/>
		<updated>2024-10-07T15:03:22Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]].&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [TLSRPT]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [https://inboxsys.com/dmarc-monitor/ InboxSys DMARC Monitor]&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=335</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=335"/>
		<updated>2024-10-07T15:01:55Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]].&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document] from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [TLSRPT]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=334</id>
		<title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Domain-based_Message_Authentication,_Reporting,_and_Conformance_(DMARC)&amp;diff=334"/>
		<updated>2024-10-07T15:01:21Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Deliverability]]&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
A &#039;&#039;&#039;DMARC (Domain-based Message Authentication, Reporting, and Conformance)&#039;&#039;&#039; record is a [[DNS]] TXT record for a subdomain named &#039;&#039;_dmarc&#039;&#039; on any senderdomain ([[RFC5322.From]]). [[SPF]] &#039;&#039;or&#039;&#039; [[DKIM]] are requirements. At least one of both methods needs to align for DMARC to pass. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.senderdomain.TLD&lt;br /&gt;
_dmarc.senderdomain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com; rf=afrf; pct=100;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=On which domains to set a DMARC record=&lt;br /&gt;
&lt;br /&gt;
DMARC records can be placed on the [[Organisational Domain|organisational domain]] as well as on subdomains. A subdomain that has no DMARC record inherits its DMARC record from the organisational domain. It is recommended to place a DMARC record on every organisational domain.&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-3.1 RFC7489 Section 3.1] states: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
DMARC authenticates use of the RFC5322.From domain by requiring that&lt;br /&gt;
it match (be aligned with) an Authenticated Identifier. The&lt;br /&gt;
RFC5322.From domain was selected as the central identity of the DMARC&lt;br /&gt;
mechanism because it is a required message header field and therefore&lt;br /&gt;
guaranteed to be present in compliant messages, and most Mail User&lt;br /&gt;
Agents (MUAs) represent the RFC5322.From field as the originator of&lt;br /&gt;
the message and render some or all of this header field&#039;s content to&lt;br /&gt;
end users.&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://tools.ietf.org/html/rfc7489#section-2.2 RFC7489 Section 2.2] mentions to be &amp;quot;out of scope&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
evaluation of anything other than RFC5322.From;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Switches=&lt;br /&gt;
&lt;br /&gt;
Each DMARC record consists of various switches. The most important switches are: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;margin:auto&amp;quot;&lt;br /&gt;
|+ DMARC record switches&lt;br /&gt;
|-&lt;br /&gt;
! Switch !! Example !! Description !! Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| v &lt;br /&gt;
|| &amp;lt;code&amp;gt;v=DMARC1&amp;lt;/code&amp;gt; || Version || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| p &lt;br /&gt;
|| &amp;lt;code&amp;gt;p=reject&amp;lt;/code&amp;gt; || Policy || Required&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rua &lt;br /&gt;
|| &amp;lt;code&amp;gt;rua=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Aggregated reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| ruf &lt;br /&gt;
|| &amp;lt;code&amp;gt;ruf=mailto:dmarc@dmarc.example.com&amp;lt;/code&amp;gt; || Failure / forensic reports || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| adkim &lt;br /&gt;
|| &amp;lt;code&amp;gt;adkim=s&amp;lt;/code&amp;gt; || DKIM alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| aspf &lt;br /&gt;
|| &amp;lt;code&amp;gt;aspf=r&amp;lt;/code&amp;gt; || SPF alignment || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| rf &lt;br /&gt;
|| &amp;lt;code&amp;gt;rf=afrf&amp;lt;/code&amp;gt; || Reporting format || Optional&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| pct &lt;br /&gt;
|| &amp;lt;code&amp;gt;pct=100&amp;lt;/code&amp;gt; || Percentage || Optional&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Policy (p)==&lt;br /&gt;
&lt;br /&gt;
The main purpose for DMARC is to set a policy (p). This policy contains the action that should take place when unauthenticated mail from this domain is received (and in no other case). The options are:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;none&#039;&#039;&#039;: to do nothing when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;quarantine&#039;&#039;&#039;: to put the mail in the [[wikipedia:Email_spam|SPAM]] folder when authentication fails&lt;br /&gt;
* &#039;&#039;&#039;reject&#039;&#039;&#039;: to the message when authentication fails.&lt;br /&gt;
&lt;br /&gt;
Only by using the &#039;&#039;reject&#039;&#039; policy can a domain be fully protected. &amp;quot;&#039;&#039;&#039;Unauthenticated&#039;&#039;&#039;&amp;quot; means, SPF and / or DKIM do not align.&lt;br /&gt;
&lt;br /&gt;
DMARC allows ISPs to rely not only on IP reputation, but also on &#039;&#039;&#039;domain reputation&#039;&#039;&#039;. Especially when sending via shared IPs, a good domain reputation can be helpful in delivering your emails to the right place. Without a DMARC record it is impossible for ISPs to reliably measure reputation for a domain.&lt;br /&gt;
&lt;br /&gt;
It is a common mistake to configure DMARC for reporting (with &amp;quot;p&amp;quot; set to &amp;quot;none&amp;quot; or &amp;quot;quarantine&amp;quot;) and to forget about it afterwards. Loss in reputation comes gradually over time and is often only noticed when it&#039;s already too late. By thumb of fist it takes about as long to fix a broken reputation as it has taken this reputation to break.&lt;br /&gt;
&lt;br /&gt;
==Reporting==&lt;br /&gt;
&lt;br /&gt;
===Aggregated reports (ruf/rua)===&lt;br /&gt;
&lt;br /&gt;
A secondary functionality of DMARC enables ISPs to send reports about the authentication success or failure for a domain. Those reports are sent to the addresses defined in two switches:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;rua&#039;&#039;&#039;: aggregated reports (recommended)&lt;br /&gt;
* &#039;&#039;&#039;ruf&#039;&#039;&#039;: forensic reports (not recommended)&lt;br /&gt;
&lt;br /&gt;
Bot ruf and rua switch should contain a functional &#039;&#039;&#039;mailto-link&#039;&#039;&#039; where failure- and aggregated reports can be sent. It&#039;s important to receive, read and process those reports. The following example configures DMARC for all reporting, but reporting only (test-mode):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=none; rua=mailto:dmarc@dmarc.example.com; ruf=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
DMARC reporting alone - as in the above example - does not provide protection against phishing and consequent loss in reputation. It provides reporting functionality only. Such a setting can be useful when evaluating the impact of switching the policy to reject. It is not useful in protecting your domain.&lt;br /&gt;
&lt;br /&gt;
Once the reports show it&#039;s safe to reject unauthenticated mail, the following example provides full protection: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; rua=mailto:dmarc@dmarc.example.com;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Failure (or forensic) reports (ruf)===&lt;br /&gt;
&lt;br /&gt;
Forensic reports (ruf) are very rare for 2 reasons:&lt;br /&gt;
&lt;br /&gt;
* High volume: failure reports generate a single report for each individual mail that failed authentication.&lt;br /&gt;
* Privacy: Failure Reports are not compliant to GDPR. ARF Reports generally contain personal data, such as IPs.&lt;br /&gt;
&lt;br /&gt;
It is generally recommended to refrain from setting a ruf-switch at all.&lt;br /&gt;
&lt;br /&gt;
==Alignment (adkim/aspf)==&lt;br /&gt;
&#039;&#039;Main article: [[Alignment]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alignment means, domains used for authentication mechanisms match with the sender domain (RFC5321.MailFrom or &amp;quot;returnpath&amp;quot;). DMARC only passes when either SPF identifiers or DKIM align.&lt;br /&gt;
&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;SPF&#039;&#039;&#039; is the [[RFC5321.MailFrom]] domain or &amp;quot;sender domain&amp;quot;. To see SPF identifier aligment, it&#039;s required for the RFC5321.MailFrom domain to match the [[RFC5322.From]] domain.&lt;br /&gt;
* The domain used to authenticate &#039;&#039;&#039;DKIM&#039;&#039;&#039; is the domain used by the sending mail server to sign DKIM. To see DKIM identifier aligment, it&#039;s required for the domain used to sign DKIM to match the RFC5322.From domain.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a DMARC record with aspf and adkim switches set to &amp;quot;strict&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ host -t txt _dmarc.sub.domain.TLD&lt;br /&gt;
_dmarc.sub.domain.TLD descriptive text &amp;quot;v=DMARC1; p=reject; aspf=s; adkim=s;&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;&#039;aspf&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
# &#039;&#039;&#039;adkim&#039;&#039;&#039;: SPF alignment. Options are &amp;quot;&#039;&#039;&#039;s&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;strict&#039;&#039;&#039;&amp;quot; or &amp;quot;&#039;&#039;&#039;r&#039;&#039;&#039;&amp;quot; for &amp;quot;&#039;&#039;&#039;relaxed&#039;&#039;&#039;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Strict&#039;&#039;&#039; alignment means, the matching domains are exactly the same.&lt;br /&gt;
* &#039;&#039;&#039;Relaxed&#039;&#039;&#039; alignment means, the matching domains have a same superior domain. For example, &#039;&#039;mail.example.com&#039;&#039; and &#039;&#039;bounce.example.com&#039;&#039; would align relaxed.&lt;br /&gt;
&lt;br /&gt;
The adkim and aspf switches are optional. The default value for adkim and aspf is &amp;quot;r&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Controversy around SPF=&lt;br /&gt;
&#039;&#039;Main article: [[Controversy around SPF]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=DMARC in InboxSys app=&lt;br /&gt;
&lt;br /&gt;
To check your DMARC record, [[Sending a message to the seedlist|send a message to your seedlist]] and look in the [[:Category:Authentication|authentication]] section of the [[:Category:E-Mail analysis|E-Mail analysis]].&lt;br /&gt;
&lt;br /&gt;
==DMARC reports with InboxSys==&lt;br /&gt;
&lt;br /&gt;
[https://international.eco.de/download/223621/ This document from [https://international.eco.de/ ECO] explains in detail how to monitor DMARC reports with several open source tools. On request, [https://inboxsys.com/dmarc-monitor/ InboxSys hosts a DMARC monitor] consisting of [https://github.com/domainaware/parsedmarc Parsedmarc], [https://github.com/elastic/elasticsearch Elasticsearch] and a [https://github.com/elastic/kibana Kibana] dashboard. The latest version of our hosted Parsedmarc package contains reporting monitors for DMARC and [TLSRPT]. &lt;br /&gt;
&lt;br /&gt;
=Useful links=&lt;br /&gt;
&lt;br /&gt;
* [https://international.eco.de/download/223621/ E-Mail authentication for senders]&lt;br /&gt;
* [https://international.eco.de/download/209121/ E-Mail authentication for recipients]&lt;br /&gt;
* [https://tools.ietf.org/html/rfc7489 RFC 7489]: DMARC RFC&lt;br /&gt;
* [https://dmarc.org/overview/ dmarc.org]: Functionality of DMARC&lt;br /&gt;
* [https://inboxsys.com/authentication-and-alignment/ InboxSys blog]: Authentication and alignment&lt;br /&gt;
* [https://inboxsys.com/dmarc-explained/ InboxSys blog]: DMARC explained&lt;br /&gt;
* [[wikipedia:DMARC]]&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
	<entry>
		<id>https://docs.inboxsys.com/index.php?title=Category:IP_monitor&amp;diff=333</id>
		<title>Category:IP monitor</title>
		<link rel="alternate" type="text/html" href="https://docs.inboxsys.com/index.php?title=Category:IP_monitor&amp;diff=333"/>
		<updated>2024-10-07T14:16:24Z</updated>

		<summary type="html">&lt;p&gt;Sebastian: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:InboxSys]]&lt;br /&gt;
[[Category:Reporting]]&lt;br /&gt;
[[:Category:InboxSys|InboxSys]] monitors IPs on a daily base and stores the results for 30 days. Not only the sending IPs of campaigns that have been sent to the [[:Category:Seeds|seedlist]] are tested, but also the IPs that can be found in the default and alternative IPs in your [[Domain and IP settings]] (account settings -&amp;gt; domain settings).&lt;br /&gt;
&lt;br /&gt;
The folowing items are being monitored:&lt;br /&gt;
&lt;br /&gt;
* PTR consistency&lt;br /&gt;
* Blocklistings&lt;br /&gt;
* Whitelistings&lt;br /&gt;
* SenderScore&lt;br /&gt;
* and if an [[SNDS|SNDS API key is present in account settings]], SNDS results&lt;br /&gt;
&lt;br /&gt;
Clicking on single IPs visualizes the IP history over the past 30 days. The Date-field allows switching the current view to any date in the past 30 days.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;search IPs&amp;quot; field can be used to search for single IPs. /24 Netblocks can be found by searching for the first 3 octetts in an IP address. In addition to that, the &amp;quot;search IPs&amp;quot; field will match non-numeric phrases, such as blacklists or whitelists, as well.&lt;br /&gt;
&lt;br /&gt;
The full list, or the current output, can be exported in CSV.&lt;/div&gt;</summary>
		<author><name>Sebastian</name></author>
	</entry>
</feed>