Edit
Dovecotとは

POP3やIMAPによるメールサーバー。postfix との親和性が高く利用シェアも高い。

Edit
設定

/etc/dovecot/conf.d 以下に設定ファイルがある。またユーザーが unix システムのままになっているので、それも合わせて修正する。

10-mail.conf ではメールフォルダの方式(postfixの設定に合わせる)を指定する。

mail_location = maildir:~/Maildir

10-auth.conf では、auth方式に login を追加する。

auth_mechanisms = plain login
.....
# 下記の様にコメントアウト修正
#!include auth-system.conf.ext        <- コメント
!include auth-passwdfile.conf.ext     <- コメント解除
!include auth-static.conf.ext         <- コメント解除

auth-passwdfile.conf.extには参照するパスワードファイルの情報を記述(ファイルの記述方法は下記で説明)

passdb {
  driver = passwd-file
  args = scheme=CRYPT username_format=%u /etc/dovecot/users
}

auth-static.conf.extには、ヴァーチャルメールボックス(バーチャルユーザーのメールを保存する場所)を監理するユーザーを指定。この場合このユーザーのunixユーザーとしての追加を忘れないこと。

userdb {
  driver = static
  args = uid=mail_admin gid=mail_admin home=/home/mail_admin/%d/%u
}

10-master.conf では、postfix のsmtp認証の設定がコメントアウトされているので、ソケット情報を修正追加する。

service_auth {
  .....
  # Postfix smtp-auth
  unix_listener /var/spool/postfix/private/auth {
     mode = 0666
     user = postfix
     group = postfix
  }
  .....
}

auth-passwdfile.conf.ext で記述されている、/etc/dovecot/users ファイルを作成する。SMTP認証する場合にはこのユーザー名(バーチャルドメイン用にユーザーにはドメイン名も付ける)

/etc/dovecot/users
  myuser@mydomain.com:{PLAIN}xxxxxxxx

※ xxxxxx はユーザーのパスワード

ユーザーDBの確認には以下のコマンドを利用する。

# doveconf -n

Edit
テスト

SSL設定されていない場合

# telnet localhost 143

SSL設定されている場合

# openssl s_client -connect localhost:imaps

STARTTLSのチェック

# telnet localhost 143
  a STARTTLS

OKが表示されればTLS接続できている。

Edit
ログの詳細表示

/etc/dovecot/dovecot.conf
  auth_verbose = yes
  auth_debug = yes

その後dovecotをリスタート後、/var/log/maillogの中を確認。

Edit
補足:自己サーバー証明書の作成

# openssl genrsa 2024 > server.key
# openssl req -new -key server.key > server.csr
# openssl x509 -req -days 3650 -signkey server.key < server.csr > server.crt