我想从我的Debian 6服务器发送电子邮件。 我只想发送。 我已经遵循了我可以find的Sendmail,Exim4和Postfix的所有指令,并且无法正常工作。 我尝试了SMTPvalidation支持模块,通过Gmail帐户发送邮件。 但是那个突然停止了工作。 我可以通过模块的configuration表单发送testing邮件,但尝试通过drupal_mail()发送失败。
mail -v [email protected]报告说邮件已被接受发送,但邮件从未到达收件箱。 以下是输出。 我在想,也许这个问题是用MAIL From: travis@debian ,但是我试图改变它的一切都是失败的。 我已经改变了/etc/email-addresses并添加了一个带有f标志的重写规则来改变从头部到无效。 无论如何,输出:
turibe@servername:~$ mail -v [email protected] Subject: Testing bloopy . EOT [email protected]... Connecting to [127.0.0.1] via relay... 220 example.com ESMTP Sendmail 8.14.3/8.14.3/Debian-9.4; Thu, 30 May 2013 00:53:01 -0700; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1] >>> EHLO example.com 250-example.com Hello localhost [127.0.0.1], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-EXPN 250-VERB 250-8BITMIME 250-SIZE 250-DSN 250-ETRN 250-AUTH DIGEST-MD5 CRAM-MD5 250-DELIVERBY 250 HELP >>> VERB 250 2.0.0 Verbose mode >>> MAIL From:<[email protected]> SIZE=218 [email protected] 250 2.1.0 <[email protected]>... Sender ok >>> RCPT To:<[email protected]> >>> DATA 250 2.1.5 <[email protected]>... Recipient ok 354 Enter mail, end with "." on a line by itself >>> . 050 <[email protected]>... Connecting to aspmx.l.google.com. via esmtp... 050 220 mx.google.com ESMTP zb4si24120260obb.80 - gsmtp 050 >>> EHLO example.com 050 250-mx.google.com at your service, [2600:3c00::f03c:91ff:fe70:4335] 050 250-SIZE 35882577 050 250-8BITMIME 050 250-STARTTLS 050 250-ENHANCEDSTATUSCODES 050 250 PIPELINING 050 >>> STARTTLS 050 220 2.0.0 Ready to start TLS 050 >>> EHLO example.com 050 250-mx.google.com at your service, [2600:3c00::f03c:91ff:fe70:4335] 050 250-SIZE 35882577 050 250-8BITMIME 050 250-ENHANCEDSTATUSCODES 050 250 PIPELINING 050 >>> MAIL From:<turibe@debian> SIZE=471 050 250 2.1.0 OK zb4si24120260obb.80 - gsmtp 050 >>> RCPT To:<[email protected]> 050 >>> DATA 050 250 2.1.5 OK zb4si24120260obb.80 - gsmtp 050 354 Go ahead zb4si24120260obb.80 - gsmtp 050 >>> . 050 250 2.0.0 OK 1369900381 zb4si24120260obb.80 - gsmtp 050 <[email protected]>... Sent (OK 1369900381 zb4si24120260obb.80 - gsmtp) 250 2.0.0 r4U7r1kG022811 Message accepted for delivery [email protected]... Sent (r4U7r1kG022811 Message accepted for delivery) Closing connection to [127.0.0.1] >>> QUIT 221 2.0.0 example.com closing connection
我已经尝试了几个不同的地址。 这让我疯狂。 这似乎应该是一个相当简单的问题来解决,但没有我试过,也没有任何我能find的问题正在工作。 我已经阅读了很多文章,作者说他所做的所有发送邮件都是像apt-get install sendmail和off去的,但是没有任何相同的步骤对我有用。
更新在此之前,我确实确保所有出站连接都已启用。 实际上,邮件命令确实看起来与GMail成功连接。
更新此服务器是Linode服务器,而不是家庭服务器。
更新我完全按照这篇文章 ,并没有遇到任何错误。 不过,没有运气发送电子邮件。 我从生活中想要的就是能够从我的服务器发送电子邮件。
更新我也试过这篇文章 – 没有运气。 /var/log/exim4/mainlog几分钟后logging该消息被冻结。
您应该将服务器configuration为使用智能主机作为中继。 通常情况下,您的ISP将提供一个继电器供您使用。
如果你想直接发送到互联网,你需要有一个PTRlogging指向一个返回地址的Alogging的固定IP地址。 否则许多服务器将阻止你。 您还应该为您从该点发送到您的邮件服务器名称的域logging一个MXlogging。 这两个域名的SPFlogging可以帮助,除非他们禁止您的服务器发送该域名。
Spamhaus列出了许多dynamicIP地址范围,如果您的IP地址在此处列出,您将被阻止。 如果你被列入其他黑名单,你也可能被封锁。
仅仅因为你的邮件服务器已经接受了邮件的发送,并不意味着你的邮件服务器将能够发送它。 尝试使用mailq命令查看您的服务器是否仍在尝试发送消息。 电子邮件是存储和转发的,你的服务器可能需要一天左右的时间才能告诉你邮件发送有问题。
编辑:最简单的解决scheme是使用命令dpkg-reconfigure exim4-config并selectsmarthost选项。 使用您的提供商的电子邮件中继,事情应该运作良好。 确保您使用有效的发件人电子邮件地址。 虽然GMail可能工作,但是设置所需的身份validation是额外的工作,如果您没有付费帐户,它们可能会限制您发送的电子邮件数量。
如果你想运行你自己的邮件服务器,你可以从我的文章“ 运行”和“电子邮件服务器”开始 。 您也可能要查看我的电子邮件政策文件及其列出的文件。 我还有几个与电子邮件有关的其他职位 。 我select的服务器是Exim。
我终于得到了按照这篇文章工作的电子邮件: http : //wiki.debian.org/GmailAndExim4
主要区别似乎是/etc/exim4/passwd.client这一行: *.google.com:[email protected]:y0uRpaSsw0RD
一旦我添加它,我的电子邮件开始工作。 以前,我一直使用smtp.gmail.com而不是*.google.com 。 我试图删除那条线,有利于smtp.gmail.com线来validation这是修复,事实上,因为我不能发送电子邮件没有*.google.com线。
由于我确实有付费的Google Apps帐户,因此将Google用作智能主机是一个很好的解决scheme。