Postfix

無法將電子郵件接收到我的郵件伺服器

  • February 25, 2021

我按照本教程創建了一個郵件伺服器:

https://www.linode.com/docs/email/postfix/email-with-postfix-dovecot-and-mysql

我在我的電子郵件客戶端、SMTP 和 IMAP 上配置了電子郵件,並且兩個連接都正常工作,我可以將電子郵件從我的電子郵件地址 (example@domain.com) 發送到另一個 (example@gmail.com),我也可以閱讀它,但是當我發送到我的電子郵件伺服器的電子郵件地址(example@domain.com)時,它會發送,但我在 example@domain.com 的收件箱中看不到它…

創建了一個 mx 記錄:example.com mx 10 example.com

並創建了一個 spf 記錄:v=spf1 a mx ~all

郵件伺服器位於 Ubuntu 14.04.1 桌面上。

結果dovecot -n

# 2.2.9: /etc/dovecot/dovecot.conf
# OS: Linux 3.13.0-44-generic x86_64 Ubuntu 14.04.1 LTS ext4
auth_mechanisms = plain login
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/dovecot-sql.conf.ext
 driver = sql
}
protocols = imap pop3 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
 }
}
service lmtp {
 unix_listener /var/spool/postfix/private/dovecot-lmtp {
   group = postfix
   mode = 0600
   user = postfix
 }
}
service pop3-login {
 inet_listener pop3 {
   port = 0
 }
}
ssl = required
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
userdb {
 args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
 driver = static
}

結果netstat -panet

tcp        0      0 0.0.0.0:995             0.0.0.0:*               ESCUTA      0          11309       986/dovecot     
tcp        0      0 0.0.0.0:7300            0.0.0.0:*               ESCUTA      1001       13485       1371/perl       
tcp        0      0 192.168.1.104:27754     0.0.0.0:*               ESCUTA      1001       13484       1371/perl       
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               ESCUTA      117        11024       1134/mysqld     
tcp        0      0 0.0.0.0:587             0.0.0.0:*               ESCUTA      0          11611       1232/master     
tcp        0      0 0.0.0.0:465             0.0.0.0:*               ESCUTA      0          11617       1232/master     
tcp        0      0 127.0.1.1:53            0.0.0.0:*               ESCUTA      0          12148       1486/dnsmasq    
tcp        0      0 0.0.0.0:21              0.0.0.0:*               ESCUTA      0          9546        993/vsftpd      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               ESCUTA      0          9555        980/sshd        
tcp        0      0 127.0.0.1:631           0.0.0.0:*               ESCUTA      0          8840        510/cupsd       
tcp        0      0 0.0.0.0:25              0.0.0.0:*               ESCUTA      0          11602       1232/master     
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               ESCUTA      1000       21171       3082/1          
tcp        0      0 0.0.0.0:993             0.0.0.0:*               ESCUTA      0          10582       986/dovecot     
tcp        0      0 192.168.1.104:993       85.242.102.178:50794    ESTABELECIDO 119        24686       3168/imap-login 
tcp        0      0 192.168.1.104:7300      78.111.205.56:45853     ESTABELECIDO 1001       21084       1371/perl       
tcp        0      0 192.168.1.104:993       85.242.102.178:55965    ESTABELECIDO 119        21384       3176/imap-login 
tcp        0    264 192.168.1.104:22        192.168.1.90:57457      ESTABELECIDO 0          21118       3046/sshd: diogosar
tcp        0      0 192.168.1.104:993       85.242.102.178:57359    ESTABELECIDO 119        21396       3178/imap-login 
tcp6       0      0 :::995                  :::*                    ESCUTA      0          11310       986/dovecot     
tcp6       0      0 :::587                  :::*                    ESCUTA      0          11612       1232/master     
tcp6       0      0 :::80                   :::*                    ESCUTA      0          10956       1340/apache2    
tcp6       0      0 :::465                  :::*                    ESCUTA      0          11618       1232/master     
tcp6       0      0 :::22                   :::*                    ESCUTA      0          9557        980/sshd        
tcp6       0      0 :::25                   :::*                    ESCUTA      0          11603       1232/master     
tcp6       0      0 ::1:6010                :::*                    ESCUTA      1000       21170       3082/1          
tcp6       0      0 :::993                  :::*                    ESCUTA      0          10583       986/dovecot   

我的問題是:如果我向它發送電子郵件,為什麼我在電子郵件中看不到收件箱?我也嘗試過使用 POP3 ……

更新:

文件摘錄:/var/log/mail.log:

