Icinga2 が mailx を利用しているようなので使い方をメモしておく
インストール
Icinga2 の説明では mailx を利用しているとのことだったので、以下のコマンドを実行した。
# dnf install -y mailx
実態は、s-nail がインストールされているようだ。
mailx コマンドは s-nail コマンドにシンボリックリンクされていた。
# which mailx
/usr/bin/mailx
# ls -al /usr/bin/mailx
lrwxrwxrwx. 1 root root 15 Aug 1 2024 /usr/bin/mailx -> /usr/bin/s-nail
#
利用方法
url エンコード
.mailrc にせよ /etc/s-nail.rc にせよ、コマンドラインにせよ、mta=smtp オプションで指定する「ユーザ名」および「パスワード」は、あらかじめ url エンコードしておく必要がある。
このエンコードは s-nail コマンド自身で実行できる。
エンコード例
ユーザ名 foo@example.com をエンコード
# echo 'urlcodec enc foo@example.com' | s-nail -#
foo%40example.com
#
「foo%40example.com」と変換された。
パスワード foo.bar をエンコード
# echo 'urlcodec enc foo.bar' | s-nail -#
foo.bar
#
変換前とかわらず。
メール送信例
コマンドラインで送る例のみ説明する。
条件は以下の通り
- smtp サーバ名 mail.example.com
- smtp サーバで必要な「ユーザ名」および「パスワード」は上記の「エンコードの例」と同じものとする。
- 送信元アドレス bar@example.com
- 送信先アドレス hoge@example.com
echo "mail_body" | s-nail -:/ -S smtp-use-starttls -S v15-compat -S mta=smtp://foo%40example.com:foo.bar@mail.example.com:587 -s "subject nanodesu" -r bar@example.com hoge@example.com
これで、サブジェクトが “subject nanodesu” で、メール本文が “mail_body” のメールが smtp サーバに向けて送信される。
コメント