刚刚在 Debian 7 上安装的 Postfix + Dovecot 发送但不接收

刚刚在 Debian 7 上安装的 Postfix + Dovecot 发送但不接收

将 Postfix 默认端口从 25 更改为 26(MySQL 使用端口 25)后,我现在可以从我的邮箱发送邮件。但我收不到邮件。我的 mail.log 显示已发送的邮件正常,但没有收到任何邮件……我已经回复了每封外发邮件。
我是新手,不知道需要显示什么才能在这里获得帮助。请告诉我需要提供什么,我会立即发布。谢谢。

mail.cf 的一部分:

myhostname = mydomain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = mydomain.com, localhost.com, , localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all

以及 mail.log 的一部分:

Jun 30 22:34:28 mydomain postfix/pickup[11158]: 4E9511A3378: uid=0 from=<root>
Jun 30 22:34:28 mydomain postfix/cleanup[11202]: 4E9511A3378: message-id=<[email protected]>
Jun 30 22:34:28 mydomain postfix/qmgr[11159]: 4E9511A3378: from=<[email protected]>, size=393, nrcpt=1 (queue active)
Jun 30 22:34:28 mydomain postfix/smtp[11204]: 4E9511A3378: to=<[email protected]>, relay=mx01.gmx.net[212.227.17.4]:25, delay=0.61, delays=0.01/0/0.3/0.3, dsn=2.0.0, status=sent (250 Requested mail action okay, completed$
Jun 30 22:34:28 mydomain postfix/qmgr[11159]: 4E9511A3378: removed
Jun 30 22:37:32 mydomain postfix/pickup[11158]: 88E971A3378: uid=0 from=<root>
Jun 30 22:37:32 mydomain postfix/cleanup[11211]: 88E971A3378: message-id=<[email protected]>
Jun 30 22:37:32 mydomain postfix/qmgr[11159]: 88E971A3378: from=<[email protected]>, size=328, nrcpt=2 (queue active)
Jun 30 22:37:32 mydomain postfix/smtp[11213]: connect to dfwit.co[2604:180::d873:9679]:25: Connection refused
Jun 30 22:37:33 mydomain postfix/smtp[11213]: 88E971A3378: to=<[email protected]>, relay=dfwit.co[167.88.120.164]:25, delay=0.75, delays=0.01/0/0.51/0.23, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 27FAC26C2AA7)
Jun 30 22:37:34 mydomain postfix/smtp[11214]: 88E971A3378: to=<[email protected]>, relay=mx01.gmx.com[74.208.5.27]:25, delay=2.1, delays=0.01/0.01/0.47/1.6, dsn=2.0.0, status=sent (250 Requested mail action okay, co$
Jun 30 22:37:34 mydomain postfix/qmgr[11159]: 88E971A3378: removed
Jun 30 22:41:57 mydomain postfix/pickup[11158]: B0C351A3378: uid=1010 from=<admin>
Jun 30 22:41:57 mydomain postfix/cleanup[11241]: B0C351A3378: message-id=<[email protected]>
Jun 30 22:41:57 mydomain postfix/qmgr[11159]: B0C351A3378: from=<[email protected]>, size=293, nrcpt=1 (queue active)
Jun 30 22:42:00 mydomain postfix/smtp[11243]: B0C351A3378: to=<[email protected]>, relay=mx01.gmx.com[74.208.5.27]:25, delay=2.5, delays=0.01/0/0.62/1.9, dsn=2.0.0, status=sent (250 Requested mail action okay, compl$
Jun 30 22:42:00 mydomain postfix/qmgr[11159]: B0C351A3378: removed

我在 /etc/postfix/master.cf 中将端口改回 25,然后发送了一封电子邮件。这是 mail.log 现在显示的内容:

Jul  1 01:05:46 underworld postfix/master[11846]: fatal: bind 0.0.0.0 port 25: Address already$
Jul  1 01:05:56 underworld dovecot: master: Warning: Killed with signal 15 (by pid=11873 uid=0$
Jul  1 01:05:56 underworld dovecot: master: Dovecot v2.1.7 starting up (core dumps disabled)

然后我可以给出以下建议:

root@underworld:~# netstat -tulpn4
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1964/sshd      
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      4148/sendmail: MTA:
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      1857/named     
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      2645/smbd      
tcp        0      0 0.0.0.0:993             0.0.0.0:*               LISTEN      11878/dovecot  
tcp        0      0 0.0.0.0:8067            0.0.0.0:*               LISTEN      2748/ircd      
tcp        0      0 0.0.0.0:6697            0.0.0.0:*               LISTEN      2748/ircd      
tcp        0      0 185.34.216.166:7050     0.0.0.0:*               LISTEN      9126/eggdrop   
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2451/mysqld    
tcp        0      0 127.0.0.1:587           0.0.0.0:*               LISTEN      4148/sendmail: MTA:
tcp        0      0 0.0.0.0:6667            0.0.0.0:*               LISTEN      2748/ircd      
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      2645/smbd      
tcp        0      0 185.34.216.166:6668     0.0.0.0:*               LISTEN      8880/eggdrop   
tcp        0      0 185.34.216.166:6669     0.0.0.0:*               LISTEN      2728/eggdrop   
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN      11878/dovecot  
tcp        0      0 185.34.216.166:32277    0.0.0.0:*               LISTEN      9676/eggdrop   
tcp        0      0 81.4.108.50:53          0.0.0.0:*               LISTEN      1857/named     
tcp        0      0 185.34.216.166:53       0.0.0.0:*               LISTEN      1857/named     
tcp        0      0 127.0.0.2:53            0.0.0.0:*               LISTEN      1857/named     
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      1857/named     
udp        0      0 0.0.0.0:44637           0.0.0.0:*                           8880/eggdrop   
udp        0      0 0.0.0.0:56956           0.0.0.0:*                                                     

既然我正在使用 Postfix 和 Dovecot,是否应该禁用 sendmail?

好的,我尝试删除 sendmail:

root@underworld:~# apt-get remove sendmail
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'sendmail' is not installed, so not removed

那么,如果没有安装,为什么上面的帖子中会显示使用端口:25?


更新日期:2015 年 7 月 1 日

我的 mail.log 显示:

Jul  1 17:24:30 underworld postfix/smtpd[13684]: connect from dfwit.co[167.88.120.164]
Jul  1 17:24:30 underworld postfix/smtpd[13684]: AF9D21A41EE: client=dfwit.co[167.88.120.164]
Jul  1 17:24:30 underworld postfix/cleanup[13679]: AF9D21A41EE: message-id=<[email protected]>
Jul  1 17:24:30 underworld postfix/qmgr[12253]: AF9D21A41EE: from=<[email protected]>, size=969, nrcpt=1 (queue active)
Jul  1 17:24:30 underworld postfix/smtpd[13684]: disconnect from dfwit.co[167.88.120.164]
Jul  1 17:24:30 underworld postfix/local[13687]: AF9D21A41EE: to=<[email protected]>, relay=local, delay=0.11, delays=0.1/0.01/0/0.01, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Jul  1 17:24:30 underworld postfix/qmgr[12253]: AF9D21A41EE: removed
Jul  1 17:27:51 underworld postfix/anvil[13686]: statistics: max connection rate 1/60s for (smtp:167.88.120.164) at Jul  1 17:24:30
Jul  1 17:27:51 underworld postfix/anvil[13686]: statistics: max connection count 1 for (smtp:167.88.120.164) at Jul  1 17:24:30
Jul  1 17:27:51 underworld postfix/anvil[13686]: statistics: max cache size 1 at Jul  1 17:24:30

对我来说,这似乎表明我有邮件。但我完全不知道如何查看它。

答案1

当然,您收不到邮件。您没有监听端口 25 的邮件服务器!尝试向您发送邮件的服务器使用的是 MySQL 服务器,而不是邮件服务器。

将两个服务恢复到正确的端口。

答案2

所谓的“知名端口”分配给了应该可供所有人使用的服务。如果您希望其他人能够访问您的服务,则必须遵守端口分配。没有标准机制来通知其他人您已将 MTA 移至另一个端口。他们会尝试端口 25,而不会尝试其他端口。

当然,如果您想要设置仅供私人使用的基础设施,您可以将服务移动到您想要的任何端口。您现在知道服务所在的位置,并且可以以正确的方式链接软件。出于安全原因,某些服务通常会移动到不同的端口。比如,sshd可以移动到端口 12345 而不是 22,因为有很多暴力破解工具会用请求淹没此服务。只要服务端口是非标准/未知的,暴力破解者就无法淹没它。

但是如果你想建立接收之类的公共服务postfix,你必须使用标准端口。

相关内容