~ubuntu-branches/ubuntu/dapper/postfix/dapper-security

« back to all changes in this revision

Viewing changes to README_FILES/OVERVIEW

  • Committer: Bazaar Package Importer
  • Author(s): LaMont Jones
  • Date: 2005-12-07 15:39:11 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20051207153911-hutf07z6i8ty25z5
Tags: 2.2.6-1
* New upstream.
  - the *SQL clients did not uniformly choose the database host from
    the available pool
  - raise the "policy violation" flag when a client request exceeds
    a concurrency or rate limit.
  - don't do smtpd_end_of_data_restrictions after the transaction
    failed due to, e.g., a write error.
  - two messages could get the same message ID due to a race
    condition. This time window was increased when queue file creation
    was postponed from MAIL FROM until the first accepted RCPT TO.  The
    window is closed again.
  - the queue manager did not write a per-recipient defer logfile record
    when the delivery agent crashed after the initial handshake with the
    queue manager, and before reporting the delivery status to the queue
    manager.
  - moved code around from one place to another to make REDIRECT, FILTER,
    HOLD and DISCARD access(5) table actions work in
    smtpd_end_of_data_restrictions.  PREPEND will not be fixed; it must
    be specified before the message content is received.
* Updated Italian translations.  Closes: #336925
* Swedish translations.  Closes: #339746
* Switch to libdb4.3.  Closes: #336488
* Add Replaces: mail-transport-agent.  Closes: #325624
* Merge changes from ubuntu.

Show diffs side-by-side

added added

removed removed

Lines of Context:
104
104
 
105
105
  * The queue manager (the qmgr(8) server process in the figure) is the heart
106
106
    of Postfix mail delivery. It contacts the smtp(8), lmtp(8), local(8),
107
 
    virtual(8), pipe(8), or error(8) delivery agents, and sends a delivery
108
 
    request for one or more recipient addresses. The error(8) delivery agent is
109
 
    special: it always declares mail as undeliverable. It is not shown in the
110
 
    figure above.
 
107
    virtual(8), pipe(8), discard(8) or error(8) delivery agents, and sends a
 
108
    delivery request for one or more recipient addresses. The discard(8) and
 
109
    error(8) delivery agents are special: they discard or bounce all mail, and
 
110
    are not shown in the figure above.
111
111
 
112
112
    The queue manager maintains a small active queue with the messages that it
113
113
    has opened for delivery. The active queue acts as a limited window on
168
168
 
169
169
The previous sections gave an overview of how Postfix server processes send and
170
170
receive mail. These server processes rely on other server processes that do
171
 
things behind the scenes. Where practical, each service will be visualized in
 
171
things behind the scenes. The text below attempts to visualize each service in
172
172
its own context. As before, names followed by a number are Postfix commands or
173
173
server programs, while unnumbered names inside shaded areas represent Postfix
174
174
queues.
203
203
 
204
204
       smtpd(8)             qmgr(8)         local(8)
205
205
 
206
 
  * The anvil(8) server implements client connection and rate limiting for all
207
 
    smtpd(8) servers. The TUNING_README document provides guidance for dealing
208
 
    with mis-behaving SMTP clients. The anvil(8) service is not included with
209
 
    Postfix version 2.1 or earlier.
 
206
  * The anvil(8) server implements client connection and request rate limiting
 
207
    for all smtpd(8) servers. The TUNING_README document provides guidance for
 
208
    dealing with mis-behaving SMTP clients. The anvil(8) service is available
 
209
    in Postfix version 2.2 and later.
210
210
 
211
211
    Network -> smtpd(8) <-> anvil(8)
212
212
 
265
265
    processes. This overcomes chroot restrictions, and reduces the number of
266
266
    open lookup tables by sharing one open table among multiple processes.
267
267
 
 
268
  * The scache(8) server maintains the connection cache for the Postfix smtp(8)
 
269
    client. When connection caching is enabled for selected destinations, the
 
270
    smtp(8) client does not disconnect immediately after a mail transaction,
 
271
    but gives the connection to the connection cache server which keeps the
 
272
    connection open for a limited amount of time. The smtp(8) client continues
 
273
    with some other mail delivery request. Meanwhile, any smtp(8) process can
 
274
    ask the scache(8) server for that cached connection and reuse it for mail
 
275
    delivery. As a safety measure, Postfix limits the number of times that a
 
276
    connection may be reused.
 
277
 
 
278
    When delivering mail to a destination with multiple mail servers,
 
279
    connection caching can help to skip over a non-responding server, and thus
 
280
    dramatically speed up delivery.
 
281
 
 
282
    smtp(8)  <-> scache(8)  <-> smtp(8)
 
283
                                    
 
284
 
268
285
  * The showq(8) servers list the Postfix queue status. This is the queue
269
286
    listing service that does the work for the mailq(1) and postqueue(1)
270
287
    commands.
278
295
    error streams. You can find examples of its use in the SMTPD_POLICY_README
279
296
    document.
280
297
 
 
298
  * The tlsmgr(8) server runs when TLS (Transport Layer Security, formerly
 
299
    known as SSL) is turned on in the Postfix smtp(8) client or smtpd(8)
 
300
    server. This process has two duties:
 
301
 
 
302
      o Maintain the pseudo-random number generator (PRNG) that is used to seed
 
303
        the TLS engines in Postfix smtp(8) client or smtpd(8) server processes.
 
304
        The state of this PRNG is periodically saved to a file, and is read
 
305
        when tlsmgr(8) starts up.
 
306
 
 
307
      o Maintain the optional Postfix smtp(8) client or smtpd(8) server caches
 
308
        with TLS session keys. Saved keys can improve performance by reducing
 
309
        the amount of computation at the start of a TLS session.
 
310
 
 
311
    TLS support is available in Postfix version 2.2 and later. Information
 
312
    about the Postfix TLS implementation is in the TLS_README document.
 
313
 
 
314
                        <---seed---            ---seed--->
 
315
    Network-> smtpd(8)              tlsmgr(8)               smtp(8)  ->Network
 
316
                        <-session->            <-session->      
 
317
 
 
318
                                  /       |    \
 
319
                                          |
 
320
                                /                \
 
321
 
 
322
                         smtpd          PRNG        smtp
 
323
                        session        state       session
 
324
                         cache          file        cache
 
325
 
281
326
  * The verify(8) server verifies that a sender or recipient address is
282
327
    deliverable before the smtpd(8) server accepts it. The verify(8) server
283
328
    injects probe messages into the Postfix queue and processes status updates