
postfix デーモンをセットアップして、アカウントに電子メールを送信できるようになりました。また、メール クライアント経由でログインして、それらの電子メールを取得することもできます。
しかし、私がやろうとしているのは、受信メールと送信メールの両方に同じ URL (例: mail.mydomain.org) を使用することです。
これまでのところ、送信メール サーバーとして mail.mydomain.org を使用してメールを送信すると、接続されません。
なぜ動作しないのかを理解するためにこれをデバッグするにはどうすればよいでしょうか?
答え1
これまでのところ、送信メール サーバーとして mail.mydomain.org を使用してメールを送信すると、接続されません。なぜ機能しないのかを理解するために、これをデバッグするにはどうすればよいでしょうか?
これを機能させるには、メールサーバーがポート25(SMTP)とポート587(送信)をリッスンしている必要がありますmail.mydomain.org
。nmapなどのポートスキャナーを使用してください。サーバーではなく外部クライアント上どのポートがmail.mydomain.org
開いているかを確認するには:
nmap mail.mydomain.org
少なくとも SMTP のポート 25 が開いていること、またメール クライアントでメールを取得できるように POP3/IMAP ポートも開いていることが表示されます。
サーバー自体では、netstat を使用して、どのプログラムがどのポートをリッスンしているかを表示できます。
netstat -lntp
ただし、聞くだけでは十分ではないことに注意してください。次の点も確認する必要があります。
- netstat show の SMTP ポートの外部アドレスとローカル アドレスの両方が
0.0.0.0
表示されるため、外部クライアントが実際に接続できるようになります。たとえば、メール サーバーが 127.0.0.1 のみをリッスンしている場合は、同じサーバー上で実行されているプログラムのみが接続できます。 - サーバーにファイアウォールがある場合: ファイアウォールが SMTP ポートへの外部接続を許可していることを確認します。ファイアウォールの誤った構成を排除するために、テスト目的でファイアウォールを無効にすることができます。
- サーバーが NAT ルーターの背後にある場合: ルーターがポート 25 をサーバーに転送するように設定されていることを確認します。