Hello all,

Some of our advanced users don’t have enough just interacting with the Zentyal interface, and want to go deeper in its entrails, to know the abstracted-out details. In this series of small blog posts I would try to clarify how the different components are interconnected.

plumbing

I want to cover the following sub-systems:

  • Mail (Mail module only version)
  • Mail (Groupware version)
  • Samba4 and Kerberos & how it connects to other sub-systems
  • HTTP proxy

Let’s start with the Mail (Mail module only) and it’s general interconnection map:

(click to enlarge image)

This diagram also includes all the mailfilter capabilities.

Point by point:

A: Postfix is our Mail Transfer Agent, in charge of delivering and accepting mails from other mail servers.

B: The standard entry point for the SMTP protocol, it can support security via STARTTLS. Intended for communication with external MTAs.

C: Same than B, this port is intended for local users delivery.

D: Same than B, but with forced TLS communication.

E: Every time the MTA receives a new message, the associated domain can be checked against the Postgrey database, this mechanism can force retries to deter spamming bots.

F: Dovecot, our Mail Delivery Agent, distributes the mail to the users’ mail boxes.

G: Dovecot is able to accept SIEVE rules (filters, forwards, flags and so on) using this port.

H: SIEVE is sub-systems implementing a scripted language that performs the configured rules over the incoming mail. Take into account that SIEVE rules can, in turn, talk to the MTA to forward a mail again.

I: Your Mail User Agent (mail client) will retrieve the mails from the MDA, using POP, IMAP or their secure versions.

J: Amavis is a security suite that will use other components to filter potentially dangerous mail.

K: Messages are forwarded from the MTA to Amavis, checked, tagged according to their spam status and then returned to Postfix.

L: Amavis uses an unix socket to pass the messages to the ClamAV antivirus for inspection. Infected messages will be stored away in the quarantine folders, thus, they won’t be delivered to their recipients.

M: The Spamassassin suite uses multiple auto-adjusting mechanism to detect unwanted mail.

N: Fetchmail can periodically retrieve mail form external accounts and insert it in our system talking with the MTA.

O: The Webmail service can be deployed to communicate with the MTA and MUA using a webapp.

Hope this had shed some light, the next post will reuse a lot of this concepts.

A post by Mateo Burillo