我遇到了一些邮件问题,正在尝试解决。当我使用 telnet 连接到邮件服务器时,我应该像这样提供我的用户名吗:
USER name
或者
USER [email protected]
或者没关系?
谢谢,
乔
答案1
这取决于您的配置。如果您要向拥有 shell 帐户的人发送邮件,则必须指定用户名,而不是电子邮件地址(域是隐含的,dovecot 不知道如何处理它)。
如果您要向虚拟邮箱用户发送邮件,并且虚拟邮箱使用完整电子邮件地址进行映射,则需要在此处提供电子邮件地址。这完全取决于您如何映射它。
我有一个设置,其中某些用户使用他们的 unix 用户名作为登录名(因为他们有 shell 帐户),而其他用户(在某些托管域上)使用他们的电子邮件地址。这些配置指令使其识别 unix 用户名:
passdb {
args = *
driver = pam
}
userdb {
args = home=/home/%u/.maildir mail=/home/%u/.maildir
driver = passwd
}
这些使它从 SQL 数据库中提取电子邮件地址和密码,然后在文件系统中找到用户名的邮箱:
passdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
userdb {
args = uid=207 gid=207 home=/home/postfix/%u mail=/home/postfix/%u/ nice=10
driver = static
}
它非常灵活。 dovecot-sql.conf
是一个指定要执行的查询、要使用的密码方案和数据库凭据的文件。不过,我怀疑你使用的是前一种方法。