Linux Webアプリがあります。
PHP mail関数を使用してのみメールを送信するためにポート25を開く必要がありますか?ポート25を開く必要がある場合、メールの受信を無効にするにはどうすればよいですか?
編集: sendmailが私のサーバー上のメッセージ転送エージェントであることを理解しているので、質問しています。
php mail()関数は、バイナリのようにsendmailを使用してメールを送信します。
mTA(ポート25でリッスンするサービス)には、sendmailのようなプログラムがあり、その目的に役立ちます。
ポート25を開いたくない場合は、世界からのすべての接続に対してファイアウォールを使用できます。例えば
iptables -I INPUT -p tcp -i eth0 --dport 25 -j REJECT
番号
ファイアウォールルールで送信トラフィックが許可されている限り、ポート25を開いてsend電子メールを送信する必要はありません。
マシンに受信メールを送信する場合にのみ、ポート25を開く必要があります。
ファイアウォールがサーバー/ゲートウェイ/どこに設定されているかによります。
ほとんどの場合、ファイアウォールは、サーバーに着信するポート25のトラフィックなどの着信トラフィックをブロックします。そうは言っても、私は通常、既知のメールサーバーからのポート25での送信トラフィックのみを許可するようにファイアウォールを構成します。
どちらの方法でも、それは実際にはファイアウォールの構成に依存しますが、質問に答えるのと同じくらい詳細に質問に答える...発信25を開くことは、着信25を開くこととは異なります。ポート25で送信トラフィックを有効にすると、メールを送信できるようになります。受信を閉じたままにすると、メールを受信できなくなります。
もちろん、これはファイアウォールがネットワークトポロジのどこにあるかによって異なります...
メールを送信するだけでメールを受信したくない場合は、ポート25を開いて、開けないようにすることができます。または、 NO-IPリレー (会社とは関係ありません)などの非標準のポートリレーを使用できます。 。なぜこれが必要なのかはわかりませんが。