odd dovecot problem - wont go away!!

Discussion in 'ISPConfig 3 Priority Support' started by craig baker, May 19, 2022.

  1. craig baker

    craig baker Member HowtoForge Supporter

    I've been seeing odd webmail dovecot errors - messages not being delivered etc. I look in mail log and we find:
    ---snip--
    grepping for vsz_limit:
    Out of memory (service lmtp { vsz_limit=256 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    May 19 08:52:40 ns10 dovecot[467189]: lmtp([email protected])<1435657><pFUsKZU9hmIJ6BUAoi2Qtw>: Fatal: master: service(lmtp): child 1435657 returned error 83 (Out of memory (service lmtp { vsz_limit=256 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    May 19 09:02:40 ns10 dovecot[467189]: lmtp([email protected])<1436844><CNkaLO0/hmKs7BUAoi2Qtw>: Fatal: master: service(lmtp): child 1436844 returned error 83 (Out of memory (service lmtp { vsz_limit=256 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    May 19 09:16:52 ns10 dovecot[467189]: imap([email protected])<1433907><kEZ/t1zf9+tJvyez>: Fatal: master: service(imap): child 1433907 returned error 83 (Out of memory (service imap { vsz_limit=2048 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    May 19 09:17:40 ns10 dovecot[467189]: lmtp([email protected])<1440315><aAgdCXFDhmI7+hUAoi2Qtw>: Fatal: master: service(lmtp): child 1440315 returned error 83 (Out of memory (service lmtp { vsz_limit=256 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    May 19 09:17:40 ns10 dovecot[467189]: lmtp([email protected])<1440316><wkagCXFDhmI8+hUAoi2Qtw>: Fatal: master: service(lmtp): child 1440316 returned error 83 (Out of memory (service lmtp { vsz_limit=256 MB }, you may need to increase it) - set CORE_OUTOFMEM=1 environment to get core dump)
    --snip--

    doveconf | grep vsz_limit still says default_vsz_limit is 256mb. I've increased the imap successfully to 2048 MB in conf.d/10-master.conf - and still get the error??? 2gb is NOT enough on what planet?? surely if there were a 2gb attachment hypothetically it would not load the ATTACHMENT at this point would it??

    and I also get errors on service lmtp and no matter what I do it still says vsz_limit is 256mb!!!
    from conf.d/20-lmtp.conf we have:
    service lmtp {
    vsz_limit = 2048 MB
    }
    protocol lmtp {
    # Space separated list of plugins to load (default is global mail_plugins).
    #mail_plugins = $mail_plugins
    }
    so for some reason this file is ignored? I tried putting a service block in /etc/dovecot/dovecot.conf (where I also put an imap block) but it just gives errors.
    what am I missing? and how can 2048 MB not be enough ram??? how to I diagnose and rectify this?
    thanks!
    and - are there good linux tools for diagnosing individual malformed emails? might there be some horrific malformed email that makes dovecot THINK he needs more than 2gb to read it? any tool to scan the dovecot base and ensure no ridiculous emails are present??

    cdb.
     
  2. Jesse Norell

    Jesse Norell Well-Known Member Staff Member Howtoforge Staff

    These files are not used on an ISPConfig system. See https://www.howtoforge.com/communit...-for-custom-postfix-and-dovecot-config.86559/ or if it is required to put your changes in dovecot.conf, copy the upstream one to your conf-custom/install/ directory and make your changes there as well.
    What were the changes you made (eg. post your dovecot.conf) and what was the error?
     
  3. craig baker

    craig baker Member HowtoForge Supporter

    hmm very odd. so the ONLY file in conf.d that is read is the /etc/dovecot/conf.d/99-ispconfig-custom-config.conf. which does not exist on my server. just delete the rest? why are they there??
    when I run doveconf | grep vsz_limit I find rather odd settings for example the anvil service:

    --snip--
    service anvil {
    chroot = empty
    client_limit = 0
    drop_priv_before_exec = no
    executable = anvil
    extra_groups =
    group =
    idle_kill = 4294967295 secs
    privileged_group =
    process_limit = 1
    process_min_avail = 1
    protocol =
    service_count = 0
    type = anvil
    unix_listener anvil-auth-penalty {
    group =
    mode = 0600
    user =
    }
    unix_listener anvil {
    group =
    mode = 0600
    user =
    }
    user = $default_internal_user
    vsz_limit = 18446744073709551615 B
    }
    --snip--
    thats a rather odd vsz_limit value isnt it? where did this come from? not from dovecot.conf. no anvil service in there!
     
  4. craig baker

    craig baker Member HowtoForge Supporter

    so to understand concisely. ignore all conf.d files except the non-existant 99-ispconfig file.. delete them?
    do I need to duplicate changes in dovecot.conf to this file and then copy it?
    or just what I've modified?
    for example I bumped up default_vsz_limit seems 256M too small anyway!
    and I added vsz_limit =3000 M into the imap block and vsz_limit = 2048MB in the lmtp block.
    so I need to copy these block over into the /usr/local/ispconfig file? its about time to upgrade ispconfig anyway!
    and who came up with 184PB as a vsz_limit anyway? building in some expandability? sheesh.
     
  5. Jesse Norell

    Jesse Norell Well-Known Member Staff Member Howtoforge Staff

    That's up to you, I sometimes refer to the comments/settings in them, but they are unused so no harm in deleting them.
    The file is read via include from the main dovecot.conf file, many customizations can simply be added to that file; those which cannot but instead require rewriting entries in dovecot.conf will require you to make a conf-custom template for dovecot.conf itself. Don't copy all of dovecot.conf to 99-ispconfig-custom-config.conf.
     

Share This Page