我已经在DigitalOcean上安装了后缀/dovecot邮件服务。我正在使用由letsencrypt提供的证书。syslog中没有与证书问题相关的错误。
我使用mysql来存储虚拟用户。
连接字符串是:
connect = host=127.0.0.1 dbname=servermail user=usermail password=REDACTED (使用正确的密码,测试正常,启动时没有报告连接错误)
当我试图从客户端连接时,我在日志中看到如下内容:
4月04 10:15:43 imap-登录: Info: Disconnected (未成功,2秒内1次尝试):user=,method=PLAIN,rip=42.115.84.125,lip=206.189.150.255,TLS: Disconnected,session=
收到的邮件正在由Postfix成功地传送。
多维柯-n输出
# 2.2.33.2 (d6601f4ec): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.21 (92477967)
# OS: Linux 4.15.0-47-generic x86_64 Ubuntu 18.04.2 LTS ext4
auth_mechanisms = plain login
log_path = /var/log/dovecot.log
mail_location = maildir:/var/mail/vhosts/%d/%n/
mail_privileged_group = mail
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
}
passdb {
args = /etc/dovecot/deny-users
deny = yes
driver = passwd-file
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
postmaster_address = dev@vietfeir.com
protocols = imap lmtp
service auth-worker {
user = vmail
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0666
user = postfix
}
unix_listener auth-userdb {
mode = 0600
user = vmail
}
user = dovecot
}
service imap-login {
inet_listener imap {
port = 0
}
inet_listener imaps {
port = 993
ssl = yes
}
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0600
user = postfix
}
}
service pop3-login {
inet_listener pop3 {
port = 0
}
inet_listener pop3s {
port = 995
ssl = yes
}
}
ssl = required
ssl_cert =
请给我一些疑难解答的建议。
下面是用于在数据库中创建用户的SQL查询:
INSERT INTO `servermail`.`virtual_users`
(`domain_id`, `password` , `email`)
VALUES
('1', ENCRYPT('*REDACTED*!', CONCAT('$6我的客户端(Bluemail)可以选择普通的或填充的MD5密码。前景似乎只允许简单,所以我认为这可能是问题所在,因为我选择了一个基于SHA的方案。(SHA512 512-地窖), SUBSTRING(SHA(RAND()), -16))), 'dennis@vietfeir.com')
我的客户端(Bluemail)可以选择普通的或填充的MD5密码。前景似乎只允许简单,所以我认为这可能是问题所在,因为我选择了一个基于SHA的方案。(SHA512 512-地窖)
发布于 2019-04-03 21:11:28
您的身份验证后端看起来不像是已设置为处理数据库.passdb应该以sql作为驱动程序,并指向包含验证存储在数据库中的密码所需的连接字符串和查询的文件。
我建议看一看https://wiki.dovecot.org/AuthDatabase/SQL的细节和https://www.linode.com/docs/email/postfix/email-with-postfix-dovecot-and-mysql/#dovecot (7项以上)的演练。
https://serverfault.com/questions/961415
复制