Jan 29 15:07:43 Ubuntu postfix/error[3196]: AA1E22C3528: to=<cr7akg@cr7akg.com>, relay=none, delay=59795, delays=59795/0.06/0/0, dsn=4.4.2, status=deferred (delivery temporarily suspended: lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:11:03 Ubuntu postfix/scache[3193]: statistics: start interval Jan 29 15:07:43
   Jan 29 15:11:03 Ubuntu postfix/scache[3193]: statistics: domain lookup hits=0 miss=2 success=0%
   Jan 29 15:12:43 Ubuntu postfix/qmgr[3157]: 225BE2C3568: from=<cr7akg@cr7akg.com>, size=519, nrcpt=1 (queue active)
   Jan 29 15:12:43 Ubuntu dovecot: lmtp(3217): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:12:43 Ubuntu postfix/lmtp[3216]: 225BE2C3568: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=58634, delays=58634/0.03/0.01/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:17:43 Ubuntu postfix/qmgr[3157]: 083672C3576: from=<ea6vq@dxmaps.com>, size=697, nrcpt=1 (queue active)
   Jan 29 15:17:43 Ubuntu dovecot: lmtp(3225): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:17:43 Ubuntu postfix/lmtp[3224]: 083672C3576: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=57731, delays=57731/0.03/0.01/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:20:52 Ubuntu dovecot: imap-login: Login: user=<cr7akg@cr7akg.com>, method=PLAIN, rip=85.242.102.178, lip=192.168.1.104, mpid=3232, TLS, session=<wzqYCMwNSQBV8may>
   Jan 29 15:22:43 Ubuntu postfix/qmgr[3157]: 369702C3665: from=<>, size=2930, nrcpt=1 (queue active)
   Jan 29 15:22:43 Ubuntu postfix/qmgr[3157]: F0A022C3538: from=<diogoandresaraiva@me.com>, size=1260, nrcpt=1 (queue active)
   Jan 29 15:22:43 Ubuntu postfix/qmgr[3157]: 0A11C2C3581: from=<cr7akg@cr7akg.com>, size=525, nrcpt=3 (queue active)
   Jan 29 15:22:43 Ubuntu dovecot: lmtp(3654): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:22:43 Ubuntu dovecot: lmtp(3657): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:22:43 Ubuntu postfix/lmtp[3652]: 369702C3665: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=30046, delays=30046/0.03/0.01/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:22:43 Ubuntu postfix/lmtp[3653]: F0A022C3538: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=21441, delays=21441/0.02/0.01/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:22:43 Ubuntu dovecot: lmtp(3660): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:22:43 Ubuntu postfix/lmtp[3652]: 0A11C2C3581: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=30047, delays=30047/0.03/0.02/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:26:03 Ubuntu postfix/scache[3659]: statistics: start interval Jan 29 15:22:43
   Jan 29 15:26:03 Ubuntu postfix/scache[3659]: statistics: domain lookup hits=0 miss=1 success=0%
   Jan 29 15:29:44 Ubuntu postfix/smtpd[3765]: connect from nk11p03mm-asmtp001.mac.com[17.158.232.236]
   Jan 29 15:29:45 Ubuntu postfix/smtpd[3765]: BE8582C34DE: client=nk11p03mm-asmtp001.mac.com[17.158.232.236]
   Jan 29 15:29:45 Ubuntu postfix/cleanup[3776]: BE8582C34DE: message-id=<E8F48D16-3855-454E-BC72-0F3DE0899B03@me.com>
   Jan 29 15:29:45 Ubuntu postfix/qmgr[3157]: BE8582C34DE: from=<diogoandresaraiva@me.com>, size=1267, nrcpt=1 (queue active)
   Jan 29 15:29:45 Ubuntu dovecot: lmtp(3780): Fatal: Error reading configuration: Invalid settings: postmaster_address setting not given
   Jan 29 15:29:45 Ubuntu postfix/lmtp[3779]: BE8582C34DE: to=<cr7akg@cr7akg.com>, relay=Ubuntu[private/dovecot-lmtp], delay=0.23, delays=0.21/0.01/0.01/0, dsn=4.4.2, status=deferred (lost connection with Ubuntu[private/dovecot-lmtp] while receiving the initial server greeting)
   Jan 29 15:29:46 Ubuntu postfix/smtpd[3765]: disconnect from nk11p03mm-asmtp001.mac.com[17.158.232.236]

結果:telnet cr7akg.com smtp

Trying 85.242.102.178...
Connected to cr7akg.com.
Escape character is '^]'.
220 Ubuntu ESMTP Postfix (Ubuntu)

結果:telnet 192.168.1.104 smtp

Trying 192.168.1.104...
Connected to ubuntu.lan.
Escape character is '^]'.
220 Ubuntu ESMTP Postfix (Ubuntu)

找到了這個解決方案:

在 /etc/dovecot/conf.d/20-lmtp.conf 中添加:

protocol lmtp {
postmaster_address = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf # required
mail_plugins = quota
}

可能是:

protocol lmtp {
 # Space separated list of plugins to load (default is global mail_plugins).
 #mail_plugins = $mail_plugins
}

就我而言,我的 dovecot 配置中有一個錯誤的日誌路徑。確保檢查您的鴿舍日誌以查找可能的錯誤。

引用自:https://serverfault.com/questions/663424