Setup mail infos

Summary

This setup use OpenSMTPd, Dovecot2, Amavis (embedded Spamassassin) and Clamav.

This have been designed for simple hosting, no virtual, and use PAM / UNIX Users maildir.

This use OpenSMTPd 5.7.3p2 only for now.

Used ports

Software Port Usage Should be public (opened from external)
OpenSMTPd 25 Auth optional, default smtp ports yes
OpenSMTPd 465 Auth required, default smtp ports yes
OpenSMTPd 587 Auth required, default smtp ports yes
OpenSMTPd 10025 Mails from Amavis, tagged Filtered NO
OpenSMTPd 10027 Mails from Amavis, tagged Signed NO
Amavis 10024 Amavis, default path NO
Amavis 10026 Amavis, path for signing with DKIM NO
Dovecot2 993 Imaps yes
Dovecot2 143 Imap(s) yes
Dovecot2 4190 ManageSieve, remote Sieve rules editing yes

Flow

Receiving

  • Email received by OpenSMTPd
  • Email passed to Amavis on port 10024
  • Amavis use embedded spamasassin and call Clamav to check for viruses and spam
  • Amavis transfert back the email to OpenSMTPd on port 10025
  • OpenSMTPd finally transfers the email to Dovecot by socket /var/run/dovecot/lmtp

Sending

  • Email received by OpenSMTPd
  • Email passed to Amavis on port 10026
  • Amavis does signing on the email
  • Amavis transfert back the email to OpenSMTPd on port 10027
  • OpenSMTPd delivers the email

Setup

  • Get the configs here
  • cd setup_mail
  • grep -r your-server.io .
  • edit whatever you need
  • copy configs where needed and start services

Versions used (as now, and packages names for debian 8)

  • amavisd-new 1:2.10.1-2~deb8u1
  • clamav 0.99.2+dfsg-0+deb8u1
  • clamav-daemon 0.99.2+dfsg-0+deb8u1
  • clamav-freshclam 0.99.2+dfsg-0+deb8u1
  • spamassassin 3.4.0-6
  • OpenSMTPd 5.7.3p2 && ./configure --with-pam --with-ca-file=/etc/ssl/certs/ca-certificates.crt
  • DCC (for spamassassin) ; build it yourself
  • See mail logs for parsers managed by amavis, you will need like: p7zip, unrar, cabextract, rpm2cpio, etc.

Notes

  • Edit whitelists and trusted_networks in spamassassin/local.cf