telnet auth step in Troubleshooting Email guide failing

I am working through

Step 18: See if you can check your email with IMAP or POP3; you can use a mail client or Telnet.

I am attempting to log in with telnet but getting a AUTH error, and can't figure out why.

Here is the Telnet dialogue:

root@adonax:/var/log# telnet 110
Trying 2600:3c01::f03c:92ff:fe93:5fa0...
Connected to
Escape character is '^]'.
+OK Dovecot (Ubuntu) ready.
USER phil
PASS fakepassword
-ERR [AUTH] Authentication failed.

The password as set in /etc/dovecot/users

root@adonax:/etc/dovecot# cat users{Plain}fakepassword

Here is the mail.log listing of the attempt:
Dec 5 11:10:05 adonax dovecot: pop3-login: Disconnected (auth failed, 1 attempts in 76 secs): user=<phil>, method=PLAIN, rip=2600:3c01::f03c:92ff:fe93:5fa0, lip=2600:3c01::f03c:92ff:fe93:5fa0, secured, session=<7F/DqPmYPt0mADwBAAAAAPA8kv/+k1+g>

I found Step 14 of the guide to confusing and ambiguous. Could it be enhanced with an example? I've tried 3 different forms of the "mail_location" line and none work.

A literal copy:
mail_location = maildir:~ #update mail_location

A version without the tilde:
mail_location = maildir:/var/mail/vhosts/%d/%n/

A version with the tilde:
mail_location = maildir:~/var/mail/vhosts/%d/%n/

Here is the rest of this section (/etc/dovecot/conf.d/10-mail.conf):
passdb { driver = passwd-file args = username_format=%u /etc/dovecot/users } userdb { driver = static args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n }

The file structure for receiving mail is the following:

Within /phil, there are multiple files in a subdirectory /new, one of which corresponds to a test email sent from

As far as I can tell, my settings in /etc/postfix/ match correctly (from Step 7):
mydestination = localhost # Virtual domains virtual_minimum_uid = 100 virtual_uid_maps = static:5000 virtual_gid_maps = static:5000 virtual_mailbox_domains =, adonax,, virtual_mailbox_base = /var/mail/vhosts virtual_mailbox_maps = hash:/etc/postfix/virtual_users_list

And, /etc/postfix/virtual_users_list
root@adonax:/var/log# cat /etc/postfix/virtual_users_list

In case this matters, the mail.log verifies that I can send email from an external site to For example, I sent an email to "" from, and the mail.log shows the following (passing the test in Step 13):
Dec 5 10:46:22 adonax postfix/virtual[7402]: 1D4D340240: to=<>, relay=virtual, delay=0.15, delays=0.14/0.01/0/0, dsn=2.0.0, status=sent (delivered to maildir)

I could very much use some help as to what check or try next!

One last note: I was previously able to use the mail utility to fetch test emails sent to my ssh login identity. This now gives an error when I try to use it to log in:
fgphil@adonax:/etc/dovecot$ mail Cannot open mailbox /var/mail/fgphil: Permission denied No mail for fgphil
I am assuming this is due to changing the 10-auth.conf from !include auth-system.conf.ext to !include auth-passwdfile.conf.ext in Step 15.

Clip from 10-auth.conf shown here:
#!include auth-system.conf.ext #!include auth-sql.conf.ext #!include auth-ldap.conf.ext !include auth-passwdfile.conf.ext

4 Replies

Some progress made.

When logging in via telnet, I should have used the following:


instead of

USER phil

This allowed me into the mail program.

How did I find this out? There is a guide posted by Dovecot for debugging authentication issues here

In the first paragraph, they recommend making the logging more verbose but don't specify WHERE to make the changes. The edits to logging should happen in /etc/dovecot/conf.d/10-logging.conf

If using the Linode guide: "Troubleshooting Problems with PostFix, Dovecot, and MySQL", the log files are in the file /var/log/mail.log.

Now on to the next step: to figure out why none of the stored emails in /var/mail/vhosts/ are being found.

More progress. Am now able to read the emails using Telnet.

In Step 14 of "Virtual Domains and Users" we are given the line
mail_location = maildir:~ #update mail_location

Given the earlier instructions at the start of the section (bullet point 4), this line would be much more helpful if it were instead:

mail_location = maildir:/var/mail/vhosts/

In trying to interpret this instruction, I mistakenly left the "~" in when entering the address, and spent a great deal of time wondering why emails were not being located. As I was running the tests from root, I somehow ended up with the directory structure /root/var/mail/vhosts/... and of course no email there, as it was being correctly routed to /var/... not ~/var/....

it seems no one answer to this question, even one from Linode supporters.

@philfrei It sounds like you've figured things out! If not, let the Community know, and we can see if we are able to help.

In regards to your clarity request, I have passed this information along to our Documentation team. For future reference, you are empowered to report or edit any issues you may find on Git Hub. There is a link at the top of every guide under the title. It will look like this:

Contribute on GitHub Report an Issue | View File | Edit File

The links will take you to directly to Git pages for the guide you are looking at!


Please enter an answer

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct