segmentation fault beim imap Prozess
sschieke at hans-bredow-institut.de
sschieke at hans-bredow-institut.de
Mo Mär 18 12:40:16 CET 2019
Hallo in die Runde,
wir beobachten bei einem Benutzer mit vielen (216355) Mails häufige Fehler im dovecot.log. Es läuft ein Dovecot Version 2.2.13-12~deb8u5 auf einem Debian System. Im Dovecot Log finden sich etwa alle 5 Minuten
dovecot: imap(some.user at domain.de): Fatal: master: service(imap): child 437 killed with signal 11 (core dumps disabled)
Zur selben Zeit dazu im kernel.log
kernel: [1397226.730654] imap[1688]: segfault at 160 ip 00007f5cfd35f9b2 sp 00007ffda68fdc40 error 4 in lib01_acl_plugin.so[7f5cfd352000+14000]
In dem Postfach sind keine weiterführenden ACLs gesetzt wurden. Kann es sein, das Dovecot an ein Limit stößt? Vll. durch eine Volltextsuche im Mailclient? Quotas sind m.W. nicht gesetzt.
Die Konfiguration des Systems:
# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 4.9.0-ucs110-amd64 x86_64 Univention Corporate Server 4.2-5 errata613 (Lesum) ext4
auth_cache_negative_ttl = 1 mins
auth_cache_size = 100 k
auth_cache_ttl = 5 mins
auth_master_user_separator = *
auth_mechanisms = plain login
debug_log_path = syslog
default_client_limit = 400
default_process_limit = 400
first_valid_gid = 140
first_valid_uid = 135
info_log_path = syslog
last_valid_gid = 140
last_valid_uid = 135
mail_gid = dovemail
mail_home = /var/spool/dovecot/private/%Ld/%Ln
mail_location = maildir:/var/spool/dovecot/private/%Ld/%Ln/Maildir
mail_plugins = " acl quota"
mail_privileged_group = dovemail
mail_uid = dovemail
mailbox_list_index = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave imapflags notify
namespace {
list = children
location = maildir:%%h/Maildir:INDEXPVT=~/Maildir/shared/%%u
prefix = shared/%%u/
separator = /
subscriptions = no
type = shared
}
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Entwürfe {
auto = subscribe
special_use = \Drafts
}
mailbox Gesendet {
special_use = \Sent
}
mailbox "Gesendete Objekte" {
auto = subscribe
special_use = \Sent
}
mailbox Ham {
auto = no
}
mailbox Junk {
special_use = \Junk
}
mailbox Papierkorb {
auto = subscribe
special_use = \Trash
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Spam {
auto = no
special_use = \Junk
}
mailbox Trash {
special_use = \Trash
}
mailbox confirmed-spam {
special_use = \Junk
}
mailbox "deleted messages" {
special_use = \Trash
}
prefix =
separator = /
type = private
}
passdb {
args = /etc/dovecot/master-users
driver = passwd-file
master = yes
}
passdb {
args = cache_key=%Lu dovecot
driver = pam
}
plugin {
acl = vfile:/etc/dovecot/global-acls:cache_secs=60
acl_anyone = allow
acl_shared_dict = file:/var/lib/dovecot/shared-mailboxes
quota = maildir:User quota
quota_grace = 10%%
quota_rule = *:storage=0
quota_rule2 = Trash:storage=+100M
quota_status_nouser = DUNNO
quota_status_overquota = 552 5.2.2 Mailbox is full
quota_status_success = DUNNO
quota_warning = storage=95%% quota-warning 95 %Lu
quota_warning2 = storage=80%% quota-warning 80 %Lu
sieve = ~/.dovecot.sieve
sieve_dir = ~/sieve
sieve_extensions = +notify +imapflags
sieve_global_dir = /var/lib/dovecot/sieve
}
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
protocols = " imap lmtp sieve pop3"
service anvil {
client_limit = 1603
}
service auth {
client_limit = 2000
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0666
user = postfix
}
}
service imap-login {
client_limit = 400
process_min_avail = 8
service_count = 1
vsz_limit = 256 M
}
service imap-postlogin {
executable = script-login /usr/lib/dovecot/dovecot-postlogin.py
user = $default_internal_user
}
service imap {
executable = imap imap-postlogin
process_limit = 400
vsz_limit = 1 G
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0600
user = postfix
}
}
service managesieve-login {
inet_listener sieve {
address =
port = 4190
}
process_min_avail = 0
service_count = 1
vsz_limit = 256 M
}
service managesieve {
process_limit = 400
}
service pop3-login {
client_limit = 400
process_min_avail = 0
service_count = 1
vsz_limit = 256 M
}
service pop3 {
executable = pop3 imap-postlogin
process_limit = 400
vsz_limit = 256 M
}
service quota-status {
client_limit = 1
executable = quota-status -p postfix
inet_listener {
address = 127.0.0.1
port = 12340
}
}
service quota-warning {
executable = script /usr/lib/dovecot/quota-warning.sh
unix_listener quota-warning {
user = dovemail
}
user = dovemail
}
ssl_cert = </etc/myssl/dovecot.crt
ssl_cipher_list = EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh_parameters_length = 2048
ssl_key = </etc/myssl/my-certificate.key
ssl_parameters_regenerate = 1 weeks
ssl_prefer_server_ciphers = yes
ssl_protocols = !SSLv2 !SSLv3
syslog_facility = local5
userdb {
args = /etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}
protocol lmtp {
mail_plugins = " acl quota quota sieve"
}
protocol lda {
mail_plugins = " acl quota sieve"
}
protocol imap {
mail_plugins = " acl quota imap_acl imap_quota"
}
protocol sieve {
Mehr Informationen über die Mailingliste Dovecot