On 5 Jan 2023, at 18:17, dovecot@ptld.com wrote:

service lmtp {
inet_listener lmtp {
address = 127.0.0.1
port = 24
}

unix_listener /var/spool/postfix/private/lmtp {
mode = 0660
user = postfix
group = postfix
}


Looks like you are activating both a socket and a port. Im not sure what dovecot does, does it bind to both or does it pick one and ignore the other. You only need to use one or the other.

And what does your postfix side look like? Where is postfix trying to connect? To the socket or the port? For using a socket postfix would look something like:

   virtual_transport = lmtp:unix:private/lmtp


I removed the tcp port for now.

/ # doveconf service/lmtp
service lmtp {
  chroot = 
  client_limit = 1
  drop_priv_before_exec = no
  executable = lmtp
  extra_groups = $default_internal_group
  group = 
  idle_kill = 0
  privileged_group = 
  process_limit = 0
  process_min_avail = 0
  protocol = lmtp
  service_count = 0
  type = 
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    group = mail
    mode = 0660
    user = postfix
  }
  unix_listener lmtp {
    group = 
    mode = 0666
    user = 
  }
  user = 
  vsz_limit = 18446744073709551615 B
}

postfix config:

mailbox_transport = lmtp:unix:private/dovecot-lmtp
virtual_transport = lmtp:unix:private/dovecot-lmtp

I had confused postfix's own lmtp socket with dovecot's, which was originally named dovecot-lmtp but when it wasn't created I though my config was wrong.

What seems to happen is that /var/spool/postfix/private/dovecot-lmtp isn't created by dovecot at launch, but /var/spool/postfix/private/auth is

G