Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #1228 - Separate DNS docs and add notes on MX, FCrDNS/SPF/DKIM/DMARC #1298

Merged
merged 7 commits into from
Mar 25, 2024

Conversation

mxsasha
Copy link
Collaborator

@mxsasha mxsasha commented Feb 28, 2024

No description provided.

@mxsasha mxsasha linked an issue Feb 28, 2024 that may be closed by this pull request
@mxsasha mxsasha requested a review from bwbroersma February 28, 2024 19:31

example.com. TXT "v=spf1 a -all" ; The "a" mechanism is needed for the mail test (see rfc7208, section-2.3).
_domainkey.example.com. TXT "v=DKIM1; p=" ; empty DKIM to score 100% for this non-sending subdomain that does have SPF "a" mechanism which is needed for mail test.
_dmarc.example.com. TXT "v=DMARC1; p=reject; sp=reject;"
Copy link
Collaborator

@bwbroersma bwbroersma Mar 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sp=reject can be removed (since p=reject is already present), is it a best practice to be explicit?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@baknu ?

Copy link
Contributor

@baknu baknu Mar 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it is not needed. However, I believe it is good to be explicit for subdomains here. Also, because someone who sets up their own instance might choose to have a more relaxed general DMARC policy ("quarantine") e.g. when they start sending 'helpdesk mail' from the instance-domain.

For a domain that does not otherwise send email, use:

example.com. TXT "v=spf1 a -all" ; The "a" mechanism is needed for the mail test (see rfc7208, section-2.3).
_domainkey.example.com. TXT "v=DKIM1; p=" ; empty DKIM to score 100% for this non-sending subdomain that does have SPF "a" mechanism which is needed for mail test.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

@baknu baknu Mar 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, although not necessary, we could do so. I will also change this in our own DNS (https://github.com/internetstandards/internet.nl-DNS-zone-file/issues/85).

Note that it is more or less a vanity record to score 100% for the instance-domain in the mailtest itself. (Note that the instance-domain does need the "a" in the SPF record for the working of the mailtest. Therefore, the Internet.nl mailtest does not see the instance-domain as a non-sending domain and requires a DKIM record.)

Furthermore, note that M3AAWG previously promoted *._domainkey for parked domains. However, they have changed their advice into not publishing a DKIM record at all for parked domains. The latter is in line with our own advice (https://internet.nl/mail/example.nl/1176003/#control-panel-9). For the M3AAWG docs see:

@bwbroersma
Copy link
Collaborator

Maybe also add TLSA + CNAME's?

@mxsasha
Copy link
Collaborator Author

mxsasha commented Mar 7, 2024

This now also includes dropping the IPv6 subdomains from the certbot request on batch, consistent with this new documentation. The always present subdomains are now www/nl/en, with more in the single test instance.

@baknu
Copy link
Contributor

baknu commented Mar 7, 2024

Maybe also add TLSA + CNAME's?

Yes, we could do so. We could add the TLSA/DANE values for Lets Encrypt (that we also have in our own DNS zone), but someone could of course choose to use a certificate from a different certificate provider. Furthermore, we could also add CAA.

@mxsasha
Copy link
Collaborator Author

mxsasha commented Mar 7, 2024

Maybe also add TLSA + CNAME's?

Yes, we could do so. We could add the TLSA/DANE values for Lets Encrypt (that we also have in our own DNS zone), but someone could of course choose to use a certificate from a different certificate provider. Furthermore, we could also add CAA.

I do not think our documentation should include specific TLSA values, but only suggest it, like this PR does for CAA now. Otherwise we're just duplicating and it risks getting outdated.

@mxsasha
Copy link
Collaborator Author

mxsasha commented Mar 12, 2024

@bwbroersma @baknu I think the current version of Docker-DNS.md is good - can you check? If it is, then I will update certbot.sh in this PR, and we can update our own zone to match this doc.

baknu added 2 commits March 14, 2024 15:44
Some suggestions, mainly for clarity

Signed-off-by: baknu <[email protected]>
Replaced "internal" and "external" with other more verbose wordings.

Signed-off-by: baknu <[email protected]>
@mxsasha mxsasha added the release blocker Issues that must be resolved before an upcoming version can be released label Mar 19, 2024
@mxsasha mxsasha merged commit 5c40de0 into main Mar 25, 2024
15 checks passed
@mxsasha mxsasha deleted the doc-update branch March 25, 2024 18:37
mxsasha added a commit that referenced this pull request Mar 26, 2024
mxsasha added a commit that referenced this pull request Mar 26, 2024
mxsasha added a commit that referenced this pull request Mar 26, 2024
@mxsasha mxsasha mentioned this pull request Jul 24, 2024
@mxsasha mxsasha mentioned this pull request Nov 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release blocker Issues that must be resolved before an upcoming version can be released
Development

Successfully merging this pull request may close these issues.

Add note on working MX, FCrDNS and SPF+DKIM+DMARC to documentation
3 participants