OpenWrt 10.03を使用しており、ルーターから「レポート」を電子メールで送信する必要があります。 sendmailをインストールしました:
# opkg install mini-sendmail
次に、ISPのSMTPサーバーを使用しました。
# echo -e "From: [email protected]\nSubject: SUBJECT\nReply-to: [email protected]\n\nBODYHERE" \
> | mini_sendmail -sMYISPSSMTPSERVER [email protected]
mini_sendmail: unexpected response 550 to RCPT TO command
質問:
ISPがポート25をブロックしていることをどうやって知ることができますか?
# telnet MYISPSSMTPSERVER 25
220 MYISPSSMTPSERVER ESMTP ready
quit
221 MYISPSSMTPSERVER closing connection
Connection closed by foreign Host
だからそれはブロックされていませんか?
ポート25がブロックされていない場合、どうすればこれを確認できますか? ISPに「メールユーザー」が必要ですか?
解決策:ssmtpをインストールし、次のようにsslsmtpに無料のメールアドレスを登録しました。
# opkg install ssmtp
$ cat /etc/ssmtp/ssmtp.conf
[email protected]
mailhub=SMTP.EXAMPLE.COM:465
rewriteDomain=EXAMPLE.COM
hostname=EXAMPLE.COM
FromLineOverride=YES
UseTLS=YES
AuthUser=MYEMAIL
AuthPass=PASSWORDHERE
$ echo -e "From: [email protected]\nSubject: SUBJECT\nReply-to: [email protected]\n\nBODYHERE" \
> | ssmtp -vvv [email protected]
古いことは知っていますが、「openwrt smtp」を検索すると表示されるリンクの1つです。
このリンクをたどってください- https://forum.openwrt.org/viewtopic.php?id=18669
Linkrotの問題を防ぐために。
最初のインストール。
# opkg install msmtp
次に、構成ファイルを作成します。
# cat /etc/msmtprc
account default
Host smtp.gmail.com
port 587
auth on
user [email protected]
password password
auto_from off
from [email protected]
tls on
tls_starttls on
tls_certcheck off
logfile
syslog LOG_MAIL
電子メールを送信するには、通常のsendmailアプローチを使用します。
ルーターを方程式から外して、telnet経由でメールを送信できますか? ISPは、メールサーバーへの接続を許可しながら、アウトバウンドSMTP(tcp/25)を完全にブロックすることがよくあります。これは、メールを中継するためのスマートホスト(認証が必要な場合があります)として使用できます。
通常、消費者向けインターネットサービスプロバイダーは、自社以外のすべてのSMTPサーバーのTCP/25をブロックします。そのため、ルーターからtelnetで接続できるのはまったく正常なことです。
ISPはSMTP経由で送信する前に認証を必要とする場合があり、mini_sendmailがSMTP AUTHをサポートしているとは思わない。 mini_sendmailの代わりに(またはそれに加えて)ssmtp opkgを見るかもしれません: http://linux.die.net/man/5/ssmtp.conf