我正在尝试在我的新服务器上设置邮件转发。例如,我希望 emailaddress@mydomain.com 将发送给它的所有电子邮件转发到,例如,otheremail@gmail.com。我不需要/希望能够从 mydomain 发送邮件。
我正在运行 Ubuntu 10.04,它是我的服务器,所以我有 root 访问权限,可以安装/修改任何必要的东西。我有几年的 Linux 经验,但以前从未玩过邮件服务器,所以我对它们一无所知。因此,我无法真正理解之前就该主题提出的所有问题。似乎也给出了许多不同的答案,阅读提出的每个解决方案需要很长时间。话虽如此,任何人都可以为我指出如何实现这一目标的正确方向吗?谢谢!
我想将 root 收到的电子邮件转发到 Ubuntu 节点上的外部电子邮件。我看过这篇文章,但它并没有对要遵循的程序进行太多解释。网上还有一些其他帖子,但它们通常不完整或不清楚。
谁有完整的程序分享一下?应该在我的节点上安装邮件服务器吗?如果是,是哪一个?节点上的配置步骤是什么?我严格使用命令行(节点是服务器)。
我在我的 SMTP 服务器上为我的域和 DKIM 消息签名配置了硬故障 SPF。由于这是唯一应该用于从我的域发出邮件的 SMTP 服务器,因此我没有预见到任何复杂情况。
但是,请考虑以下情况:我通过我的 SMTP 服务器向我同事的大学电子邮件发送了一封电子邮件。问题是我的同事将他的大学电子邮件转发到他的 GMail 帐户。这些是邮件到达他的 GMail 邮箱后的标题:
Received-SPF: fail (google.com: domain of me@example.com 没有指定 192.168.128.100 作为允许的发件人) client-ip=192.168.128.100; 身份验证结果:mx.google.com;spf=hardfail(google.com:me@example.com 的域未将 192.168.128.100 指定为允许的发件人)smtp.mail=me@example.com;dkim=hardfail(测试模式)header.i=@example.com
(标题已被清理以保护非 Google 方的域和 IP 地址)
GMail 根据我的 SPF 和 DKIM 记录检查传送链中的最后一个 SMTP 服务器(理所当然)。由于交付链中的最后一个 STMP 服务器是大学的服务器而不是我的服务器,因此检查会导致 SPF 硬故障和 DKIM 故障。幸运的是,GMail 没有将邮件标记为垃圾邮件,但我担心这可能会在将来引起问题。
我对 SPF hardfail 的实施可能太严格了吗?我应该注意的任何其他建议或潜在问题?或者也许有更理想的大学电子邮件转发程序的配置?我知道转发服务器可能会更改信封发件人,但我看到这变得很混乱。
我正在将电子邮件从旧的 Plesk 安装迁移到运行 iRedMail (postfix/amavisd/dovecot/etc) 的定制构建的 Ubuntu 服务器。
我正在使用 postfixadmin 来管理所有域和一个 mysql 后端。我注意到,如果我想“别名”某些内容或创建转发,我无法使用现有邮箱 - 因此我无法复制 Plesk 风格的“使用保存的副本重定向”功能。
我目前正在通过数据库设置远程别名并使用:
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
Run Code Online (Sandbox Code Playgroud)
如果有办法仍然使用我的数据库,那将是理想的 - 即使我必须添加一些列并更改查询。
谢谢!
所以我必须承认,我不是网络管理员,所以我对 DNS 的了解非常有限,而且我认为我搞砸了一些事情。
我拥有一个域——我们称之为mydomain.com. 我让我的托管服务提供商对其进行了设置,以便gordon@mydomain.com转发到soapergem@gmail.com(我的 Gmail 帐户)。这似乎工作正常;当我向我发送电子邮件时,gordon@mydomain.com我会在我的 Gmail 收件箱中收到它,而当朋友发送到该地址时,我也会收到它。当我们最初设置它时(以及它运行时),我认为我们根本没有任何MX 记录mydomain.com。
稍后我开始使用电子邮件发送服务。(类似于 MailChimp,虽然它不是 MailChimp。)让我们称之为mysender.com。我注意到每当我尝试gordon@mydomain.com使用 MySender发送时,它都行不通。它永远不会通过。使用该服务,发送给其他人从gordon@mydomain.com非常完美!但是,当我试图从邮件发送gordon@mydomain.com 到 gordon@mydomain.com使用相同的服务,它永远不会来通过。
所以我开始做一些挖掘,试图找出为什么会这样,我发现的一个站点建议我需要为 DNS 中的域设置 MX 记录。所以我昨天才这样做,现在我担心我把事情搞砸了,因为似乎根本没有邮件流过。现在,即使我gordon@mydomain.com从 Hotmail 或类似的东西发送,它也不再显示在我的 Gmail 收件箱中。
这些是我添加的记录。有人能告诉我我做错了什么,我需要做些什么不同的事情吗?
mydomain.com MX 3600 [10] mydomain.com
mydomain.com MX 3600 [20] smtp2.mysender.com
mydomain.com MX 3600 [30] inbound.mysender.com
Run Code Online (Sandbox Code Playgroud) 我们正在设置持续集成服务器(在 CentOS5 上运行的 Hudson),我们的一些单元测试将导致发送电子邮件。我们想配置服务器,以便通过本地 SMTP 服务器发送的所有电子邮件都路由到单个(开发)电子邮件地址(而不是邮箱上的用户),以便我们可以确保电子邮件结构/内容是正确的。
你能推荐一个我们可以安装的简单 SMTP 服务器应用程序并提供一个示例配置来实现这一点吗?
我正在寻找仅用于转发几个电子邮件地址的 SMTP 服务器。两个要求:
我一直在尝试 Postfix,但我陷入了诸如Recipient address rejected: User unknown in virtual alias table和 之类的错误消息中Recipient address rejected: User unknown in local recipient table。所以我想知道是否有更简单的解决方案。
由于 Google Apps 不再对小型企业/团队免费,我只能将 MX 记录指向我的应用程序服务器。我仍然希望通过 Gmail 地址接收电子邮件,该地址发送到与上述 MX 记录关联的域。
我看过安装 sendmail 并配置/etc/mail/virtusertable为包含类似的东西
@mydomain myemail@gmail.com
Run Code Online (Sandbox Code Playgroud)
我也看了一下安装Postfix和修改/etc/aliases与
admin: myemail@gmail.com
team: myemail@gmail.com
...
Run Code Online (Sandbox Code Playgroud)
无论如何,当我向电子邮件发送电子邮件时,team@mydomain.com似乎从未将其发送到我的应用程序服务器(例如,/var/log/maillog显示没有添加任何内容),并且绝对不会将其发送回我的 Gmail 帐户。
我可以放弃 postfix 和/或 sendmail 换另一种选择;我只是希望在我的应用程序服务器上接受电子邮件,除了将所述电子邮件转发到 Gmail 帐户外,什么也不做。我不需要/想要服务器上的任何真实电子邮件帐户,这是服务器上唯一的域。
我在具有 4 个 IP 地址的 CentOS 6.6 Linux 服务器上托管 2 个 Web 域(domain1.com 和 domain2.com)。
Postfix 2.6.6 接受发送到info@domain1.com和info@domain2.com 的邮件,并将它们转发到person1@gmail.com和person2@gmail.com。以下是配置文件的摘录:
/etc/postfix/main.cf
inet_interfaces = all
inet_protocols = ipv4
virtual_alias_domains = domain1.com domain2.com
virtual_alias_maps = hash:/etc/postfix/virtual
smtp_generic_maps = hash:/etc/postfix/generic
Run Code Online (Sandbox Code Playgroud)
/etc/postfix/虚拟
info@domain1.com person1@gmail.com
info@domain2.com person2@gmail.com
Run Code Online (Sandbox Code Playgroud)
我的问题是第一个人(我父亲从 1990 年开始从事互联网业务)变成了大量垃圾邮件。我使用 Spamassassin 拒绝这些邮件,但有些邮件仍然通过,当转发到person1@gmail.com 时,它们会导致 Google 限制我的服务器:
DFC32800849 3412 Fri Jan 30 11:40:38 PPQDikzMMZTedKR@hotmail.com(主机 alt1.gmail-smtp-in.l.google.com[74.125.130.26] 说:421-4.7.0] 我们的系统 [1326]检测到来自您的 IP 地址的 421-4.7.0 未经请求的邮件的异常率。为了保护我们的 421-4.7.0 用户免受垃圾邮件的侵害,从您的 IP 地址发送的邮件已被暂时限制为 421-4.7.0 率。请访问421-4.7.0 …
我将 postfix 配置为将邮件转发到外部地址(主要是 GMail):
user1@mydomain.com user1@gmail.com
user2@mydomain.com user2@gmail.com
office@mydomain.com user1@gmail.com, user2@gmail.com, ...
...
Run Code Online (Sandbox Code Playgroud)
一切正常,除了当我从我的 user1@gmail.com GMail 帐户向 user1@mydomain.com 发送邮件时,它会被转发(日志中为 250 OK),但从未出现在 GMail 中。这可能不是一个常见的情况,但从我的 GMail 帐户发送邮件到 office@mydomain.com 或将自己置于抄送中。我只是不喜欢我的消息在没有任何错误迹象的情况下丢失的想法。
我也计划为其他一些用户配置转发,我相信每个人都会首先通过向自己发送邮件来测试它(然后告诉我,它不起作用)。
这个问题已经在之前的帖子中讨论过:
我知道 postfix 可以重写消息的标题。在这种情况下,我是否可以更改发件人地址(更改为 forward@mydomain.com 之类的内容)以防止 GMail 忽略邮件。
我example.com为使用外部服务提供商处的 Exchange 服务器收发电子邮件的客户管理一个域(比方说)。所以我让 MX 记录指向 Exchange 服务器,假设mail.provider.com. 现在我想将电子邮件me@example.com转发到我自己的电子邮件帐户me@me.com。不幸的是,服务提供商告诉我,由于某种原因,他们无法执行此操作。
因为我可以控制 MX 记录,所以我的想法是让它指向我自己的运行 Postfix 和
me@example.com至me@me.commail.provider.com我想出的解决方案是将域添加到relay_domains并设置 Postfix 传输映射
relay_domains = example.com
transport_maps = hash:/etc/postfix/transport
Run Code Online (Sandbox Code Playgroud)
包含
me@example.com virtual:
example.com :[mail.provider.com]
.example.com :[mail.provider.com]
Run Code Online (Sandbox Code Playgroud)
然后在虚拟别名映射中添加一个条目
me@example.com me@me.com
Run Code Online (Sandbox Code Playgroud)
我认为这应该有效,但看起来有点难看。这会起作用吗?有更好的解决方案吗?
这是我所做的:
虚拟文件示例
a_random_email@example.com my_email@gmail.com
a_random_email_2@example.com my_email_2@gmail.com
Run Code Online (Sandbox Code Playgroud)
这是我没有做的(并且不是必需的)我想:
这是 postconf -n 的内容
root@Host-Wordpress-01:~# postconf -n
alias_database = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
home_mailbox = mail/
inet_interfaces = all
inet_protocols = all
mailbox_size_limit = 0
mydestination = example.com, Host-Wordpress-01, localhost.localdomain, localhost
myhostname = example.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost =
smtp_tls_session_cache_database …Run Code Online (Sandbox Code Playgroud)