在具有现有 Web 服务器的 ubuntu 服务器上安装邮件服务器

在具有现有 Web 服务器的 ubuntu 服务器上安装邮件服务器

希望在 ubuntu 服务器上安装邮件服务器。我已经在其上运行了一个 Web 服务器(apache/php/wordpress),但我还想安装一个邮件服务器。据我了解,我需要添加 MX 记录,为 SMTP 设置 postfix,为 POP3 和 IMAP 设置 dovecot。

我的主要问题是,是否可以在其上安装电子邮件服务器?

我是否必须使用 apache 或 nginx 的第二个实例来运行邮件服务器?

如果可能的话,有什么技巧可以实现这一目标吗?

谢谢

答案1

是的,您可以在同一台 Ubuntu 机器上运行 Web 服务器和邮件服务器。这是相当常见的设置。

你会需要:

  • 主机操作系统(Ubuntu 很好)静态公共 IP 地址
  • 防火墙在你的主机操作系统上(例如,iptables 与 UFW 的组合)
  • 注册域名访问 DNS 服务器更改/添加 DNS 记录(如您提到的 MX 记录)
  • 网络服务器(Apache 很好),编程语言(你的情况是 PHP),数据库(我假设是 MySQL 或者 MariaDB)用于运行你的 WordPress 网站
  • 邮件传输代理(后缀也可以),邮件投递代理(dovecot 就可以)用于运行你的邮件服务器。

此外你可能还想要:

  • 全文搜索(例如使用 Solr)和垃圾邮件过滤器(例如使用 Rspamd)作为您的邮件服务器
  • SSL 证书用于以加密方式访问您的网站和邮件帐户(例如使用 Let's Encrypt / certbot-auto)。
  • 自动安全更新(例如安装无人值守升级)

邮件服务器设置:

正确设置邮件服务器是一项相当复杂的任务。您需要了解很多信息(例如 DKIM、DMARC 和 SPF),这样其他邮件服务器才会信任您,并且您的电子邮件不会落入收件人的垃圾邮件过滤器中。

幸运的是,Cullum Smith 提供了这本出色的指南:如何运行自己的邮件服务器


澄清:

您只需要一个 Web 服务器软件实例(例如 Apache)即可为多个网站提供服务。但实际上,您也可以在同一台机器上使用两个 Web 服务器软件实例(例如 Apache 和 nginx)。但这与运行邮件服务器无关。人们出于性能和安全原因安装 Apache 和 nginx 的组合 - 例如 nginx 处理外部通信,快速安全地与互联网通信(称为反向代理),而 apache 处理内部通信,包括 PHP、MySQL 和您网站的文件。

您的邮件服务器将无法联系您的 Apache 实例(除非您计划实现网络邮件访问)。

相关内容