postfixのインストール方法

MTAは、メール転送エージェント(Mail Transfer Agent)、メール転送用のソフトウェアのこと

代表的なMTAはpostfix と sendmail。現在の主流は postfix で、sendmail は昔の主流。

postfixのインストール方法

利用しているメーラー(MTA)の確認

alternatives --display mta

postfix を利用している場合は下記の結果になる

リンクは現在 /usr/sbin/sendmail.postfix を指しています

sendmail を利用している場合は下記の結果になる

リンクは現在 /usr/sbin/sendmail.sendmai を指しています

postfix がインストールされているか

rpm -qa | grep postfix

sendmail がインストールされているか

rpm -qa | grep sendmail

postfix がインストール可能か

sudo dnf list available postfix

インストール

sudo dnf install postfix

起動ができない

postfixのインストールを終えて軌道を試みるができない

エラーが出る

sudo systemctl start postfix
Job for postfix.service failed because the control process exited with error code.

エラーの詳細と、関連部分を抜粋

$ sudo systemctl status postfix.service
postfix/sendmail[3255]: fatal: parameter inet_interfaces: no local interface found for ::1

このエラーメッセージは、PostfixがIPv6のループバックアドレス(::1)に対応するインターフェースを見つけられなかったことを示す

/etc/postfix/main.cf を以下のように修正

inet_protocols = all

↓↓↓↓↓

inet_protocols = ipv4

postfixの再起動と動作の確認

sudo systemctl restart postfix
sudo systemctl status postfix

送信履歴の見方

メールログの場所

/var/log/maillog

コマンドラインからメールを送るには

postfixだけではコマンドラインからメールを送れない

mailxかs-nailのようなツールをインストールする必要がある

almalinux9の場合は、s-nailを利用する

s-nailがインストール可能か

dnf list s-nail

s-nailのインストール

sudo dnf install s-nail

コマンドラインから送信テストの記述例

echo "これはテストメールです。" | s-nail -s "テストメールの件名" -r "from@example.com" to@example.com

自分はcrontabで利用している。また、送信先によっては、送信元がexample.comのようなドメインのメールアドレスではメールサーバーから受け取りを拒否されるので実際のメールアドレスを記入すること。

以下の設定もする

タイトルとURLをコピーしました