1

I've been at this for several days and, in spite of countless searches, haven't been able to find a solution.

I host several domains in a vps and have all email forwarded to gmail addresses, which works, but I'd like to set up my own email, so I don't have to rely on gmail anymore.

Postfix and Dovecot were installed according to the instructions here: Email with Postfix, Dovecot and MariaDB on CentOS 7

Figuring that since Squirrelmail is the most basic email client out there, I decided to start with that. It took me a few days trying to get it to receive and send email (I had to disable https access to at least have the page load - will deal with this later, and TLS is also disabled - there's no need for this if it runs in the same server as everything else).

Displaying the page correctly, though, seems a whole 'nother story. On the left panel, where the folders list is supposed to appear, I get "ERROR: Could not complete request. Query: CREATE "Sent" Reason Given: Client tried to access nonexistent namespace. (Mailbox name should probably be prefixed with: INBOX.)". Based on everything I've read (and it's been a lot), I believe that the problem is dovecot, but I might be wrong.

If someone can point out what is wrong with my configuration, I would be more than grateful.

Below are all the config files I could think of: (confidential information replaced by ####'s)

/etc/dovecot/dovecot.conf:

protocols = imap pop3 log_timestamp = "%Y-%m-%d %H:%M:%S " mail_location = maildir:/home/vmail/%d/%n/Maildir

ssl_cert = </etc/pki/dovecot/certs/dovecot.pem ssl_key = </etc/pki/dovecot/private/dovecot.pem

namespace {
    type = private
    separator = .
    prefix = INBOX.
    inbox = yes }

service auth {
    unix_listener auth-master {
        mode = 0600
        user = vmail
    }

    unix_listener /var/spool/postfix/private/auth {
        mode = 0666
        user = postfix
        group = postfix
    }

user = root }

service auth-worker {
    user = root }

protocol lda {
    log_path = /home/vmail/dovecot-deliver.log
    auth_socket_path = /var/run/dovecot/auth-master
    postmaster_address = postmaster@##########.com }

protocol pop3 { pop3_uidl_format = %08Xu%08Xv }

passdb {
    driver = sql
    args = /etc/dovecot/dovecot-sql.conf.ext }

userdb {
    driver = static
    args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes }

/etc/dovecot/conf.d/10-mail.conf: (comments removed for simplicity)

namespace inbox {
  inbox = yes
  list = yes
}

EDIT - As per Jens' request, here's the output from "doveconf -n:"

After removing the namespace declaration from dovecote.conf, Squirrelmail is working.

# 2.2.10: /etc/dovecot/dovecot.conf
# OS: Linux 4.5.0-x86_64-linode65 x86_64 CentOS Linux release 7.4.1708 (Core)  ext4
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_location = maildir:/home/vmail/%d/%n/Maildir
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocols = imap pop3
service auth-worker {
  user = root
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener auth-master {
    mode = 0600
    user = vmail
  }
  user = root
}
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
  args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes
  driver = static
}
protocol lda {
  auth_socket_path = /var/run/dovecot/auth-master
  log_path = /home/vmail/dovecot-deliver.log
  postmaster_address = postmaster@#######.com
}
protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
}

1 Answers1

0

Thanks for your help, Jens!

After removing the duplicate namespace definition (once in /etc/dovecot/dovecot.conf and then again in /etc/dovecot/conf.d/10-mail.conf) and leaving only the one from 10-mail.conf, Squirrelmail works normally.

When namespace is declared in both files, "dovecot -n" returns the same as shown in my first post (above), except that the namespace section looks like this:

namespace {
  inbox = yes
  location = 
  prefix = INBOX.
  separator = .
  type = private
}

With the namespace declaration in both config files, Thunderbird and Squirrelmail complain with the same error message. Roundcube, however, is perfectly happy.

"dovecot -n" doesn't report an issue either way.

Alex