Perfect Email Server Setup - Webmail Tweak Checklist - Avoid Spam

Here is the perfect email setup checklist.

1) rDNS with hostname (By IP address provider)
Also set PTR record to hosting control panel as well as record added in dns servers

2) SPF record

3) DKIM record

4) DMARC record
v=DMARC1; p=reject; sp=reject; pct=100; adkim=r; aspf=r; ruf=mailto:spam-reports@mydomain.com; rua=mailto:stats@mydomain.com

5) MX record

6) SRV records

7) Perfect DNS configured
Check that the pointed nameservers has perfect DNS setup. And your mail server/domain has the perfect DNS setup.
https://dnsviz.net/
https://dnssec-debugger.verisignlabs.com/
https://zonemaster.net/

8) Domain Blocklist
https://check.spamhaus.org

9) IP Blocklist
https://check.spamhaus.org

10) IP reputation
https://www.talosintelligence.com/reputation_center/lookup?search=1.1.1.1

11) Mail access secured

SSL activated for mail, webmail, pop, imap, smtp

12) DNSSEC Signed

13) DANE support
TLSA records for mail services

14) SpamAssassin configured

15) Email Content
HTML format, Alt tag for image, No external image by URL, No broken link, Has List-Unsubscribe header

Test mail at:
https://www.mail-tester.com/
https://aboutmy.email

16) Optional: Use IPv4 only, disable IPv6


DirectAdmin IPv6 Disable Method:

nano /etc/exim.variables.conf.custom

disable_ipv6=true

smtp_banner="Hidden"


Save and exit the file then refresh the conf

da build exim_conf


17) Add One-Click Unsubscribe Header


DirectAdmin Exim;

cp /etc/exim.acl_check_message.pre.conf /etc/exim.acl_check_message.pre.conf.bak

nano /etc/exim.acl_check_message.pre.conf


# RFC 8058 One-Click Unsubscribe Header Implementation

# This adds headers to outgoing emails from authenticated users AND local scripts (e.g., WordPress)

# It will not add headers if they already exist.


warn

    # Condition: Add headers if the email is sent by an authenticated user

    # OR if the email originates from localhost (e.g., PHP mail function, Contact Form 7),

    # AND a List-Unsubscribe header does not already exist.

    condition       = ${if and{{or{{def:authenticated_id}{eq{$sender_host_address}{127.0.0.1}}}}{!def:h_List-Unsubscribe:}}{yes}{no}}


    # Add the mailto unsubscribe link with a subject

    # Note the correct syntax with angle brackets around the URI

    add_header      = List-Unsubscribe: <mailto:unsubscribe@hostdomain.com?subject=Unsubscribe>


    # Add the required header for one-click functionality

    add_header      = List-Unsubscribe-Post: List-Unsubscribe=One-Click



systemctl restart exim


Then, test at https://aboutmy.email

Post a Comment