This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
computing:mailserver [2025/04/23 20:55] – oemb1905 | computing:mailserver [2025/05/15 19:21] (current) – oemb1905 | ||
---|---|---|---|
Line 11: | Line 11: | ||
------------------------------------------- | ------------------------------------------- | ||
- | This tutorial is for users of Debian GNU/Linux who want to set up a proper email server.. This tutorial assumes you know how to set up A, AAAA, SPF, DKIM, DMARC, MX, and PTR records. Set an A record for example.org and mail.example.org. If you don't know how, then learn up, and do not proceed. //Thanks to LinuxBabe for a great jumping off point//. Let's begin by editing our hosts file '' | + | This tutorial is for users of Debian GNU/Linux who want to set up a proper email server.. This tutorial assumes you know how to set up A, AAAA, SPF, DKIM, DMARC, MX, and PTR records. Set an A record for example.org and mail.example.org |
127.0.1.1 example.org example | 127.0.1.1 example.org example | ||
Line 187: | Line 187: | ||
| | ||
| | ||
+ | |||
+ | You also need to make sure that your spf policy is not set to reject emails by default. | ||
+ | |||
+ | nano / | ||
+ | | ||
+ | Make sure that '' | ||
+ | |||
+ | HELO_reject = False | ||
+ | Mail_From_reject = False | ||
Now, it is time to set up DKIM on your server. After creating the DKIM record/key on your server, you will need to create a corresponding TXT record for it to establish that anything over smtp with that signature is, in fact, you/your server. Let's install opendkim with '' | Now, it is time to set up DKIM on your server. After creating the DKIM record/key on your server, you will need to create a corresponding TXT record for it to establish that anything over smtp with that signature is, in fact, you/your server. Let's install opendkim with '' | ||
Line 256: | Line 265: | ||
AuthservID OpenDMARC | AuthservID OpenDMARC | ||
TrustedAuthservIDs mail.yourdomain.com | TrustedAuthservIDs mail.yourdomain.com | ||
- | RejectFailures | + | RejectFailures |
IgnoreAuthenticatedClients true | IgnoreAuthenticatedClients true | ||
RequireHeaders true | RequireHeaders true | ||
Line 479: | Line 488: | ||
nano / | nano / | ||
< | < | ||
+ | |||
+ | To setup autodiscovery, | ||
+ | |||
+ | _imap._tcp | ||
+ | _submission._tcp | ||
+ | _imaps._tcp | ||
+ | _submissions._tcp | ||
+ | _autodiscover._tcp | ||
+ | autodiscover | ||
+ | autodiscover | ||
+ | |||
+ | After that, setup your '' | ||
+ | |||
+ | sudo nano / | ||
| | ||
- | To check record health after you set your DNS records, you can do the following: | + | Inside that file, enter something similar to this entry below, obviously adjusting for your priority, weight, and desired client configuration behavior: |
+ | |||
+ | <?xml version=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Pretty much everything one needs is now setup. | ||
| | ||
dig txt +short _dmarc.jonathanhaack.com | dig txt +short _dmarc.jonathanhaack.com | ||
Line 506: | Line 573: | ||
These tools prove helpful if/when emails get stuck, etc. | These tools prove helpful if/when emails get stuck, etc. | ||
- | --- // | + | --- // |