我需要打开25端口发送电子邮件与PHP邮件function?

我有一个Linux的networking应用程序。

我是否需要打开端口25才能使用PHP邮件function发送电子邮件? 如果我必须打开端口25,如何禁用接收电子邮件?

编辑:我问,因为我明白sendmail是我的服务器上的邮件传输代理。

PHP的邮件()函数依赖于像二进制sendmail发送邮件。

任何MTA(端口25服务监听)都有像sendmail这样的程序来达到目的。

如果你不想打开端口25,你可以为来自世界的所有连接防火墙; 例如

iptables -I INPUT -p tcp -i eth0 --dport 25 -j REJECT

没有。

只要您的防火墙规则允许出站stream量,您就不需要打开端口25来发送电子邮件。

如果您希望机器接收电子邮件,则只需要打开端口25。

这取决于如何在服务器/网关/无论何处configuration防火墙。

大多数情况下,防火墙阻止传入的stream量,例如端口25上的stream量进入服务器。 话虽如此,我通常将防火墙configuration为只允许来自已知邮件服务器的端口25上的出站stream量。

无论哪种方式,它真的取决于您的防火墙configuration,但要尽可能详细地回答你的问题,你问它…开放25出站不等于有25开放入站。 如果您启用端口25上的出站stream量,您将能够发送邮件。 如果您将其closures,您将无法收到邮件。

这当然取决于防火墙在networking拓扑中的位置。

如果您只想发送电子邮件而不接收电子邮件,则可以打开端口25,但不能打开端口。或者,您可以使用非标准端口中继(例如NO-IP中继 (与公司无关))。 虽然我不确定你为什么要这样做。