Detect port number of SASL AUTH request?
Hi, this is partly Postfix related, but I want to know if there could be way to distinguish port of the SASL AUTH request to segregate user services. Currently I use unix listener for dovecot sasl auth, but could change to inet_listener. Only way I can think is to have different SASL AUTH services for each master.cf entry where its needed. But is it possible for Dovecot to have more than one SASL AUTH services with different configuration setup? It would be nicer if there was a way for Postfix to tell Dovecot about the port the client connected on. Or maybe it can be done with a SASL realm? I'm not sure how? Any help please?
doveadm mailbox delete: Wrong docs or bug?
Uh?? doveadm mailbox delete -u myuser -r -s foldername mailbox: invalid option -- 'r' Docs say -r is recursive. So how do I delete recursive mailbox?? https://wiki2.dovecot.org/Tools/Doveadm/Mailbox
Re: Plugin charset_alias
On 2018-03-01 22:59, John Woods wrote: Hey Everyone, We are getting a compile error for Dovecot 2.2.34 on Solaris 11.3 x86, using Solaris Studio 12.6 compiler, and it doesn't occur with Dovecot 2.2.33. Making all in charset-alias Can someone easily explain what the usage of this plugin is? Maybe example when it is helpful?
Re: Plugin charset_alias
On 2018-03-02 09:57, Teemu Huovila wrote: On 02.03.2018 09:38, MRob wrote: On 2018-03-01 22:59, John Woods wrote: Hey Everyone, We are getting a compile error for Dovecot 2.2.34 on Solaris 11.3 x86, using Solaris Studio 12.6 compiler, and it doesn't occur with Dovecot 2.2.33. Making all in charset-alias Can someone easily explain what the usage of this plugin is? Maybe example when it is helpful? There is a short explanation at https://wiki2.dovecot.org/Plugins/CharsetAlias It is intended for mapping charactersets to work around some e.g. Windows specific letters being lost when Dovecot converts mail to UTF8 using iconv. I read that page so I wanted more real life example so I can learn should I install this plugin or is it for special use scenario cuz I'm not charset expert sorry. Your explain adds little bit more info but not enough to know do I need it or not. BTW not your fault-- I didn't ask myquestion good enough If Dovecot has trouble to decode some windows charsets and the plugin fixes this problem then why is it a plugin and not built in as a fix?
Is possible to override Dovecot variables or Sieve env vars and extdata lookups
Are the dovecot environment variables mutable? I'd like to override like: set "${env.vnd.dovecot.username}" "someu...@example.org" Or better, I prefer to override %u Dovecot variable during the userdb lookup. Is either possible? PS, when Sieve does extdata lookups for username key, where does username come from? %u? Does an override as above change the dict lookup key for extdata?
Re: Is possible to override Dovecot variables or Sieve env vars and extdata lookups
On 2018-03-19 06:31, Aki Tuomi wrote: On 19.03.2018 06:40, MRob wrote: Are the dovecot environment variables mutable? I'd like to override like: set "${env.vnd.dovecot.username}" "someu...@example.org" Or better, I prefer to override %u Dovecot variable during the userdb lookup. Is either possible? PS, when Sieve does extdata lookups for username key, where does username come from? %u? Does an override as above change the dict lookup key for extdata? You could override the %u variable, but overriding it in userdb will have surprising consequences. Basically this amounts to same as changing username for the user. This is useful to work with a older system in my case, username should seem as a new one anyways. I accept the consequence. :) I tried return only "u" in the passdb and usedb lookup (also "userdb_u") but it did not work. Where can I override %u? Can I do it in both passdb and userdb lookup?
Massive /tmp files
Hello, I just found user who has single folder (standard maildir format) that filled with over 8mil files and 800GB in the /tmp subdirectory of that folder: /email/domain/username/.Folder/tmp The files in there are normal maildir email files. I think the dir ran out of inode space so its not ongoing problem. My question is only can I purge that folder without breaking something more? If it tries to re-fill again I will try to debug Thankyou!!
Re: Massive /tmp files
On 2021-01-22 16:02, @lbutlr wrote: On 21 Jan 2021, at 18:08, MRob wrote: Hello, I just found user who has single folder (standard maildir format) that filled with over 8mil files and 800GB in the /tmp subdirectory of that folder: Are they real files or hard links? They are files with no other links. I've had some issues (in the past) with thousands of links being created to each message, resulting in many millions of "files". I even wrote a script to remove all the linked files leaving only one actual file behind, but I haven't had to do that in quite a while (a year? More?). I don't seem to have the script handy (it's around somewhere), but this is basically what I did: <https://unix.stackexchange.com/a/286780/61289> I think the dir ran out of inode space so its not ongoing problem. My question is only can I purge that folder without breaking something more? If it tries to re-fill again I will try to debug AIUI tmp is temp and can go away, though I'd stop dovecot first just to be extra safe. Date on files is over 2yrs ago with dates all newer than files in "cur" folder so looks like user was moving massive number messages then dovecot choked? But 8mil seem impossible for almost any user. I can't read all of them :) but looked at a few and they are normal messages, tho a lot seems spam. Will have to talk to the user but I'm inclined to purge. Thank you for helping me!
Director vs Proxy
Hello, I understand director is like coordinated state database for the proxies. Is it like a special lookup resource for Dovecot proxy? If correct, makes sense proxies and directors should be deployed in pairs. But few places the docs talk about maybe different number of directors v. proxies or putting directors on different hardware from proxies. What is reason to separate director and proxy? Thank you.
Containerize dovecot?
Hello, anyone here has containerized dovecot? Can I ask general advice and experience please? are there any recommended articles/tutorial for containerize deploymnt and auto-scaling? Thank you.
Re: Containerize dovecot?
Thank to other responses with links that i'll learning from! Thanks you very much On 2021-08-24 00:35, Marc wrote: What are you trying to achieve with containerizing? hmm, easy deployment & scaling? also reslient against hardware crashes, etc. You have to take into account that your storage is persistant, Have you see what challenge this poses? Love to hear your opinion about it. Maybe this is where using object-storage backend becomes more powerful solution? you have to take into account getting something like proxy to redirect traffic etc etc. Yes I thought also proxy/director also become containerized. You said this for teaching a certain point? If you want to deploy the container on a orchestrator so it is going to be (re)started on a random hosts. you mention so because all hosts must be connected to same storage? I managed to get this to work via alpine linux (nice small), but I think I am going back to vm. what reasons? what kind of vm do you use? Hello, anyone here has containerized dovecot? Can I ask general advice and experience please? are there any recommended articles/tutorial for containerize deploymnt and auto-scaling? Thank you.
Multi-dbox storage space
Hi, I originally picked mdbox because I had the impression from reading about it on the mailing list that it was more performant and that it would conserve disc space. But lately i found mailboxes have nearly double the storage as reported. I mean, IMAP QUOTA reports around 900MB for one account that has over 2GB when I inspect the mail location of the user using the linux command `du` Another account has around 750MB according to IMAP but using du I find 1.5GB. This is for message files and index files combined. Is this normal? I tried to read the MailboxFormat/dbox wiki page and it does not directly address this topic but it does reference "doveadm purge". Do I need to use "doveadm purge"?
Re: Multi-dbox storage space
On 2019-02-03 21:12, Philon wrote: On 03 Feb 2019, at 22:07, MRob wrote: Hi, I originally picked mdbox because I had the impression from reading about it on the mailing list that it was more performant and that it would conserve disc space. But lately i found mailboxes have nearly double the storage as reported. I mean, IMAP QUOTA reports around 900MB for one account that has over 2GB when I inspect the mail location of the user using the linux command `du` Another account has around 750MB according to IMAP but using du I find 1.5GB. This is for message files and index files combined. Is this normal? I tried to read the MailboxFormat/dbox wiki page and it does not directly address this topic but it does reference "doveadm purge". Do I need to use "doveadm purge"? From https://wiki2.dovecot.org/MailboxFormat/dbox: Expunging a message only decreases the message's refcount. The space is later freed in "purge" step. Thats what I read but I had a hard time to believe I could understand it was a critical maintenance because it was not highlighted in the docs. I ran purge and find now "du" reporting about 60% the size of IMAP QUOTA so mdbox now is saving space and I'm very happy for Dovecot again is good software. But may I ask developers it is not common belief of administrators to know they must purge message storage - can you please make this a warning in highlight and big text on the mailformat documentation? I think this is a ciritcal oversight PS for 10.000+ users how heavy is this process on performance? what if 100.000+ users?
LMTP delivery honours .forward by default?
I was under the impression that Dovecot does not look at .forward by default, since of course, Sieve is where that kind of logic should go. However, I'm seeing a .forward file being honoured by the LMTP delivery agent. Is this to be expected?
doveadm edit headers?
Hello, is there a way to edit a message header using doveadm? I see how I can fetch the things I need, but even if I can't edit in place; if I extract the full message, edit it, there doesn't seem to be a way to append it back again?
Show pigeonhole version?
How can I query the current pigeonhole version from a running instance to verify it is what I expect? Possible to get `dovecot --version` to show things like that?
imapsieve environment variables missing?
RFC6785 says imap.user and imap.email environment variables should be made available but I can't access them no matter what I try. Are they not implemented because vnd.dovecot.environment already provides the username? (which does work for me) If imap.user and imap.email are there, can you provide an example how to access them so I can see what I did wrong?
Re: imapsieve environment variables missing?
On 2016-12-05 04:38, Stephan Bosch wrote: Op 5-12-2016 om 13:28 schreef MRob: RFC6785 says imap.user and imap.email environment variables should be made available but I can't access them no matter what I try. Are they not implemented because vnd.dovecot.environment already provides the username? (which does work for me) If imap.user and imap.email are there, can you provide an example how to access them so I can see what I did wrong? That should work. Do you have an example script demonstrating what your trying to do? Trying to access as a variable: \${imap.user} Also tried: if environment :matches "imap.user" "*" { set "username" "${1}"; } Also tried prefixing with "env." or removing "imap." Result is always empty string (dumped with debug_log) Script is run during COPY operations, newest tarball releases installed for dovecot and pigeonhole.
COPY vs APPEND for imapsieve?
The examples on the imapsieve documentation page use COPY but not APPEND to watch messages coming into a folder. Are there not circumstances that a client would APPEND a message to a folder instead of COPY? Is APPEND only used by most clients for adding a sent message to the sent folder? I'm not familiar enough with IMAP clients to know if by leaving off APPEND I am safe or I am at risk to miss some actions I shouldn't.
Re: v2.2.27 released
On 2016-12-04 12:06, Stephan Bosch wrote: Op 12/4/2016 om 11:42 AM schreef Alexey Asemov (Alex/AT): Thanks a lot for indexing fixes, Dovecot team. Any news for Pigeonhole? Currently had to rollup some commits from GIT to make it pass vacation test set with 2.2.27. What problem are you seeing? No Pigeonhole release is currently planned. FWIW, vacation works for me on the newest release. REALLY GREAT fully featured software. Incredible work!
Re: LMTP delivery honours .forward by default?
On 2016-12-04 23:18, Steffen Kaiser wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri, 2 Dec 2016, MRob wrote: I was under the impression that Dovecot does not look at .forward by default, since of course, Sieve is where that kind of logic should go. However, I'm seeing a .forward file being honoured by the LMTP delivery agent. Is this to be expected? What version of Dovecot are you using? 2.2.22 In my installation the MTA handles .forward. Using with postfix connected to dovecot's LMTP for delivery. So what you are saying is that postfix first looks at the .forward in the user's home before handing off to dovecot LMTP? Why would it do such a thing?
Re: doveadm edit headers?
On 2016-12-05 00:02, Aki Tuomi wrote: On 05.12.2016 09:43, Steffen Kaiser wrote: On Mon, 5 Dec 2016, Aki Tuomi wrote: > On 05.12.2016 09:34, Steffen Kaiser wrote: >> On Sun, 4 Dec 2016, MRob wrote: >> >>> Hello, is there a way to edit a message header using doveadm? >> >> I guess not. >> >>> I see how I can fetch the things I need, but even if I can't edit in >> place; if I extract the full message, edit it, there doesn't seem to >> be a way to append it back again? >> >> check out doveadm import >> http://wiki2.dovecot.org/Tools/Doveadm/Import >> >> it should be easy to fake a maildir or mbox structure. > 4. Use doveadm save to save the message Oh, "save" is not documented on: http://wiki2.dovecot.org/Tools/Doveadm There seems to be no man page either. :-) -- Steffen Kaiser So it would seem. Indeed, as I had scoured all the doc pages I could find. Good thing the mailing list is so helpful! :)
Re: imapsieve environment variables missing?
On 2016-12-05 06:13, Stephan Bosch wrote: Op 5-12-2016 om 14:32 schreef MRob: On 2016-12-05 04:38, Stephan Bosch wrote: Op 5-12-2016 om 13:28 schreef MRob: RFC6785 says imap.user and imap.email environment variables should be made available but I can't access them no matter what I try. Are they not implemented because vnd.dovecot.environment already provides the username? (which does work for me) If imap.user and imap.email are there, can you provide an example how to access them so I can see what I did wrong? That should work. Do you have an example script demonstrating what your trying to do? Trying to access as a variable: \${imap.user} Also tried: if environment :matches "imap.user" "*" { set "username" "${1}"; } Also tried prefixing with "env." or removing "imap." Result is always empty string (dumped with debug_log) Script is run during COPY operations, newest tarball releases installed for dovecot and pigeonhole. Could you show me your full script? I am mainly interested in the require statements involved. I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve
Re: imapsieve environment variables missing?
On 2016-12-05 07:22, Stephan Bosch wrote: Op 5-12-2016 om 16:10 schreef MRob: On 2016-12-05 06:13, Stephan Bosch wrote: Op 5-12-2016 om 14:32 schreef MRob: Could you show me your full script? I am mainly interested in the require statements involved. I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve - For the "imap.user" environment item, you need to add: require "imapsieve"; Hmm, I had tried that and get this: error: require command: unknown Sieve capability `imapsieve' I've already got imapsieve working (per above output, which was triggered by a COPY action) so it clearly is installed and configured. This also means that this script will only run from IMAP. Seems as though it won't compile outside of IMAP either :) - For the "${imap.user}" variable, you need to add: require "vnd.dovecot.environment"; This implicitly requires "environment", so that could be removed. It is all in the specifications. :) You're saying that to access the new imap. namespace vars for imapsieve that vnd.dovecot.environment is required? I don't find anything in the specifications that say this. The RFC says those vars MUST be made available, so presumably it would be referring to the RFC-standard environment extension and not some vendor specific one. Of course it's easy to work with that if this is how it's been built, but as noted above I can't get it to compile anyway. Though what's the point of trying to figure out imap.user or imap.email if I'm required to use vnd.dovecot.environment which already has "username"? :)
Re: imapsieve environment variables missing?
I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve - For the "imap.user" environment item, you need to add: require "imapsieve"; Hmm, I had tried that and get this: error: require command: unknown Sieve capability `imapsieve' I've already got imapsieve working (per above output, which was triggered by a COPY action) so it clearly is installed and configured. This also means that this script will only run from IMAP. Seems as though it won't compile outside of IMAP either :) Not if you're not using the sieve_imapsieve plugin for the Sieve interpreter (sieve_plugins = sieve_imapsieve). Forgive me, but what other way is there to set it up? Is there any way to successfully compile a script with a require of "imapsieve" from the command line? - For the "${imap.user}" variable, you need to add: require "vnd.dovecot.environment"; This implicitly requires "environment", so that could be removed. It is all in the specifications. :) You're saying that to access the new imap. namespace vars for imapsieve that vnd.dovecot.environment is required? I don't find anything in the specifications that say this. The RFC says those vars MUST be made available, so presumably it would be referring to the RFC-standard environment extension and not some vendor specific one. Of course it's easy to work with that if this is how it's been built, but as noted above I can't get it to compile anyway. Though what's the point of trying to figure out imap.user or imap.email if I'm required to use vnd.dovecot.environment which already has "username"? :) The standard "environment" extension [1] does not register a variables namespace [2] for environment items. So, using a "${env.imap.user}" variable requires the Dovecot-specific "vnd.dovecot.environment" extension [3]. But this doesn't work: require ["environment", "variables", "vnd.dovecot.debug", "vnd.dovecot.environment"]; debug_log "Username: ${env.imap.user}"; Output when running from a COPY event is: DEBUG: Username: What did I do wrong here? In contrast, the normal alternative for this variable using the "imap.user" environment item will work once the "imapsieve" extension [4] is require'd. That is a bit cumbersome though, since you need to put that in a variable with a statement like: if environment :matches "imap.user" "*" { set "imap_user" "${1}"; }. I don't see that being too cumbersome, as it's the standard way the environment extension is used, and it's what I expect from reading the RFC. But I understand your point that it's more lengthy than just accessing the variable directly. So the only issue I see is that the script won't compile on the CLI with the needed require. Is it simply a requirement to have Sieve do run-time compilation for this to work?
Re: imapsieve environment variables missing?
On 2016-12-05 15:26, Stephan Bosch wrote: Op 12/6/2016 om 12:23 AM schreef MRob: I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve - For the "imap.user" environment item, you need to add: require "imapsieve"; Hmm, I had tried that and get this: error: require command: unknown Sieve capability `imapsieve' I've already got imapsieve working (per above output, which was triggered by a COPY action) so it clearly is installed and configured. This also means that this script will only run from IMAP. Seems as though it won't compile outside of IMAP either :) Not if you're not using the sieve_imapsieve plugin for the Sieve interpreter (sieve_plugins = sieve_imapsieve). Forgive me, but what other way is there to set it up? Is there any way to successfully compile a script with a require of "imapsieve" from the command line? I mean that adding "sieve_imapsieve" to sieve_plugins should fix it for you: plugin { sieve_plugins = sieve_imapsieve } Darn, botched configuration settings. I apologize for the unnecessary thread.
Re: imapsieve environment variables missing?
On 2016-12-05 15:29, MRob wrote: On 2016-12-05 15:26, Stephan Bosch wrote: Op 12/6/2016 om 12:23 AM schreef MRob: I don't know how I managed to compile only using direct access of ${imap.user} before since now I get an unknown namespace error on my test script. But doing it this way compiles: require ["environment", "variables", "vnd.dovecot.debug"]; if environment :matches "imap.user" "*" { set "u" "${1}"; } debug_log "Found username: \${u}"; if environment :matches "name" "*" { set "n" "${1}"; } debug_log "Found product name: \${n}"; The output is: DEBUG: Found username: DEBUG: Found product name: Pigeonhole Sieve - For the "imap.user" environment item, you need to add: require "imapsieve"; Hmm, I had tried that and get this: error: require command: unknown Sieve capability `imapsieve' I've already got imapsieve working (per above output, which was triggered by a COPY action) so it clearly is installed and configured. This also means that this script will only run from IMAP. Seems as though it won't compile outside of IMAP either :) Not if you're not using the sieve_imapsieve plugin for the Sieve interpreter (sieve_plugins = sieve_imapsieve). Forgive me, but what other way is there to set it up? Is there any way to successfully compile a script with a require of "imapsieve" from the command line? I mean that adding "sieve_imapsieve" to sieve_plugins should fix it for you: plugin { sieve_plugins = sieve_imapsieve } Darn, botched configuration settings. I apologize for the unnecessary thread. What a supreme waste of your time. I'm sorry this probably happens to you all the time. I had had this set up but for various reasons, commented it out temporarily. When I put it back, the software works as advertised - little surprise. Can't say enough how much the software and support is appreciated.
Re: COPY vs APPEND for imapsieve?
On 2016-12-05 06:16, Stephan Bosch wrote: Op 5-12-2016 om 14:36 schreef MRob: The examples on the imapsieve documentation page use COPY but not APPEND to watch messages coming into a folder. Are there not circumstances that a client would APPEND a message to a folder instead of COPY? Is APPEND only used by most clients for adding a sent message to the sent folder? I'm not familiar enough with IMAP clients to know if by leaving off APPEND I am safe or I am at risk to miss some actions I shouldn't. Depends on the application. E.g., if you're trying to detect messages being moved into the Junk folder, COPY is usually involved. Instead, if you're trying to detect messages being put in the Sent folder, APPEND is usually involved. So it shouldn't hurt to add APPEND in an example as on the documentation page right? However I believe you would only add it to the first "mailbox1" whereas adding the APPEND cause to "mailbox2" should not be correct, because it is impossible to APPEND from one folder to another?
Re: LMTP delivery honours .forward by default?
On 2016-12-05 05:53, MRob wrote: On 2016-12-04 23:18, Steffen Kaiser wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri, 2 Dec 2016, MRob wrote: I was under the impression that Dovecot does not look at .forward by default, since of course, Sieve is where that kind of logic should go. However, I'm seeing a .forward file being honoured by the LMTP delivery agent. Is this to be expected? What version of Dovecot are you using? 2.2.22 In my installation the MTA handles .forward. Using with postfix connected to dovecot's LMTP for delivery. So what you are saying is that postfix first looks at the .forward in the user's home before handing off to dovecot LMTP? Why would it do such a thing? After asking on the postfix list, I learned that postfix only inspects .forward if you use the postfix local delivery agent. So Dovecot LMTP is doing this - when and why? It's not unwelcome, but I'd like to know how it is configured.
Re: LMTP delivery honours .forward by default?
On 2016-12-05 16:37, MRob wrote: On 2016-12-05 05:53, MRob wrote: On 2016-12-04 23:18, Steffen Kaiser wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Fri, 2 Dec 2016, MRob wrote: I was under the impression that Dovecot does not look at .forward by default, since of course, Sieve is where that kind of logic should go. However, I'm seeing a .forward file being honoured by the LMTP delivery agent. Is this to be expected? What version of Dovecot are you using? 2.2.22 In my installation the MTA handles .forward. Using with postfix connected to dovecot's LMTP for delivery. So what you are saying is that postfix first looks at the .forward in the user's home before handing off to dovecot LMTP? Why would it do such a thing? After asking on the postfix list, I learned that postfix only inspects .forward if you use the postfix local delivery agent. So Dovecot LMTP is doing this - when and why? It's not unwelcome, but I'd like to know how it is configured. Never mind. Turns out this IS postfix after all.
Users with extra mailbox: namespace/mailbox in userdb lookup?
Hello, We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' Or is there some other way to do this?
Re: Users with extra mailbox: namespace/mailbox in userdb lookup?
Thank you so much Steffen On 2017-01-30 00:35, Steffen Kaiser wrote:
Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips.
Re: Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
On 2017-03-10 23:22, Christian Kivalo wrote: Am 11. März 2017 08:04:28 MEZ schrieb MRob : We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips. Whats the output of doveadm user ? Oh I did not know this doveadm command, thank you! Output included all my other userdb fields as well as this: namespace/inbox/mailbox/Important/auto subscribe
Re: Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
On 2017-03-10 23:28, MRob wrote: On 2017-03-10 23:22, Christian Kivalo wrote: Am 11. März 2017 08:04:28 MEZ schrieb MRob : We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips. Whats the output of doveadm user ? Oh I did not know this doveadm command, thank you! Output included all my other userdb fields as well as this: namespace/inbox/mailbox/Important/auto subscribe In other words, I think it's configured correctly, so I hope someone can help me understand why it does not auto-create this folder when logging in. I know it's the weekend, maybe someone sees this on Monday morning. Thank you.
Re: Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
On 2017-03-10 23:28, MRob wrote: On 2017-03-10 23:22, Christian Kivalo wrote: Am 11. März 2017 08:04:28 MEZ schrieb MRob : We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips. Whats the output of doveadm user ? Oh I did not know this doveadm command, thank you! Output included all my other userdb fields as well as this: namespace/inbox/mailbox/Important/auto subscribe Just a polite ping on this problem. Folder auto-creation isn't working with folders specified as part of the userdb lookup. Help appreciated.
Re: Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
On 2017-03-13 13:40, Aki Tuomi wrote: On 2017-03-13 19:31, MRob wrote: On 2017-03-10 23:28, MRob wrote: On 2017-03-10 23:22, Christian Kivalo wrote: Am 11. März 2017 08:04:28 MEZ schrieb MRob : We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips. Whats the output of doveadm user ? Oh I did not know this doveadm command, thank you! Output included all my other userdb fields as well as this: namespace/inbox/mailbox/Important/auto subscribe Just a polite ping on this problem. Folder auto-creation isn't working with folders specified as part of the userdb lookup. Help appreciated. Can you change config to mail_debug=yes and provide logs for a single session? Sorry to return so much later. I can provide full logs, but it looks like this is what you're looking for: Mar 14 01:26:24 mail dovecot: imap(u...@example.com): Debug: Unknown userdb setting: plugin/namespace/inbox/mailbox/Important/auto=subscribe Is it the "plugin/" on front? As you see with my doveadm result above, I don't think I caused that to be placed there. Any further guidance?
Re: Auto create & subscribe folder from Userdb [Was: Users with extra mailbox: namespace/mailbox in userdb lookup?]
On 2017-03-14 01:52, Aki Tuomi wrote: On 14.03.2017 05:57, MRob wrote: On 2017-03-13 13:40, Aki Tuomi wrote: On 2017-03-13 19:31, MRob wrote: On 2017-03-10 23:28, MRob wrote: On 2017-03-10 23:22, Christian Kivalo wrote: Am 11. März 2017 08:04:28 MEZ schrieb MRob : We have a need for some users to have an additional folder created and subscribed for them. Is is possible to return an override for the default "namespace inbox" containing the needed mailbox definitions in the userdb lookup for such users? If so, how would the userdb lookup result be formatted? Presumably as Yes, see here: http://wiki2.dovecot.org/UserDatabase/ExtraFields Each setting ist one "Extra Field" just one long string, but how would the setting be named given there can't be a space in it? Can I replace the space with an underscore, e.g. userdb_namespace_inbox = '{ mailbox Drafts { auto=subscribe special_use = \Drafts } mailbox Trash { auto=subscribe special_use = \Trash } }' sort of: userdb_namespace/inbox/mailbox/Drafts/auto=subscribe see also: http://www.dovecot.org/list/dovecot/2016-February/103140.html Unfortunately, I'm having trouble with this task. Dovecot 2.2.27 Trying to have an "Important" folder get created and subscribed for only some users. When I put this into my dovecot config file it works as needed (other folders omitted for brevity): namespace inbox { mailbox Trash { auto=subscribe special_use = \Trash } mailbox Important { auto=subscribe } } But I don't want to do it globally, so put it into the userdb lookup: SELECT 'subscribe' AS 'namespace/inbox/mailbox/Important/auto' ... WHERE ... I confirmed that the correct query is executing and I know it works because other userdb fields are populated correctly. But the folder does not get created. For passdb lookups: SELECT 'subscribe' AS 'userdb_namespace/inbox/mailbox/Important/auto' ... WHERE ... I'd appreciate help/tips. Whats the output of doveadm user ? Oh I did not know this doveadm command, thank you! Output included all my other userdb fields as well as this: namespace/inbox/mailbox/Important/auto subscribe Just a polite ping on this problem. Folder auto-creation isn't working with folders specified as part of the userdb lookup. Help appreciated. Can you change config to mail_debug=yes and provide logs for a single session? Sorry to return so much later. I can provide full logs, but it looks like this is what you're looking for: Mar 14 01:26:24 mail dovecot: imap(u...@example.com): Debug: Unknown userdb setting: plugin/namespace/inbox/mailbox/Important/auto=subscribe Is it the "plugin/" on front? As you see with my doveadm result above, I don't think I caused that to be placed there. Any further guidance? userdb_namespace/inbox/mailbox=Important userdb_namespace/inbox/mailbox/Important/name=Important userdb_namespace/inbox/mailbox/Important/auto=create Am I to understand that I'll need all three of these? It makes sense, though the Important/name=Important is a bit awkward - wondering, is this documented anywhere I may have missed? Also if you want to create multiple mailboxes, you can use mailbox=Important,SecondBox,SomeOtherBox and add settings for them. The important one is the 'name' setting. Good tip, thank you.
IMAPSieve Changed flags cause?
RFC 6785 says I should be able to run scripts when a command changes flags on a message but I can't understand what to put in imapsieve_mailboxXXX_causes. Dovecot logs something like STORE as an invalid cause. How do I run an administrator Sieve script caused from change in flags?
Re: IMAPSieve Changed flags cause?
On 2017-04-05 18:50, MRob wrote: RFC 6785 says I should be able to run scripts when a command changes flags on a message but I can't understand what to put in imapsieve_mailboxXXX_causes. Dovecot logs something like STORE as an invalid cause. How do I run an administrator Sieve script caused from change in flags? Is no reply on this to mean the feature is not currently supported, or everyone's busy? If not supported, are there plans to support admin scripts being triggered from message flag changes?
Re: IMAPSieve Changed flags cause?
On 2017-04-08 01:03, Stephan Bosch wrote: Op 4/7/2017 om 7:29 PM schreef MRob: On 2017-04-05 18:50, MRob wrote: RFC 6785 says I should be able to run scripts when a command changes flags on a message but I can't understand what to put in imapsieve_mailboxXXX_causes. Dovecot logs something like STORE as an invalid cause. How do I run an administrator Sieve script caused from change in flags? Is no reply on this to mean the feature is not currently supported, or everyone's busy? If not supported, are there plans to support admin scripts being triggered from message flag changes? It is in the specification: https://tools.ietf.org/html/rfc6785#section-4.3 Yes, that's what I referenced when I asked my question. But I cannot determine how to configure Dovecot to trigger an admin script based on such an event. If you can, please clarify (the docs don't mention this case).
Re: IMAPSieve Changed flags cause?
On 2017-04-08 01:21, Stephan Bosch wrote: Op 4/8/2017 om 10:08 AM schreef MRob: On 2017-04-08 01:03, Stephan Bosch wrote: Op 4/7/2017 om 7:29 PM schreef MRob: On 2017-04-05 18:50, MRob wrote: RFC 6785 says I should be able to run scripts when a command changes flags on a message but I can't understand what to put in imapsieve_mailboxXXX_causes. Dovecot logs something like STORE as an invalid cause. How do I run an administrator Sieve script caused from change in flags? Is no reply on this to mean the feature is not currently supported, or everyone's busy? If not supported, are there plans to support admin scripts being triggered from message flag changes? It is in the specification: https://tools.ietf.org/html/rfc6785#section-4.3 Yes, that's what I referenced when I asked my question. But I cannot determine how to configure Dovecot to trigger an admin script based on such an event. If you can, please clarify (the docs don't mention this case). Well, the section I pointed to directly answers your initial question: "RFC 6785 says I should be able to run scripts when a command changes flags on a message but I can't understand what to put in imapsieve_mailboxXXX_causes." ->> FLAG <<- (for invocations resulting from flag changes) What else do you want to know? Can you please tell me why I missed something so obvious? :) Sorry, Stephan.
Understanding virtual mailboxes (examples in 15-mailboxes.conf)
The examples in 15-mailboxes.conf # If you have a virtual "All messages" mailbox: #mailbox virtual/All { # special_use = \All # comment = All my messages #} # If you have a virtual "Flagged" mailbox: #mailbox virtual/Flagged { # special_use = \Flagged # comment = All my flagged messages #} They seem to reference some kind of virtual mailbox setup that doesn't compare to the docs for the "virtual" plugin. That plugin says we should create a separate namespace instead, like "namespace virtual" and put files representing the virtual folders into user maildirs. What if we use mdbox? add the files to user/mailboxes director I will guess. Is there a way to use the mailbox examples in the inbox namespace in the default config? Does it use some other method different from the virtual plugin? maybe more config hints for those examples would be helpful. Thank you.
dynamic virtual mailboxes?
hi, I spent time learning about virtual mailboxes. Is there some way to create dynamic virtual mailboxes? I mean, when I look at a mailbox, I want to see only unread messages or flagged messages in that mailbox.
Re: Understanding virtual mailboxes (examples in 15-mailboxes.conf)
On 2019-05-01 22:14, Daniel Miller via dovecot wrote: On 4/30/2019 11:13 PM, MRob via dovecot wrote: The examples in 15-mailboxes.conf # If you have a virtual "All messages" mailbox: #mailbox virtual/All { # special_use = \All # comment = All my messages #} # If you have a virtual "Flagged" mailbox: #mailbox virtual/Flagged { # special_use = \Flagged # comment = All my flagged messages #} They seem to reference some kind of virtual mailbox setup that doesn't compare to the docs for the "virtual" plugin. That plugin says we should create a separate namespace instead, like "namespace virtual" and put files representing the virtual folders into user maildirs. What if we use mdbox? add the files to user/mailboxes director I will guess. Is there a way to use the mailbox examples in the inbox namespace in the default config? Does it use some other method different from the virtual plugin? maybe more config hints for those examples would be helpful. Thank you. You will indeed need to setup a virtual namespace. The virtual mailboxes will exist in a folder alongside but separate from your primary mailstore. If your default namespace is: Thank you, but question is about the example mailbox settings in 15-mailboxes.conf I found I can put those mailbox definitions in the new virtual namespace, still not sure if they would work if I kept them in the inbox namespace, maybe the documentation in the example file can include clarification
Re: dynamic virtual mailboxes?
On 2019-05-03 16:03, Daniel Miller via dovecot wrote: On 5/2/2019 12:47 PM, MRob via dovecot wrote: hi, I spent time learning about virtual mailboxes. Is there some way to create dynamic virtual mailboxes? I mean, when I look at a mailbox, I want to see only unread messages or flagged messages in that mailbox. contents of /var/mail/mydomain/myuser/virtual/Flagged/dovecot-virtual: * flagged contents of /var/mail/mydomain/myuser/virtual/Unread/dovecot-virtual: * unseen contents of /var/mail/mydomain/myuser/virtual/Unread-Flagged/dovecot-virtual: * unseen flagged That is not dynamically generated and it isn't limited to just one mailbox (dovecot terminology here is confusing, normally a mailbox is a mail account (user), but in this context "mailbox" I guess mean "folder" which is how I am using it, as it is used in 15-mailboxes.conf)
Re: dynamic virtual mailboxes?
On 2019-05-05 02:37, Daniel Miller via dovecot wrote: On 5/3/2019 11:22 AM, MRob via dovecot wrote:> That is not dynamically generated and it isn't limited to just one mailbox (dovecot terminology here is confusing, normally a mailbox is a mail account (user), but in this context "mailbox" I guess mean "folder" which is how I am using it, as it is used in 15-mailboxes.conf) What does "dynamically generated" mean? Are you asking to create virtual mailboxes via your mail client? If so - then there's no native method. The examples I gave will indeed give you virtual "folders" which respectively contain ALL your flagged (regardless of seen status), unseen (regardless of flagged status), or only unseen flagged messages from all folders. And they will auto-update. Virtual mailboxes are defined per user - so indeed the examples I gave will only exist for the user(s) that have such files and will only apply to their folders. Thank you for helping but- Again, Dovecot terminology here, mailbox means 'folder' not the whole account Dynamic- https://www.mail-archive.com/dovecot@dovecot.org/msg71091.html
How to auto-subscribe to virtual namespace/prefix?
In virtual namespace I can have: namespace myvirt { location = blah prefix=Virtual/ separator=/ mailbox "My folder" { auto = subscribe } } And i see email clients successful display subscribed "My folder" but the top-level prefix "Virtual/" is not subscribed. I see the Virtual/ prefix available as a noselect folder in the list of unsubscribed folders and if I manual subscribe to it, folder tree display is perfect. So how can i also make auto-subscription to the "Virtual/" prefix noselect folder?
Re: How to auto-subscribe to virtual namespace/prefix?
FYI in subscription file for namespace I see empty line when the top level prefix is subscribed. Works perfectly just need to make it automatic On 2019-05-08 20:50, MRob via dovecot wrote: In virtual namespace I can have: namespace myvirt { location = blah prefix=Virtual/ separator=/ mailbox "My folder" { auto = subscribe } } And i see email clients successful display subscribed "My folder" but the top-level prefix "Virtual/" is not subscribed. I see the Virtual/ prefix available as a noselect folder in the list of unsubscribed folders and if I manual subscribe to it, folder tree display is perfect. So how can i also make auto-subscription to the "Virtual/" prefix noselect folder?
Re: How to auto-subscribe to virtual namespace/prefix?
one solution that work is put a mailbox into the parent namespace like: mailbox "Virtual/" { auto = subscribe } nothing in the "namespace myvirt" would work. On 2019-05-08 21:02, MRob via dovecot wrote: FYI in subscription file for namespace I see empty line when the top level prefix is subscribed. Works perfectly just need to make it automatic On 2019-05-08 20:50, MRob via dovecot wrote: In virtual namespace I can have: namespace myvirt { location = blah prefix=Virtual/ separator=/ mailbox "My folder" { auto = subscribe } } And i see email clients successful display subscribed "My folder" but the top-level prefix "Virtual/" is not subscribed. I see the Virtual/ prefix available as a noselect folder in the list of unsubscribed folders and if I manual subscribe to it, folder tree display is perfect. So how can i also make auto-subscription to the "Virtual/" prefix noselect folder?
Do we need ssl_dh_parameters_length in version 2.3
Hi, I couldn't really find documentation about ssl_dh_parameters_length except for mention in passing on the page https://wiki2.dovecot.org/SSL/DovecotConfiguration For version 2.3 and above is that setting necessary? If so what are the values I can use, is setting it high like 4096 beneficial or make any problems for clients? Thanks for assistance.
How to get original recipient from Postfix when using LMTP?
Many people prefer to use LMTP for delivery from postfix for better efficiency but X-Original-to header support still missing after many years. One affect of this is need to set sieve_vacation_dont_check_recipient = yes which violate Sieve standard and cause auto-replyies sent to messages that should not happen. Or abandon LMTP. or abandon postfix?? So while feature request is stalled are there any realistic workarounds?
Re: How to get original recipient from Postfix when using LMTP?
On 2019-05-22 08:18, Tuomo Soini via dovecot wrote: On Tue, 21 May 2019 18:24:46 + MRob via dovecot wrote: Many people prefer to use LMTP for delivery from postfix for better efficiency but X-Original-to header support still missing after many years. One affect of this is need to set sieve_vacation_dont_check_recipient = yes which violate Sieve standard and cause auto-replyies sent to messages that should not happen. Or abandon LMTP. or abandon postfix?? So while feature request is stalled are there any realistic workarounds? add to smtp_recipient_restrictions, before permitting email but after all checks: check_recipient_access pcre:/etc/postfix/recipient_access.pcre # cat /etc/postfix/recipient_access.pcre /(.+)/ prepend X-Original-To: $1 Warning, do not do this unless you don't mind recipients of multi-recipient emails to see a list of everyone who got a copy of the email message, including BCC recipients. This isn't a good solution if you want to respect user privacy.
MailCrypt plugin questions
I read the mailcrypt plugin document on the wiki and had couple questions. 1. If I want per-user encryption am I correct I should configure global keys with all related settings override in the userdb lookup? 2. If I do not want to encrypt some user accounts, is it enough to omit the mail_crypt_global_private_key from the userdb lookup? In other word, mail_plugins still active with mail_crypt, will that cause user account to be encrypted unexpectedly if no private key is given? 3. Example command to create EC key does not ask for password, openssl ecparam command does not seem to have password arg. If I want password-protection should I use RSA key which the doc tell to be discouraged?
Re: MailCrypt plugin questions
1. If I want per-user encryption am I correct I should configure global keys with all related settings override in the userdb lookup? 2. If I do not want to encrypt some user accounts, is it enough to omit the mail_crypt_global_private_key from the userdb lookup? In other word, mail_plugins still active with mail_crypt, will that cause user account to be encrypted unexpectedly if no private key is given? I found answer to this question, set mail_crypt_save_version=0 in userdb 3. Example command to create EC key does not ask for password, openssl ecparam command does not seem to have password arg. If I want password-protection should I use RSA key which the doc tell to be discouraged?
lmtp "Saved" but no maildir file
Hello I have accounts with Maildir (mail_location is empty/default) and postfix using lmtp for delivery. Some account create new file in Maildir/new after each deliver. However a couple account I see lmtp successful delivery but no new file anywhere in the Maildir: lmtp(21379): Connect from local lmtp(me)<21379>: msgid=<...trimmed...>: saved mail to INBOX 370A131BE: to=, relay=email.example.com[private/dovecot-lmtp], delay=0.3, delays=0.22/0.01/0.02/0.01, dsn=2.0.0, status=sent (250 2.0.0 Mbc+GgTmrofPHw4vAMIs8i Saved) lmtp(21379): Disconnect from local: Logged out (state=READY) /home/me/Maildir/new is empty and also try "find /home/me/Maildir -type f | wc -l" but no different before/after Very interesting I can see trace of message in dovecot cache! "grep -r 'domain.from.message.id' /home/" (search all accounts) says: grep: /home/me/Maildir/dovecot.index.cache: binary file matches So dovecot put traces of message into Maildir but no message file after successful "Saved" in logs. What can I do? ___ dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-le...@dovecot.org
Re: lmtp "Saved" but no maildir file
On 2025-02-14 06:13, Aki Tuomi via dovecot wrote: On 14/02/2025 03:53 EET MRob via dovecot wrote: Hello I have accounts with Maildir (mail_location is empty/default) and postfix using lmtp for delivery. Some account create new file in Maildir/new after each deliver. However a couple account I see lmtp successful delivery but no new file anywhere in the Maildir: lmtp(21379): Connect from local lmtp(me)<21379>: msgid=<...trimmed...>: saved mail to INBOX 370A131BE: to=, relay=email.example.com[private/dovecot-lmtp], delay=0.3, delays=0.22/0.01/0.02/0.01, dsn=2.0.0, status=sent (250 2.0.0 Mbc+GgTmrofPHw4vAMIs8i Saved) lmtp(21379): Disconnect from local: Logged out (state=READY) /home/me/Maildir/new is empty and also try "find /home/me/Maildir -type f | wc -l" but no different before/after Very interesting I can see trace of message in dovecot cache! "grep -r 'domain.from.message.id' /home/" (search all accounts) says: grep: /home/me/Maildir/dovecot.index.cache: binary file matches So dovecot put traces of message into Maildir but no message file after successful "Saved" in logs. What can I do? Can you post doveconf -n? Also you can enable mail_debug=yes logs to see more details. Thank you for reply. I had monitored and now some messages are stored correct in the problem accounts, but not sure if delivery count matche file count. Could a connected/idle IMAP client pull messages from server (delete server copy) without notification in log file and leaving message traces in the dovecot cache file? (is that possible explanation?) Postconf is mostly defaults from package install. Ill turn debug yes if i can verify the problem still happening. auth_mechanisms = plain login auth_username_format = %Ln first_valid_uid = 1000 listen = example.com, 127.0.0.1 lmtp_add_received_header = no mbox_write_locks = fcntl namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Sent { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { driver = pam } protocols = imap pop3 lmtp service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } ssl = required ssl_cert =