我们如何限制 SMTP 服务仅在本地主机上使用?
我们的网站使用本地主机 SMTP,但我们不希望任何邮件客户端在 SMTP 端口上使用我们的服务器。
我们的服务器是 Windows Server 2008 R2,使用 Mail Enabled Professional Edition V1。
谢谢。
答案1
我的建议,特别是对于 SMTP,是使用尽可能多的安全层来保护自己,特别是当您有其他人具有服务器的管理员访问权限,打开和关闭防火墙之类的功能时...这是我的做法:
- 防火墙 - 确保只有 127.0.0.1 可以与服务器上的端口 25 通信。拒绝所有其他连接。
- 将 SMTP 服务设置为仅监听 127.0.0.1 上的连接。默认情况下,它配置为监听 0.0.0.0,这意味着任何 IP,包括公共 IP。即使防火墙发生故障或被禁用,外部客户端也无法与您服务器上的 SMTP 服务通信,因为它对它们“充耳不闻”。
- 设置中继限制,仅允许本地客户端(即 127.0.0.1)通过服务器中继邮件。即使上述 2 个措施以某种方式失败,外部客户端也只能向服务器的本地域发送邮件。SMTP 服务器将拒绝外部客户端向外部域发送邮件(中继访问)的尝试。
这是一个关于如何实际执行第 2 步和第 3 步的指南。上面的#2显示在指南的第12步中,上面的#3显示在指南的第13步和第15步中。
为什么要有这 3 层?简短回答:尽量减少安全事故和其他不良问题的风险。详细回答:
- 从安全角度来看,尽可能锁定一切。访问权限需要根据需要授予 - 这是一项通用的最佳做法,曾多次拯救了我。
- 即使其他具有管理员权限的人开始对机器进行更改(例如关闭防火墙),即使是意外/无意的,您也可以高枕无忧,因为您知道还有其他 2 个安全措施。
- 当具有管理员权限的人开始更改服务器配置时,他们必须非常谨慎地更改防火墙设置(或禁用它)以及 SMTP 服务设置,因此,除非存在破坏行为或(希望)获得批准和记录的变更请求,否则进行所有 3 项更改的机会非常渺茫。
希望对您有帮助!祝您好运,保重!