我有一个 Debian Jessie(版本 8.1)服务器,为多个域名提供服务。每个都在 下配置了自己的文件夹/var/www/
。每个域名都有一个唯一的conf( example.com.conf
) 文件/etc/apache2/sites-enabled
,该文件下链接到匹配的conf 文件/etc/apache2/sites-available
。每个conf
文件有:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/example_com_dir
ServerName example.com
ServerAlias *.example.com
</VirtualHost>
我希望能够接受发送到每个域的所有电子邮件(发送到任何域的任何电子邮件)[电子邮件受保护])并将其转发到我的 Gmail。我安装成功了EXIM4其上,并使用dpkg-reconfigure exim4-config
如下配置:
mail sent by smarthost; no local mail
System mail name: myDomainName.TLD
IP-addresses to listen on for incoming SMTP connections: 127.0.0.1 ; ::1
Other destinations for which mail is accepted: <BLANK>
Visible domain name for local users: <BLANK>
IP address or host name of the outgoing smarthost: smtp.gmail.com::587
Keep number of DNS-queries minimal (Dial-on-Demand)? No
Split configuration into small files? No
Root and postmaster mail recipient: <BLANK>
然后我完成了本教程中的所有其他步骤: https://www.vultr.com/docs/setup-exim-to-send-email-using-gmail-in-debian。
里面/etc/hosts
我有:
127.0.0.1 localhost
127.0.1.1 install.install install
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
里面/etc/hostname
我有一行:example.com
里面/etc/email-addresses
我有:
root: [email protected]
info: [email protected]
*: [email protected]
当我跑步时,我的 Gmail 中确实收到了一封电子邮件。另外,如果运行任何脚本并输出任何打印,我确实会收到电子邮件通知。所以我知道外发电子邮件是有效的。但是当我从 发送电子邮件至 时,我没有收到任何通知。echo 'Test Message.' | mail -s 'Test Message' [email protected]
cron.d
[email protected]
[email protected]
[email protected]
问题#1:
我希望能够获取所有传入的电子邮件并将它们转发到其他地方。例如,我想从 发送[email protected]
到我的域[email protected]
并让服务器将其发送到[email protected]
。我必须配置什么才能做到这一点?如何为服务多个域的服务器进行配置?
问题2: 我知道这可能是基于意见的,但是我可以在 Debian Jessie (8.1) 上配置哪些免费、用户友好、具有 Web GUI 访问电子邮件服务器?
答案1
通过运行重新配置您的配置
# dpkg-reconfigure exim4-config
- 邮件配置的一般类型:互联网站点
- 接受邮件的其他目的地:example.com
- 用于侦听传入 SMTP 连接的 IP 地址:填写您的IP地址
这些应该是需要改变的最重要的项目。如果仍然询问,请删除任何智能主机。
现在它应该接受传入的 SMTP 连接(如果您正确输入了 IP 地址),并通过您已创建的别名发送电子邮件。
答案2
您的邮件服务器似乎没有监听公共地址。它只接受来自 127.0.0.1(即 localhost)的传入邮件。这解释了为什么直接使用 shell 命令从服务器发送邮件是有效的。
您必须将其配置为这些特定域的公共中继主机。您还必须相应地更新您的 dns 条目,以便其他中继在将邮件中继到您的域时可以指向您的服务器。
此外,您关于使用谷歌服务器的部分毫无用处。您所做的是将 exim 配置为使用 google 邮件服务向外部发送邮件。如果配置良好,它可以像真正的邮件服务器一样自行完成。