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=, orig_to=, 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=,
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]