我正在尝试使用本文设置邮件服务器 。基本上使用 postfix 和 dovecot。
我有一个有效的测试设置,但我不明白一些(很多)内容,并试图在迁移之前纠正它。
在许多事情中,这是最令人困惑的:我不明白 $virtual_mailbox_maps 的第二个参数部分是如何工作的。
我在 main.cf 中有以下内容:
virtual_mailbox_maps = hash:/etc/postfix/virtual-mailbox-users
Run Code Online (Sandbox Code Playgroud)
我的 /etc/postfix/virtual-mailbox-users 看起来像
user@domain1.com user@domain1.com
user@domain2.com user@domain2.com
etc, etc.
Run Code Online (Sandbox Code Playgroud)
首先,在哪里可以找到第二个参数user@domain1.com格式的文档,大多数格式都是文件或目录的形式(如/a/b/c)。
如果我用其他参数替换第二个参数,例如,
user@domain1.com /tmp/foo
Run Code Online (Sandbox Code Playgroud)
然后我可以将邮件发送到 user@domain1.com,但不能发送邮件,这会导致:
我的第二个问题: SMTP 使用 $virtual_mailbox_maps 吗?(为什么,因为它已经将电子邮件地址作为关键参数?)。dovecot 是否使用 $virtual_mailbox_maps?
(我还有很多问题,但这可能会帮助我解决一些问题。例如,我可以将所有发送到 user@domain*.com 的邮件发送到其中一个邮箱,例如 user@domain1.com 吗?)
(请原谅标题的声明性,我的原作以“如何”开头,但被拒绝了。)
我做了一个实验,我将 $virtual_mailbox_maps 条目替换为 ,并且user@domain1.com OK发送成功,但发送电子邮件失败(发件人地址被拒绝:不属于用户)。因此,右侧(值)很重要。这就是我的第一个问题。(我已经阅读了描述格式等的各种文档,但找不到任何专门讨论与 SMTP 交互的内容。
附录:感谢@masegaloeh 追踪此问题。相关配置如下,smtpd_sender_login_maps剩下的“google”解释了。
root@generic:/etc/postfix# postconf -n| grep smtpd_sender
smtpd_sender_login_maps = $virtual_mailbox_maps
smtpd_sender_restrictions = reject_unknown_sender_domain, reject_sender_login_mismatch
Run Code Online (Sandbox Code Playgroud) 目前我在 dovecot.conf 中使用它:
protocol imap {
mail_plugins = "autocreate"
}
plugin {
autocreate = Trash
autocreate2 = Sent
autosubscribe = Trash
autosubscribe2 = Sent
}
Run Code Online (Sandbox Code Playgroud)
我的日志显示:警告:自动创建插件已弃用,请使用邮箱 { auto } 设置
我检查了此页面,但我无法将当前设置“翻译”为应有的设置。
我想知道是否有一种方法可以仅从一个帐户管理多个电子邮件帐户。我有大约 40 或 50 个外部 POP3 电子邮件帐户,有没有办法将来自这些帐户的所有条目电子邮件转发到仅 1 个,然后当从该帐户回复时,最终用户会从他写的那个帐户中看到它?
示例:用户 (user@user.com) 向我的一个帐户 (email@first.com) 发送一封电子邮件,该电子邮件被转发到我的个人帐户 (email@personal.com),我从我的个人帐户回复,但用户 (user@user.com) 看到它来自 (email@first.com),以及我所有的帐户。
无论如何设置来做到这一点?无论如何要使用自定义程序来做到这一点?
我的服务器是基于 Linux 的,安装了 postfix 和 dovecot。
谢谢
我的系统是centos 7。我正在根据这篇文章设置带有postfix、dovecot、mariadb的邮件服务器。
我的邮件服务器有问题,可以发送邮件但无法接收邮件。
然后我postconf -n,结果如下:
[root@server6328 log]# postconf -n
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_sender_restrictions
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_client_restrictions
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_helo_restrictions
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_sender_restrictions
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_client_restrictions
postconf: warning: /etc/postfix/master.cf: undefined parameter: mua_helo_restrictions
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = …Run Code Online (Sandbox Code Playgroud) 我无法找到任何有关如何强制 Dovecot 在证书更新时重新读取证书的文档。
此刻我正在做
/bin/systemctl restart dovecot
Run Code Online (Sandbox Code Playgroud)
有谁知道这是否会导致重新启动期间中断,或者 dovecot 是否干净地终止旧会话并允许使用新配置启动新会话?任何人都可以建议强制 dovecot 重新加载其 SSL 证书且影响最小的最佳实践吗?
在 Debian Squeeze 系统上,我使用 Dovecot 运行 IMAP 服务器,消息以 Maildir 格式存储。该服务器由各种客户端访问,包括 Thunderbird、Evolution 和 RoundCube。
当用户删除邮件时,它会被移动到垃圾箱文件夹。(我不确定在移动消息时是否所有客户端也将消息标记为已删除。)但是,除此之外没有采取任何措施。因此,我被迫每隔几个月定期提醒所有用户明确清空他们的垃圾箱。
Dovecot 是否提供了一种简单的方法来自动删除超过 n 天的垃圾邮件?我已经看到提到删除 cron 作业,但它似乎删除了所有超过特定天数的消息,而不是仅删除垃圾箱中的消息。
我正在尝试使用 postgresql 支持配置 Dovecot + Postfix + PostfixAdmin。我成功配置了 postfix 以将电子邮件发送到我的域的别名,现在我想在我的服务器上配置实际的邮箱支持。我遵循了 dovecot 2 wiki ( http://wiki.dovecot.org/AuthDatabase/SQL )上数据库支持的配置选项,dovecot 启动时没有错误,但在第一次尝试通过 IMAP 连接时,dovecot 在邮件日志上抱怨:
auth: Fatal: Unknown database driver 'pgsql'
Run Code Online (Sandbox Code Playgroud)
我确定 dovecot 有 postgres 支持,这里是 dovecot --build-options 的输出:
Build options: ioloop=epoll notify=inotify ipv6 openssl io_block_size=8192
Mail storages: cydir dbox maildir mbox mdbox raw shared
SQL driver plugins: mysql postgresql sqlite
Passdb: checkpassword ldap pam passwd passwd-file shadow sql
Userdb: checkpassword ldap(plugin) nss passwd prefetch passwd-file sql
Run Code Online (Sandbox Code Playgroud)
附加信息:
/etc/dovecot/conf.d/auth-sql.conf.ext
passdb {
driver = pgsql
# …Run Code Online (Sandbox Code Playgroud) 我们通过 Dovecot(基于本教程)将 Postfix 与 Dovecot 和 SASL Auth 一起使用。一切都按预期工作。但是,当达夫科特下跌(即用于维护或其他原因),那么客户端可以在不进行身份验证的Postfix和Postfix拒绝,因为客户端请求smtpd_recipient_restrictions后随访permit_sasl_authenticated。
当 Dovecot 身份验证关闭时,有没有办法暂时拒绝到达 Postfix 的邮件?我们的后缀配置是:
smtpd_restriction_classes = check_sender_auth
check_sender_auth =
reject_authenticated_sender_login_mismatch,
permit_sasl_authenticated,
reject
smtpd_recipient_restrictions =
reject_invalid_helo_hostname,
reject_non_fqdn_recipient,
check_sender_access mysql:/etc/postfix/check_sender_domains,
reject_non_fqdn_helo_hostname,
[...]
Run Code Online (Sandbox Code Playgroud)
check_sender_domains是一个查找表,返回check_sender_auth声称来自我们的发件人地址。
我在使用 SenderBase 时遇到问题。我的 IP 没有在任何 BL 中被阻止,但是使用 SenderBase/Ciscos 东西的人没有收到我的电子邮件。这是因为我的电子邮件系统设置不当吗?
他们列出了以下内容:
我只有我的网站运行 CPanel。据我所知,没有垃圾邮件或滥用。我应该检查什么以确保邮件系统 (Exim) 符合标准?我的服务器配置得很好,所以在我不知情的情况下,我看不到系统被滥用。
我应该确保我的电子邮件服务器符合哪些标准?
我一直在尝试运行一个 dovecot/postfix 服务器来为我的初创企业提供电子邮件服务,但我也成为写得不好、过时的指南的受害者。
起初我安装了 Postfix 和 Dovecot,并选择了一个空配置,认为我会自己配置它。在某个时候,我忘记了我实际在做什么以及我配置了什么,所以我决定apt-purge我安装的所有软件包并重新开始。
尝试使用 安装 dovecot 后sudo apt-get install dovecot-imapd,我遇到了以下错误:
The following NEW packages will be installed:
dovecot-imapd
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/425 kB of archives.
After this operation, 565 kB of additional disk space will be used.
Selecting previously unselected package dovecot-imapd.
(Reading database ... 23009 files and directories currently installed.)
Unpacking dovecot-imapd (from .../dovecot-imapd_1%3a2.1.7-7_amd64.deb) ...
Setting up dovecot-imapd …Run Code Online (Sandbox Code Playgroud)