这是一个奇怪的问题,我倾向于在我的一些 Sendmail+Dovecot 邮件部署中看到通过 IMAP 连接的 Blackberry 设备。对于这些设备的用户,Dovecot 索引往往会被锁定。这会阻止邮件流向 Blackberry 设备以及用户的 Outlook 客户端。/var/log/maillog 中的相应消息如下所示:
May 2 08:13 XXX imap(asmith): Timeout while waiting for release of exclusive fcntl() lock for index file /home/asmith/mail/.imap/INBOX/.imap.index
每次邮箱同步尝试都会重复此操作...
这是一个奇怪的错误,通过删除有问题的索引文件很容易解决。但是,我很好奇错误和锁定状态的根本原因,以及是否可以在配置方面修改某些内容以防止它发生。
在其他情况下,我只有少数 BB 设备需要处理。在这种情况下,添加了 80 个新的黑莓,这种锁定对系统负载和性能有影响。
日志文件中的错误:
userdb lookup: connect(/var/run/dovecot/auth-userdb) failed: Permission denied
(euid=5000(vmail) egid=5000(vmail) missing +r perm: /var/run/dovecot/auth-userdb,
euid is not dir owner)
Run Code Online (Sandbox Code Playgroud)
10-master.conf 部分:
service auth {
# auth_socket_path points to this userdb socket by default. It's typically
# used by dovecot-lda, doveadm, possibly imap process, etc. Its default
# permissions make it readable only by root, but you may need to relax these
# permissions. Users that have access to this socket are able to get a list
# of all usernames and …Run Code Online (Sandbox Code Playgroud) 我正在将我的邮件从旧服务器迁移到新服务器,配置很好(仅限mysql 虚拟帐户和imap),带有 dovecot 和 postfix。它已经在为其他用户运行,我只想将旧帐户从旧服务器合并到新帐户。
迁移进行得很顺利,我只是想知道如何在 UA 客户端中“显示”所有旧邮件。我的意思是,是否有任何dovecot 索引文件或可以重新创建、销毁的文件,以便所有旧邮件都被“标记”为新邮件?
当使用 Postfix/Dovecot 组合时,有没有办法告诉 smtp 服务器(Postfix)不要将邮件存储在磁盘上,而是保留/将它们添加到队列中,直到“维护完成”?
对于磁盘升级、卷扩展、chkdisk 等很有用。
我有一个 Postfix/Dovecot 服务器并运行了大约一周,直到我不得不重新启动它。当我这样做时,事情就停止了。我已经搜索了几个小时但毫无结果。
IMAP 成功验证(尽管 dovecot 被配置为搭载 postfix 验证)。Postfix 不会,而是失败并出现以下错误:SASL authentication failure: cannot connect to saslauthd server: Permission denied
我尝试将 postfix 用户添加到 saslauth 组(不是 sasl,根据几个谷歌结果。)这并没有改变任何东西。Postfix 似乎根本没有/var/spool/postfix/var/目录(它没有/var/,/etc/或任何东西),因此/var/run/saslauthd无法修改任何权限。但是,它在重新启动之前就可以工作,所以我认为这不是问题所在。
我已在调试模式下启动 saslauthd,但它不输出任何内容。我到处搜索并尝试了我能找到的所有解决方案,但似乎没有一个有帮助。
Postfix 配置为PLAINauthLOGIN机制。saslauthd配置为使用 PAM 身份验证(更改为影子没有帮助)。
如果措辞有些不好,我深表歉意,现在是午夜 12 点,我从晚上 9:45 左右就开始处理这个问题。
鸽子会议-n:
# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.14.5-200.fc20.x86_64 x86_64 Fedora release 20 (Heisenbug)
auth_mechanisms = plain login
mail_location = maildir:~/Maildir
mbox_write_locks = fcntl
namespace inbox {
inbox = …Run Code Online (Sandbox Code Playgroud) 我正在尝试将 postfix 和 dovecot 配置为与存储在 MySQL 中的虚拟域一起工作,但是每当邮件从 postfix 传递到 dovecot 时,我都会遇到这个问题。
Apr 26 11:54:40 smtp postfix/pipe[13165]: 20CCE1C30D5: to=<james@domain.ext>, relay=dovecot, delay=45846, delays=45846/0.28/0/0.14, dsn=4.3.0, status=deferred (temporary failure. Command output: lda: Error: user james@domain.ext: Error reading configuration: Invalid settings: postmaster_address setting not given lda: Fatal: Internal error occurred. Refer to server log for more information. )
Run Code Online (Sandbox Code Playgroud)
现在,因为我知道 Google 是如何工作的,所以我发现了很多关于“您需要将 postmaster_address 选项添加到 15-lda.conf 中的 lda 协议行”的参考资料。
是的,这里是输出 doveconf -n
# 2.2.9: /etc/dovecot/dovecot.conf
# OS: Linux 3.13.0-49-generic i686 Ubuntu 14.04.2 LTS ext4
auth_debug = yes …Run Code Online (Sandbox Code Playgroud) 我一直在摆弄main.cf文件很长时间,但仍然找不到原因。我已经使用本教程在 CentOS 7 上使用 Postfix、Dovecot 和 MariaDB设置了电子邮件服务器
这是关于 postfix 的部分:
myhostname = server.example.com
mydestination = localhost, localhost.localdomain
mynetworks = 127.0.0.0/8
inet_interfaces = all
message_size_limit = 30720000
virtual_alias_domains =
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_mailbox_base = /home/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem
smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem …Run Code Online (Sandbox Code Playgroud) 我正在使用 postfix 和 dovecot。
我想从 root 发送和接收电子邮件。
在我使用 SSL/TLS 证书之前,我使用的是未加密的连接。
由于我的电子邮件密码与我的 ssh 密码相同,因此有人可以轻松嗅探流量并以 root 身份登录。
如何更改我的 dovecot 密码以使其与 linux 用户密码不同?
我正在尝试将 spamassassin 检测到的垃圾邮件自动移动到 Debian Jessie 上的垃圾文件夹。
我安装了 Spamassassin 并编辑了配置:
local.cf (spamassassin 文件夹)
rewrite_header Subject *****SPAM*****
Run Code Online (Sandbox Code Playgroud)
main.cf
spamassassin_destination_recipient_limit = 1
Run Code Online (Sandbox Code Playgroud)
master.cf
smtp inet n - - - - smtpd
-o content_filter=spamassassin
spamassassin unix - n n - - pipe
flags=DROhu user=vmail:vmail argv=/usr/bin/spamc -f -e
/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop}
Run Code Online (Sandbox Code Playgroud)
90-plugins.conf (鸽舍)
plugin {
#setting_name = value
sieve = /etc/dovecot/sieve/default.sieve
}
Run Code Online (Sandbox Code Playgroud)
default.sieve
require "fileinto";
if header :contains "X-Spam-Flag" "YES" {
fileinto "Junk";
}
Run Code Online (Sandbox Code Playgroud)
15-mailboxes.conf (后缀)
mailbox Junk {
auto = subscribe
special_use …Run Code Online (Sandbox Code Playgroud) 自从新的 Debian Buster 更新以来,我在 TLSv1.3 方面遇到了一些问题。
问题:我的 iOS 邮件客户端无法连接到我的邮件服务器 (12.2),并且我现在不想升级,因此我尝试找到一种使用 dovecot 禁用 TLSv1.3 的方法。
当前版本是:OpenSSL 1.1.1c 和 Dovecot 2.3.4.1
在 Dovecot 2.3 中,SSL 设置从 ssl_protocols 更改为 ssl_min_protocol。
# Minimum SSL protocol version to use. Potentially recognized values are SSLv3,
# TLSv1, TLSv1.1, and TLSv1.2, depending on the OpenSSL version used.
Run Code Online (Sandbox Code Playgroud)
但我想强制 Dovecot 使用 TLSv1.2,而不是使用最低 SSL 协议,因为 Dovecot 会先尝试可用的最高 SSL 协议 (TLSv1.3)。如果我设置 TLSv1.3,它将不会使用 TLSv1.2。
那么,有人知道如何强制 Dovecot 2.3.4.1 使用 TLSv1.2 吗?
dovecot ×10
postfix ×6
email-server ×2
imap ×2
linux ×2
blackberry ×1
email ×1
files ×1
ios ×1
migration ×1
openssl ×1
sasl ×1
saslauthd ×1
spamassassin ×1
ssl ×1