[SLE] Delayed delivery from postfix to cyrus

From: Thorsten BŁker (thorsten_at_bueker.net)
Date: 10/29/03

  • Next message: Ain Vagula: "Re: [SLE] java very slow on 9.0"
    Date: Wed, 29 Oct 2003 19:02:27 +0100
    To: suse-linux-e@suse.com
    
    

    Hi all,

    During the last days our local mailserver suddenly started to behave
    strangly, as incoming mails aren't delivered. Googling around the whole
    days unfortunately didn't lead to any solution. Any help from your side
    is appreciated!
    I have sent this mail to suse-imap-e@suse.com, too. People receiving it
    twice might discard on version, thanks! ;-)

    The configuration is quite simple: postfix -> cyrus. Used packages are
    postfix-2.0.6-14, cyrus-imapd-2.1.12-34, cyrus-sasl2-2.1.12-31,
    db-4.0.14-249 and the box is based on SuSE 8.2.

    As postfix and cyrus were started after executing the the backup script
    (like every night before), the next incoming mail was bounced due to
    relay while delivering to cyrus.

    Oct 26 02:17:01 mail postfix/pipe[23046]: 57230A800D: EB378A8011:
    to=<user@domain.de>, orig_to=<userorig@domain.de>, relay=cyrus,
    delay=1002, status=bounced (Command time limit exceeded:
    "/usr/lib/cyrus/bin/deliver")

    During the following days some mails were bounced, some others were
    queued but not bounced, and some others were delivered:

    Oct 28 02:33:25 mail postfix/pipe[449]: EA3D6A800E: to=<user@domain.de>,
    orig_to=user@domain.de>, relay=cyrus, delay=1998, status=sent
    (mail.domain.de)

    Restarting postfix, cyrus and saslauthd (and cleaning the queue manually
    by postqueue -f) temporarily fixed the problem, the delay decreased to a
    usual amount of 1 or 2 seconds.

    Nevertheless each restart of cyrus leaves the following logs in
    /var/log/warn:

    Oct 29 16:55:37 mail master[1718]: setrlimit: Unable to set file
    descriptors limit to -1: Operation not permitted Oct 29 16:55:37 mail
    master[1718]: retrying with 1024 (current max) Oct 29 16:55:49 mail
    tls_prune[2082]: DBERROR db4: 4 lockers

    In several postings this message were estimated to be of cosmetic
    character, is this right?

    Without any logical scheme the following entry as produced by cyrus:

    Oct 29 16:17:15 mail deliver[858]: connect(/var/lib/imap/socket/lmtp)
    failed: Connection refused

    This occurs both while booting the machine as starting cyrus manually,
    but I don't recognize any scheme. I thought about wrong permissions of
    /var/lib/imap/socket/lmtp, but they seem to be correct:

    mail:~ # ls -al /var/lib/imap/socket/
    total 8
    drwxr-xr-x 2 cyrus mail 4096 Oct 29 16:55 .
    drwxr-xr-x 12 cyrus mail 4096 Oct 29 20:25 ..
    -rw------- 1 cyrus mail 0 Oct 2 05:40 imap.lock
    srwxrwxrwx 1 root root 0 Oct 29 16:55 lmtp
    -rw------- 1 cyrus mail 0 Oct 2 06:59 lmtpunix.lock
    -rw------- 1 cyrus mail 0 Oct 4 02:16 sieve.lock

    mail:~ # ls -al /var/lib/imap/
    total 84
    drwxr-xr-x 12 cyrus mail 4096 Oct 29 20:25 .
    drwxr-xr-x 19 root root 4096 Oct 2 11:00 ..
    drwxr-x--- 2 cyrus mail 4096 Oct 29 16:55 db
    drwx------ 2 cyrus mail 4096 Oct 29 20:25 db.backup1
    drwx------ 2 cyrus mail 4096 Oct 29 19:55 db.backup2
    -rw------- 1 cyrus mail 24576 Oct 29 20:25 deliver.db
    drwxr-x--- 3 cyrus mail 4096 Oct 2 05:36 deliverdb
    drwxr-x--- 2 cyrus mail 4096 Mar 28 2003 log
    -rw------- 1 cyrus mail 3728 Oct 29 16:55 mailboxes.db
    drwxr-x--- 2 cyrus mail 4096 Mar 28 2003 msg
    drwxr-x--- 2 cyrus mail 4096 Oct 29 20:26 proc
    drwxr-x--- 28 cyrus mail 4096 Oct 2 05:36 quota
    drwxr-xr-x 2 cyrus mail 4096 Oct 29 16:55 socket
    -rw------- 1 cyrus mail 8192 Oct 29 16:55 tls_sessions.db
    drwxr-x--- 28 cyrus mail 4096 Oct 2 05:36 user

    Using a valid shell for user postfix I can even connect via lmtp:

    mail:~ # su - postfix -c "/usr/lib/cyrus/bin/deliver -l;"
    220 mail LMTP Cyrus v2.1.12 ready

    Do you have any idea, why the transport of messages from postfix to
    cyrus is delayed and the incoming mails are bounced in consequence? As
    already mentioned this behaviour started without any changes to the
    configuration (running without problems before).

    See several configuration-files below.

    Thanks a lot in advance,
      Thorsten

    ~~~~~~~~ /etc/cyrus.conf ~~~~~~~~

    START {
      recover cmd="ctl_cyrusdb -r"
    }

    SERVICES {
      imap cmd="imapd" listen="imap" prefork=0
      pop3 cmd="pop3d" listen="pop3" prefork=0
      sieve cmd="timsieved" listen="sieve" prefork=0
      lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=0
    }

    EVENTS {
      checkpoint cmd="ctl_cyrusdb -c" period=30
      delprune cmd="ctl_deliver -E 3" period=1440
      tlsprune cmd="tls_prune" period=1440
    }

    ~~~~~~~~ /etc/cyrus.conf ~~~~~~~~

    ~~~~~~~~ /etc/imapd.conf ~~~~~~~~

    configdirectory: /var/lib/imap
    partition-default: /var/spool/imap
    admins: cyrus root
    allowanonymouslogin: no
    autocreatequota: 100000
    reject8bit: no
    quotawarn: 90
    timeout: 480

    sasl_pwcheck_method: saslauthd
    sasl_mech_list: PLAIN
    saslauth_method: shadow

    virtdomains: 1

    ~~~~~~~~ /etc/imapd.conf ~~~~~~~~

    ~~~~~~~~ postconf -n ~~~~~~~~

    alias_database = hash:/etc/aliases
    alias_maps = hash:/etc/aliases
    body_checks = pcre:/etc/postfix/body_checks
    canonical_maps = hash:/etc/postfix/canonical
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    content_filter =
    daemon_directory = /usr/lib/postfix
    debug_peer_level = 2
    default_destination_concurrency_limit = 10
    default_privs = nobody
    defer_transports =
    disable_dns_lookups = no
    header_checks = pcre:/etc/postfix/header_checks
    inet_interfaces = all
    local_destination_concurrency_limit = 2
    mail_owner = postfix
    mail_spool_directory = /var/mail
    mailbox_command = /usr/lib/cyrus/bin/deliver
    mailbox_size_limit = 51200000
    mailbox_transport = cyrus
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/share/man
    masquerade_classes = envelope_sender, header_sender, header_recipient
    masquerade_domains =
    masquerade_exceptions = root
    message_size_limit = 10240000
    mime_header_checks = regexp:/etc/postfix/mime_header_checks
    mydestination = $myhostname, localhost.$mydomain,
    /etc/postfix/localdomains mydomain = mail.domain.de myhostname =
    mail.domain.de mynetworks = aaa.bbb.ccc.ddd/29, eee.fff.ggg.hhh/27
    myorigin = $mydomain newaliases_path = /usr/bin/newaliases
    program_directory = /usr/lib/postfix queue_directory =
    /var/spool/postfix readme_directory =
    /usr/share/doc/packages/postfix/README_FILES
    relayhost =
    relocated_maps = hash:/etc/postfix/relocated
    sample_directory = /usr/share/doc/packages/postfix/samples
    sender_canonical_maps = hash:/etc/postfix/sender_canonical
    sendmail_path = /usr/sbin/sendmail
    setgid_group = maildrop
    smtp_sasl_auth_enable = no
    smtpd_banner = $myhostname ESMTP
    smtpd_client_restrictions = reject_rbl_client bl.spamcop.net,
    reject_rbl_client sbl.spamhaus.org, reject_rbl_client relays.ordb.org
    smtpd_helo_required = no smtpd_helo_restrictions =
    smtpd_recipient_restrictions = permit_sasl_authenticated,
    permit_mynetworks, reject_non_fqdn_sender, reject_non_fqdn_recipient,
    reject_non_fqdn_hostname, reject_unknown_recipient_domain,
    reject_invalid_hostname, reject_unknown_hostname,
    reject_unknown_sender_domain, reject_rbl_client, permit_mx_backup,
    reject_unauth_destination smtpd_sasl_auth_enable = no
    smtpd_sender_restrictions = hash:/etc/postfix/access smtpd_use_tls = no
    strict_rfc821_envelopes = no transport_maps =
    hash:/etc/postfix/transport unknown_local_recipient_reject_code = 550

    ~~~~~~~~ postconf -n ~~~~~~~~

    ~~~~~~~~ /etc/postfix/master.cf ~~~~~~~~

    #
    ========================================================================
    ==
    # service type private unpriv chroot wakeup maxproc command + args
    # (yes) (yes) (yes) (never) (100)
    #
    ========================================================================
    ==
    smtp inet n - n - - smtpd
    pickup fifo n - n 60 1 pickup
    cleanup unix n - n - 0 cleanup
    qmgr fifo n - n 300 1 qmgr
    rewrite unix - - n - - trivial-rewrite
    bounce unix - - n - 0 bounce
    defer unix - - n - 0 bounce
    flush unix n - n 1000? 0 flush
    proxymap unix - - n - - proxymap
    smtp unix - - n - - smtp
    relay unix - - n - - smtp
    showq unix n - n - - showq
    error unix - - n - - error
    local unix - n n - - local
    virtual unix - n n - - virtual
    lmtp unix - - n - - lmtp

    maildrop unix - n n - - pipe
      flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
    cyrus unix - n n - - pipe
      user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m
    ${extension} ${user}
    uucp unix - n n - - pipe
      flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail
    ($recipient)
    ifmail unix - n n - - pipe
      flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
    bsmtp unix - n n - - pipe
      flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop
    $recipient
    vscan unix - n n - 10 pipe
      user=vscan argv=/usr/sbin/amavis ${sender} ${recipient}
    procmail unix - n n - - pipe
      flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc
    ${sender} ${recipient}

    ~~~~~~~~ /etc/postfix/master.cf ~~~~~~~~

    -- 
      Thorsten BŁker   * Bšrenstr. 19-21 / WG 3106 * 52064 Aachen
    Tel 0241 - 8865315 *    Mobil 0163 - 2572057   * http://bueker.net
               Nail here for a new monitor -----> [x]
    -- 
    Check the headers for your unsubscription address
    For additional commands send e-mail to suse-linux-e-help@suse.com
    Also check the archives at http://lists.suse.com
    Please read the FAQs: suse-linux-e-faq@suse.com
    

  • Next message: Ain Vagula: "Re: [SLE] java very slow on 9.0"

    Relevant Pages

    • postfix dying while sending mails to outside world on FC3
      ... I don't know what happened the postfix has stopped sending mails to ... .The postfix is able to send the mails within the Lan but not to the ... cleanup unix n - n - 0 cleanup ... old-cyrus unix - n n - - pipe ...
      (Fedora)
    • postfix+spamassassin help
      ... I am having some trouble getting postfix and spamassassin working ... and I have written a script ... cleanup unix n - n - 0 cleanup ... spamfilter unix - n n - 10 pipe ...
      (comp.os.linux.misc)
    • Re: Postfix Access Problem Procmail
      ... Did you do a dpkg-reconfigure postfix? ... mutt where the mail is delivered: look at the mutt documentation, ... virtual unix - n n - - virtual ... maildrop unix - n n - - pipe ...
      (Debian-User)
    • Re: Problem with SASL2 and postfix on freebsd
      ... # Postfix master process configuration file. ... see the Postfix mastermanual page. ... cleanup unix n - n - 0 cleanup ... maildrop unix - n n - - pipe ...
      (freebsd-questions)
    • Re: Postfix Access Problem Procmail
      ... # Do not forget to execute "postfix reload" after editing this file. ... virtual unix - n n - - virtual ... maildrop unix - n n - - pipe ...
      (Debian-User)