sendmail でメールを送ろうとして苦労してた。
webの問い合わせフォームだとか、php のsendmail をサーバでは使えるが、ローカルでは smart-relay な postfix を設定して試していた。
実にめんどくさいことだった。或る日、コマンドを眺めていて、ふと気づいた。sendmail って ssh経由で呼び出せるんじゃね。
ローカルのpostfix を経由してsendmail を使う場合、次のように、ローカルのUNIXソケットを使って sendmailコマンドを起動したら終了である。
cat sample-mail.txt |sendmail -i -t
これ、ssh経由でコマンド呼び出せば、メール配信完了するんじゃないか。ためしたできた。いままでの 苦労は何だったんだ・・・
ssh を使ってメールを送信
HostBのsendmail は、じつは、SSH経由で呼び出すことができる。
cat sample-mail.txt | ssh HostB /usr/sbin/sendmail -i -t
この、sendmail コマンドは、ssh 経由でも起動することができるので、とてもかんたんに sendmail を使うことができる。
ぶっちゃけ、php だとか、wordpressだとか、python だとかを開発環境で動かす際のメール配送はこれでほとんどが解決する。