1.6. 配置 LMTP 套接字和 LMTPS 侦听器
SMTP 服务器(如 Postfix)使用本地邮件传输协议(LMTP)向 Dovecot 发送电子邮件。如果 SMTP 服务器运行:
- 在与 Dovecot 相同的主机上,使用 LMTP 套接字
在其他主机上,使用 LMTP 服务
默认情况下,LMTP 协议没有加密。但是,如果您配置了 TLS 加密,则 Dovecot 会自动对 LMTP 服务使用相同的设置。然后,SMTP 服务器可以使用 LMTPS 协议或 LMTP 上的
STARTTLS
命令连接它。
先决条件
- Dovecot 已安装。
- 如果要配置 LMTP 服务,TLS 加密会在 Dovecot 中配置。
流程
验证 LMTP 协议是否已启用:
# doveconf -a | egrep "^protocols" protocols = imap pop3 lmtp
如果输出包含
lmtp
,则该协议已启用。如果
lmtp
协议被禁用,请编辑/etc/dovecot/dovecot.conf
文件,并将lmtp
附加到protocols
参数中的值:protocols = ... lmtp
根据您是否需要 LMTP 套接字或服务,在
/etc/dovecot/conf.d/10-master.conf
文件的service lmtp
部分中进行以下更改:LMTP 套接字:默认情况下,Dovecot 会自动创建
/var/run/dovecot/lmtp
套接字。可选:自定义所有权和权限:
service lmtp { ... unix_listener lmtp { mode = 0600 user = postfix group = postfix } ... }
LMTP 服务:添加一个
inet_listener
子部分:service lmtp { ... inet_listener lmtp { port = 24 } ... }
配置
firewalld
规则,以只允许 SMTP 服务器访问 LMTP 端口,例如:# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.0.2.1/32" port protocol="tcp" port="24" accept" # firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv6" source address="2001:db8:2::1/128" port protocol="tcp" port="24" accept" # firewall-cmd --reload
IPv4 的子网掩码
/32
和 IPv6 子网掩码/128
限制对指定地址的访问。重新载入 Dovecot:
# systemctl reload dovecot
验证
如果您配置了 LMTP 套接字,请验证 Dovecot 是否已创建套接字,以及权限是否正确:
# ls -l /var/run/dovecot/lmtp srw-------. 1 postfix postfix 0 Nov 22 17:17 /var/run/dovecot/lmtp
配置 SMTP 服务器,以使用 LMTP 套接字或服务向 Dovecot 提交电子邮件。
使用 LMTP 服务时,请确保 SMTP 服务器使用 LMTPS 协议或发送
STARTTLS
命令以使用加密连接。
其他资源
-
/usr/share/doc/dovecot/wiki/LMTP.txt