André, are you quite sure you have it working?
In this thread someone from Open-Xchange stated that no, Dovecot doesn’t have SMTPUTF8 support implemented, and the same response was given by another Dovecot developer last September (it ‘is being considered’ was the answer then, see https://dovecot.org/pipermail/dovecot/2018-September/112887.html).
I am using LMTP to deliver mail to Dovecot from Postfix, and delivery fails with Postfix reporting: ‘SMTPUTF8 is required, but was not offered by host mail.my.org[private/dovecot-lmtp]’. I doubt that this can work without a change in Dovecot LMTP.
Anyway, I am also interested in SMTPUTF8 support, so +1 from me!
-- David
On 2019-04-05 08:57, David Bürgin via dovecot wrote:
Hello David,
Well, it seems to work from one Homebox to another, for instance:
Here the server logs:
And the message source:
However, it seems that mails from GMails are not received, and I have an error message from the postfix mailter:
Thanks to you, I have another bug to chase with gmail and postfix cleanup. I could ask Google to use HomeBox, but I am not sure they would agree ;-)
Regarding your issue, there might be many causes.
I remember one, with the dovecot, for the Quota plugin that failed to lookup the user, I had to add "quota_status_nouser = DUNNO", so it does not fail when the user is not found (if I understood well).
Another note, I am using LDAP lookups, _and_ a specific schema for unicode email addresses. Otherwise, this would not work:
root@portal:/etc/postfix# cat ldap-aliases.cf
Basic LDAP settings for postfix
server_host = ldap://ldap.homebox.space/ start_tls = yes
search_base = dc=homebox,dc=space search_scope = sub
Allow advanced LDAP search with the recipient delimiter
query_filter = (|(mail=%s)(intlMailAddr=%s)) result_attribute = mail
Force support for UTF8
version = 3
Thanks to this, ldap lookup is unicode compliant:
root@portal:/etc/postfix# postmap -q andré@homebox.space ldap:/etc/postfix/ldap-aliases.cf andre@homebox.space
The LDAP schema for internationalised email addresses:
As I wrote earlier, All the software in the chain should be UTF-8 ready
-- André Rodier HomeBox: https://github.com/progmaticltd/homebox
Well, what a puzzle. I will have to investigate. I also tried it with Gmail, and the failure was definitely between Postfix and Dovecot LMTP, with Dovecot failing to advertise SMTPUTF8 support. My setup is much more minimal, I use file-based virtual mailboxes and aliases, and only OpenDKIM and SpamAssassin milters.
Thank you for your reply, André!
I’m afraid there is a possibility that your setup only works by chance … I don’t think Dovecot LMTP is SMTPUTF8-capable according to RFC 6531. It needs to advertise the SMTPUTF8 extension but doesn’t.
nc -U /var/spool/postfix/private/dovecot-lmtp
220 mail.my.org Dovecot ready. LHLO mail.my.org 250-mail.my.org 250-STARTTLS 250-8BITMIME 250-ENHANCEDSTATUSCODES 250 PIPELINING
-- David
Am 05.04.19 um 22:36 schrieb David Bürgin via dovecot:
Dovecot doesn't know anything about SMTPUTF8 as that has not been implemented in either LDA or LMTP as of now.
Worse, it will create bounces on postfix accepted UTF8 localpart addresses as per https://www.dovecot.org/pipermail/dovecot/2019-March/115286.html
This one is tracked as DOP-1045 as per Aki's email linked above.
No idea when SMTPUTF8 will be implemented. It will create a big mess as Postfix with smtputf8=on defaults are being used _and_ people start using UTF8 localparts. Cf. http://www.postfix.org/COMPATIBILITY_README.html#smtputf8_enable for postfix info.
You should configure a Postfix that delivers to Dovecot with smtputf8_enable=no until Dovecot learns SMTPUTF8. But even in such a defensive setup Dovecot LDA and LMTP can still create backscatter spam bounces as explained in the mailinglist thread linked above.
On 5 Apr 2019, at 13:47, André Rodier via dovecot <dovecot@dovecot.org> wrote:
root@portal:/etc/postfix# postmap -q andré@homebox.space ldap:/etc/postfix/ldap-aliases.cf andre@homebox.space
You have a solution that properly maps UTF to a non-UTF namespace. As I understand it, SMTPUTF8 uses a UTF8 namespace.
So, this would indicate SMTPUTF8
postmap -q andré@homebox.space ldap:/etc/postfix/ldap-aliases.cf
andré@homebox.space
It's a hard problem to solve because you have to, as you've already discovered, replace the entire chain with SMTPUTF8 compatible tools all at once.
-- Is it my imagination, or do buffalo wings taste like chicken?
On 05/04/2019 08:57, David Bürgin via dovecot wrote:
Hello David et al,
I have it working with my set up, and I confirm it is not easy.
If I limit the stack to OpenLDAP, Postfix and Dovecot to their simplest configuration, it is relatively easy, even with slightly outdated software in Debian Stretch.
The trick I am using is to include the internationalised email address aside the main one, and to use Postfix LDAP lookup.
For instance, I am using this LDAP schema: https://tools.ietf.org/html/draft-stroeder-mailboxrelatedobject-07
So, my LDAP lookup table for Postfix looks like this:
# Basic LDAP settings for postfix
server_host = ldap://ldap.rodier.me/
start_tls = yes
search_base = dc=rodier,dc=me
search_scope = sub
# Allow advanced LDAP search with the recipient delimiter
query_filter = (|(mail=%s)(intlMailAddr=%s))
result_attribute = mail
# Force support for UTF8
version = 3
Therefore, postmap query works as expected:
postmap -q andré@rodier.me ldap:/etc/postfix/ldap-aliases.cf
andre@rodier.me
That said, if only one of the milter reject your message, it is breaking the whole chain.
For instance, the quota plugin for Dovecot, I had to use DUNNO when the user is unknown instead of reject.
I have it working perfectly from Homebox to Homebox, so perhaps Postfix to Postfix, but I reckon I still have some bugs.
Some providers are working, others not. Outlook does not seems to work , but I am on it. Yahoo does not let you type an accent in the email address, only Google allows you to.
However, I made a test yesterday, and realised that the emails from GMail are rejected by one of the plugin, and I need to investigate which one. The error message is:
So perhaps it is one of the milter. I will investigate today.
Also, it seems the client is important. I have no problem with SOGo or Evolution. Roundcube and Thunderbird, in Debian Stretch, don't support this yet.
With Debian Buster coming soon, I am sure this will work better. I will create a branch to test this. My preliminary investigations don't show major problems in the upgrade.
At one point, I was using the Dovecot packages from backports, but I reverted this as there has been an incompatibility.
Happy to answer more questions if you have.
-- André Rodier
On 06/04/2019 10:07, André Rodier via dovecot wrote:
I think you are confusing acceptance of UTF8 in the localpart of the email address (which if I remember correctly worked in the 2.2 branch) with SMTPUTF8 support. As mentioned in the thread above Dovecot does not as yet support SMTPUTF8. Support for SMTPUTF8 would mean among other things changing the source code of Dovecot so that it announces the SMTPUTF8 key word to the upstream MTA.
John
On Sat, 2019-04-06 at 11:19 +0200, John Fawcett via dovecot wrote:
Hello John,
You are probably right.
I am not well aware of the low level details and the terminology.
I confess I am mostly interested in the proper reception of the emails with accentuated user names, which is already sometimes difficult to achieve.
Is there any link where I can learn the communication rules between Dovecot and Postfix and the SMTPUTF8 standard ?
Kind regards, André
-- André Rodier HomeBox: https://github.com/progmaticltd/homebox
On 06/04/2019 11:34, André Rodier via dovecot wrote:
André
Daniel Lange has posted some links to this topic from Postfix and earlier discussions on the mailing list.
Postfix has this SMTPUTF8 documentation:
http://www.postfix.org/SMTPUTF8_README.html
On that page you can also find links to the relevant standards including SMTPUTF8 standard.
John
participants (6)
-
@lbutlr
-
André Rodier
-
Daniel Lange
-
David Bürgin
-
John Fawcett
-
Michael Slusarz