我是否可以不使用 mail.example.com,而只使用另一个类似 abc.example.com 的邮件服务器?

我是否可以不使用 mail.example.com,而只使用另一个类似 abc.example.com 的邮件服务器?

两个问题,两个难题。

我使用 cloudflare,因此不会泄露我的 IP,但有个问题,我无法将 cloudflare 用于我的邮件服务器。现在我处于 DDOS 之下,因为 mail.example.com 被暴露了。有没有办法更改邮件服务器的子域名,而不是使用邮件。例如,我使用 abc。对于我的邮件服务器,他们无法轻易知道我的邮件服务器在哪里。

另一个问题是为什么当我访问 mail.example.com 时我的网站会出现

我的意思是这样对吗,因为我认为我的网站显示在邮件服务器地址下是一个问题。

答案1

接收电子邮件的唯一要求是您必须拥有一条 MX 记录,即 A 记录。该 MX 记录可以是任何主机名,甚至不必是您的域的子域。因此,使用 abc.example.com 没有问题。

关于 mail.example.com 访问时显示的网站,这实际上取决于您如何设置 Web 服务器。目前,大多数 Web 服务器将使用虚拟主机根据主机名(而不仅仅是 IP 地址)确定要提供的内容。您有几个选择。最好的选择是阻止所有不是来自 Cloudflare 的流量。如果您的防火墙可以处理它,也许您可​​以阻止端口 80 和 443 流量,然后同时列出 Cloudflare IP 地址。或者在 Web 服务器级别,例如使用 Apache,您可以添加一行deny from all,然后allow from <ip>为每个 IP 添加一个,这些 IP 是您从他们那里获得的。如果这不是一个选项,也许您可​​以将 Web 服务器设置为简单地拒绝对该主机的任何请求。例如,如果您使用的是 Apache,您可以在文档根目录中放置一个 .htaccess 文件,其中包含以下内容:

RewriteCond %{HTTP_HOST} !^(www\.)?example\.com$
RewriteRule ^ http://example.com/

这会将流量重定向到您通过第三方解析的实际网站。

如果这不起作用,您或许可以在 index.php 文件中放置一些 PHP 代码来执行类似的操作。

答案2

如果您不想泄露您的公共 IP,则不能有任何指向它的 DNS 记录。听起来您设置了 A 记录,但这不是必需的,您只需要 MX 记录。建议您删除 A 记录并注册托管电子邮件,谷歌或者快速邮件都是不错的选择,但还有很多。将您的 MX 记录指向托管电子邮件,并设置 SPF。

您可以更改您的公共 IP。此外,在 CloudFlare 中,打开“我受到攻击”模式,这将大有帮助。确保 DNS 屏幕中的“橙色云”已打开。

相关内容