Dovecot LMTP temporary errors

krstjn

New member
Joined
Jun 5, 2020
Messages
3
Hi,
Anyone have any ideas, what could be causing issues with Dovecot LMTP delivering e-mails.
Client1 has E-Mail Forwarding configured to forward emails to their other domain client2.com (and some other external users), but initial delivery fails. After some time, usually around 1 hours later, it gets delivered. There are other forwardings configured and they work just fine.

So far I've deleted the forwarding and recreated it and deleteing some dovecot.* files, but alas still keep getting same temporary error.
I have checked permissions, which seem good and correct. Since it only delays delivery, I figure, it isn't the actual problem.

dovecot-lmtp.log:
...... failed: Permission denied (euid=1114(client1) egid=8(mail) missing +x perm: /home/client2, dir owned by 1080:1004 mode=0710) save failed to INBOX: Internal error occurred. Refer to server log for more information. [2020-06-23 09:51:50] (received-date)

dovecot-lmtp-error.log:
Jun 23 09:51:50 lmtp(user@client1.com)<3156><IozhJP558V5UDAAAP8j18Q:2>: Error: lmtp-server: conn unix:pid=25286,uid=8 [1]: rcpt info@client2.com: Mailbox INBOX: stat(/home/client2/imap/client2.com/info/Maildir/new/1592883710.M623458P3156.xx.xx.com,S=10778,W=10957) failed: Permission denied (euid=1114(client1) egid=8(mail) missing +x perm: /home/client2, dir owned by 1080:1004 mode=0710)
 

Active8

Verified User
Joined
Jul 13, 2013
Messages
370
seems to me you have permission errors
try to rebuild your dovecot if that doesnt help you can reset the filepermissions on your server ,please make s search on this forum for the script
 

krstjn

New member
Joined
Jun 5, 2020
Messages
3
seems to me you have permission errors
try to rebuild your dovecot if that doesnt help you can reset the filepermissions on your server ,please make s search on this forum for the script
Thanks for the reply.
Unfortunately Dovecot rebuild didn't help.

I'm assuming the script is located /usr/local/directadmin/scripts/set_permissions.sh. BUT very hesitant running it, mainly beacause I don't think it's a premissions issue. Why does the alias destination domain (client1.com) need access to client2 (client2.com) folder to foward an e-mail??
"Permission denied (euid=1114(client1) egid=8(mail) missing +x perm: /home/client2, dir owned by 1080:1004 mode=0710)"

So far we found a workaround by changing the destination of the fowarder info@client2.com from user@client1.com -> user@client2.com and adding a new fowarder user@client2.com to the orignial problematic address user@client1.com. And it works just fine... very strange.
 

DirectAdmin Support

Administrator
Staff member
Joined
Feb 27, 2003
Messages
9,051
I'm suspicious of the uid values in:
/etc/virtual/client2.com/passwd

It might have 1114(client1) in there, but should be filled with 1080(client2).

It also makes reference to /home/client2... and not /home/client2/imap/... .. so check:
Code:
ls -lad /home/client2
which should be client2:access and 710. If group 1004 is not "access", then that's possibly the issue.

The /etc/virtual/client2.com/passwd can get a full rewrite using
Code:
echo "action=rewrite&value=email_passwd&user=client2" >> /usr/local/directadmin/data/task.queue
Check it before and after to see what changed... maybe copy it to passwd2 first so you can run a diff on it (if there is need to know the 'why' of it)
 

krstjn

New member
Joined
Jun 5, 2020
Messages
3
I'm suspicious of the uid values in:
/etc/virtual/client2.com/passwd

It might have 1114(client1) in there, but should be filled with 1080(client2).
Checked and all values/users there have 1080.

It also makes reference to /home/client2... and not /home/client2/imap/... .. so check:
Code:
ls -lad /home/client2
which should be client2:access and 710. If group 1004 is not "access", then that's possibly the issue.
It seems to be correct:
Code:
drwx--x--- 8 client2 access 4096 aug    5  2018 /home/client2

From /etc/group:
access:x:1004:apache,nobody,mail,majordomo,daemon,ftp
The /etc/virtual/client2.com/passwd can get a full rewrite using
Code:
echo "action=rewrite&value=email_passwd&user=client2" >> /usr/local/directadmin/data/task.queue
Check it before and after to see what changed... maybe copy it to passwd2 first so you can run a diff on it (if there is need to know the 'why' of it)
No changes
 
Top