.png)
Postfix サーバー経由でメールを送信しようとしています。コマンド ラインから次のように入力します。
echo "This is the body of the email" | mail -s "subject line" [email protected]`
その後、log/mail.info に表示されるエラーは次のようになります。
postfix/smtp[23093]: connect to mail.mydomain.com[my.ip.add.here]: Connection refused (port 25)
netstat -an |more と入力すると、次のように表示されます。
...
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
...
いいえ0.0.0.0:25
、それが何か違いを生むのでしょうか?
編集
を実行するとnetstat -plntu
、3587/master
127.0.0.1:25 の pid/プログラム名が表示されます。pid/プログラム名に postfix がリストされていません。メール サーバーが動作していない可能性があります。動作していると聞きました。
...
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3587/master
...
編集
次のように入力してPostfixが動作していることを確認します。postfix start
編集
役立つかどうか、サーバー上でこれを試してください:
telnet mail.mydomain.com 25
Trying 202.192.77.135...
telnet: connect to address 202.192.77.135: Connection refused
この問題は何度も解決されていると承知していますが、私は単なる Web 開発者なので、もう少しガイダンスが必要かもしれません。ありがとうございます。
答え1
メール ログには、postfix サーバー (localhost 上) に接続できることが示されています。postfix は外部 SMTP サーバー (mail.mydomain.com) に接続できず、telnet でも接続できません。
おそらく、送信 SMTP をブロックするファイアウォール (ISP 側) があるのでしょう。これはスパムをブロックするためによく使用されます。回避策としては、電子メールの中継に他のメール サーバー (Gmail など) を使用し、安全な SMTP (ポート 465/587) と認証を使用して接続することができます。
これはこれに関する素晴らしいハウツーです:https://www.howtoforge.com/tutorial/configure-postfix-to-use-gmail-as-a-mail-relay/