1

My Mail Client looks for new emails in /var/spool/mail/vmail/trest/Maildir, so I changed the location to store mails to this. Nevertheless, the emails come to $HOME/var/spool/mail/vmail/trest/Maildir. How to change the path to /var/spool...? Or how to say Mail Client to look into $HOME/...?

My configuration

$ postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
home_mailbox = /var/spool/mail/vmail/trest/Maildir/
inet_interfaces = all
inet_protocols = all
mail_spool_directory = ~/Maildir
mailbox_command =
mailbox_size_limit = 0
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = hkunst.com
myhostname = hkunst.com
mynetworks = 10.10.0.0/24, 127.0.0.0/8
mynetworks_style = hkunst.com
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter =
relayhost =
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_path = private/auth
smtpd_sasl_type = dovecot
smtpd_tls_auth_only = no
smtpd_tls_cert_file = /etc/ssl/certs/hkunst.com.crt.pem
smtpd_tls_key_file = /etc/ssl/private/hkunst.com.key.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
virtual_mailbox_base = /
virtual_transport = dovecot

and

$ dovecot -n
# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.16.0-4-amd64 x86_64 Debian 8.4 
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = plain login
auth_username_format = %Ln
auth_verbose = yes
auth_verbose_passwords = plain
mail_privileged_group = vmail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    auto = create
    special_use = \Drafts
  }
  mailbox Junk {
    auto = create
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    auto = create
    special_use = \Sent
  }
  mailbox Spam {
    auto = create
    special_use = \Junk
  }
  mailbox Trash {
    auto = create
    special_use = \Trash
  }
  mailbox virtual/All {
    auto = no
    special_use = \All
  }
  prefix = 
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
passdb {
  args = username_format=%u scheme=ssha512 /etc/dovecot/passwd.db
  driver = passwd-file
}
plugin {
  sieve = ~/.dovecot.sieve
  sieve_after = /var/mail/vmail/sieve-after
  sieve_before = /var/mail/vmail/sieve-before
  sieve_dir = ~/sieve
}
protocols = imap lmtp
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener /var/spool/postfix/private/dovecot-auth {
    group = postfix
    mode = 0660
    user = postfix
  }
}
ssl_cert = </etc/ssl/certs/hkunst.com.crt.pem
ssl_cipher_list = ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!ADH:!AECDH:!MD5:!DSS
ssl_client_ca_dir = /etc/ssl/certs
ssl_key = </etc/ssl/private/hkunst.com.key.pem
ssl_protocols = !SSLv2 !SSLv3
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
userdb {
  args = uid=5000 gid=5000 home=/var/mail/vmail/%d/%n
  driver = static
}
protocol lda {
  deliver_log_format = msgid=%m: %$
  mail_plugins = sieve
  postmaster_address = [email protected]
  quota_full_tempfail = yes
  rejection_reason = Your message to <%t> was automatically rejected:%n%r
}
protocol imap {
  imap_client_workarounds = delay-newmail tb-extra-mailbox-sep
  mail_max_userip_connections = 80
  mail_plugins = 
}
protocol pop3 {
  mail_max_userip_connections = 80
  mail_plugins = 
}
1
  • Does your configured SQL table (args = /etc/dovecot/dovecot-sql.conf.ext in your dovecot settings) return a value for chroot? Commented Dec 22, 2020 at 21:27

1 Answer 1

1

I think your virtual_mailbox_base = / and home_mailbox = /var/spool/mail/vmail/trest/Maildir/ are wrong. You can read here:

home_mailbox (default: empty) Optional pathname of a mailbox file relative to a local(8) user's home directory.

You don't have local users but "virtual users" so don't use home_mailbox.


I usually just use:

  • mydomain = domain.eu,
  • virtual_mailbox_domains = domain.eu
  • virtual_mailbox_base = /var/mail/,
  • virtual_mailbox_domains = domain.eu &
  • virtual_mailbox_maps = hash:/etc/postfix/virtual_mailboxes

then I create a folder /var/mail/domain.eu and define "virtual users" and their respective mailboxes (relative to virtual_mailbox_base) inside /etc/postfix/virtual_mailboxes:

[email protected]       domain.eu/info/ 

Then I use command postmap /etc/postfix/virtual_mailboxes to recreate the database /etc/postfix/virtual_mailboxes.db.

So when email for [email protected] arrives it will be stored inside /var/mail/domain.eu/info.

5
  • 1
    I did what you say, now my mails arrives to /var/mail/domain.eu. But Thunderbird still looks in /var/spool/mail/vmail/info/Maildir/cur. When I create a txt file in this location Thunderbird says I get an email. how to say mail client to looks in /var/mail/domain.eu
    – Piotr
    Commented Dec 23, 2020 at 11:43
  • So mail arrives in the right place. This is good. It means Postfix configuration is correct. But mind that postfix is SMTP server and can only be used to configure the SMTP ports i.e. 25, 465 and 587, But not 993 which is IMAPS port and can only be manipulated inside Dovecot. Thunderbird is using port 993 when it searches the email. So you have to configure Dovecot! 1st make sure that your "virtual users" can log in using SASL and then point them to mailboxes using mail_location = maildir:/var/mail/domain.eu/%n inside /etc/dovecot/conf.d/10-mail.conf...
    – 71GA
    Commented Dec 23, 2020 at 12:04
  • ... note though that I suggested using %n for user name. You also have to use the same %n inside sections userdb{} (adjust this parameter args = uid=5000 gid=5000 home=/var/mail/vmail/%d/%n) and passdb{} (adjust this parameter username_format=%u). Also make sure your users are defined in the format that %n expects so make sure you also adjust this file /etc/dovecot/passwd.db so that everything matches. Here is some official help: doc.dovecot.org/configuration_manual/config_file/…
    – 71GA
    Commented Dec 23, 2020 at 12:14
  • 1
    Can I use the same ssl certificate I use for my website?
    – Piotr
    Commented Dec 23, 2020 at 13:19
  • Yes. You can use the same certifficate.
    – 71GA
    Commented Dec 23, 2020 at 14:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .