Tracing a Message Through Postfix
Let’s follow a typical message through the Postfix system.
Figure 3-4, Figure 3-5, and Figure 3-6 illustrate the process
as the message goes from the originating system to a destination MTA,
which, in turn, forwards it to the final MTA, where it is held until the
user is ready to read it. In Figure
3-4, Helene (helene@oreilly.com) wants to
send a message to Frank (frank@postfix.org). Helene
has an account on a system that runs Postfix. Her email client lets her
compose the message, and then it calls the Postfix sendmail command to send it. The Postfix
sendmail command receives the message from Helene’s email software
and deposits it into the maildrop
directory. The pickup
daemon then retrieves the message, performs its sanity
checks, and feeds the message to the cleanup daemon, which performs the final processing on the new
message. If Helene’s email client did not include a From: address, or did not use a
fully-qualified hostname in the address, cleanup makes the necessary fixes to the
message.
![]() |
Once finished, cleanup places
the message into the incoming queue and notifies the queue manager that a new message is ready to be delivered. If the queue manager is ready to process new messages, it moves the message into the active queue. Because this message is destined for a user on an outside system, the queue ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access
