LoginSignup
1
1

More than 5 years have passed since last update.

sendmail で宛先にメールが届かないときはアドレスをコマンドライン上で指定してみる

Posted at

環境

CentOS: 7.4

sendmail でメールが届かない

先日、こちらの記事を参考に、サーバー上のコマンドラインからメールを送ろうとしました。

そのときの手順としては以下のとおり。

① 適当なディレクトリに以下のようなテキストファイルを作成。

~/test_mail
From: <FROM-EMAIL-ADDRESS>
To: <TO-EMAIL-ADDRESS>
Subject: タイトルだよ
Content-Type: text/plain;charset="UTF-8"
Content-Transfer-Encoding: base64

メール送信テストだよ

catsendmail コマンドを使ってメールを送信。

# cat ~/test_mail | sendmail -i -t

本来はこれだけでメールが送られるはずですが、送れませんでした(自分のローカルで試すと成功する)。
また、/var/log/maillog を確認してもエラーは見受けられませんでした。

送信元と送信先をコマンドライン上で指定する

細かい原因は分かりませんでしたが、最終的に送信元と送信先のアドレスをコマンドライン上で指定することで解決しました。

~/test_mail 内の1~2行の From: <FROM-EMAIL-ADDRESS>To: <TO-EMAIL-ADDRESS> を削除したうえで、以下のコマンドを実行します。

cat ~/test_mail | sendmail -i -f <FROM-EMAIL-ADDRESS> <TO-EMAIL-ADDRESS>

-t オプションは必要ないので取り除き、代わりに -f オプションを利用して送信元アドレスを指定しています。また、同じく送信先アドレスもコマンド上で指定しています。

環境によってはまったく別の要因も考えられるかと思いますので、参考程度に見ていただければと思います。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1