メールサーバーの疎通テストを簡単にやりたい
メールサーバーに接続して送信するのを定期的にチェックしています。
昭和平成のレトロ家庭用の機器(FAX)などがメールに対応しててもSMTPSに非対応なので、Raspiでプロキシしていますが、疎通テストや認証テストが面倒なので、自動的にチェックしたい
crontab にかけるくらい単純にしたい。
curl --url 'smtps://smtp.gmail.com:465' \ --ssl-reqd \ --mail-from 'example@gmail.com' \ --mail-rcpt 'edm-user@example.com.com' \ --upload-file mail.txt \ --user 'developer@gmail.com:your-accout-password'
curl -v --url 'smtp://192.168.1.1:25255' \ --mail-from from@example.com \ --mail-rcpt to@example.com \ --form-string content=hello
curl でやるのが一番ラク
telnet で接続確認して、そのまま送ると自動化できない。
expect で telnet するのは流石に違う。
python でsmtplib などを使うのもいいが管理が煩雑だ。
ssmpt をインストールするのも面倒だ。
curl は比較的にどこにでも入ってる。
curl ならコマンドがどこにでもあるし、crontab に書くのもらくちんだった。
参考資料
https://blog.edmdesigner.com/send-email-from-linux-command-line/