手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 22.04 Postfix ローカル MTA – サーバー通知メールの最小構成

Ubuntu 22.04 でローカル MTA として Postfix を使う手順です。ここでの目的は、サーバー自身から管理者宛ての通知メールを送れるようにすることであり、外部からメールを受ける本格的なメールサーバーを作ることではありません。

監視、cron、ログ監視、各種アプリケーションの通知を扱う場合、サーバー上に最小限の MTA があると運用しやすくなります。この記事では、ローカル配送と relayhost を使う通知用途に絞って整理します。

参考書籍
参考書籍

Postfix詳解 MTAの理解とメールサーバの構築・運用

Postfix を中心にメールサーバーの構築と運用を確認したい場合の参考書籍です。Dovecot と組み合わせたメール基盤を理解する補助として使えます。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

関連するメールサーバー記事

Postfix と Dovecot は役割が異なります。ローカル通知、内部向け SMTP、IMAP 受信を分けて読むと、メール基盤の責務を整理しやすくなります。

ローカル MTA の位置づけ

構成役割
ローカル MTAサーバー自身から通知メールを送る
内部向け Postfix内部ネットワークの SMTP 基盤として中継や配送を扱う
DovecotIMAP / POP3 によるメール閲覧を扱う
外部公開メールサーバーMX、SPF、DKIM、DMARC、迷惑メール対策まで含む

ローカル MTA は、外部から SMTP 接続を受ける構成ではありません。通知を送るための最小構成として、待ち受け範囲や配送先を絞ることが重要です。

Postfix をインストールする

sudo apt update
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y postfix mailutils

インストール時に対話画面が出る場合は、ローカル通知用途では Local only または Internet Site を選び、後から main.cf を明示的に調整します。

main.cf を設定する

ローカル通知用途では、外部からの受信を避けるため inet_interfaces = loopback-only を基本にします。外部送信は必要に応じて relayhost に渡します。

sudo postconf -e 'myhostname = server.example.local'
sudo postconf -e 'myorigin = /etc/mailname'
sudo postconf -e 'inet_interfaces = loopback-only'
sudo postconf -e 'inet_protocols = ipv4'
sudo postconf -e 'mydestination = $myhostname, localhost.$mydomain, localhost'
sudo postconf -e 'relayhost = [smtp.example.local]:25'

relayhost を使わない場合、サーバーから直接外部へ配送しようとします。通知用途では、内部の SMTP リレーやメール基盤へ渡す方が管理しやすいです。

送信元名を設定する

echo 'example.local' | sudo tee /etc/mailname
sudo systemctl restart postfix

設定を確認する

postconf -n
systemctl status postfix --no-pager
ss -ltnp | grep ':25' || true

ローカル MTA では、25 番ポートが外部インターフェースで待ち受けていないことを確認します。通知送信だけが目的なら、外部から SMTP 接続を受ける必要はありません。

テストメールを送信する

echo 'Postfix local MTA test' | mail -s 'postfix local test' admin@example.local
sudo tail -n 50 /var/log/mail.log

root 宛てメールを転送する

システム通知が root 宛てに届く場合、管理者アドレスへ転送する aliases を設定します。

sudo tee -a /etc/aliases <<'EOF'
root: admin@example.local
EOF

sudo newaliases
sudo systemctl reload postfix

運用上の注意

  • ローカル通知用途では外部から SMTP を受けない
  • 直接外部配送ではなく relayhost に渡す構成を基本にする
  • root 宛て通知の転送先を明示する
  • メールログで配送失敗を確認する
  • 受信や IMAP が必要な場合は Dovecot 側の記事で扱う

まとめ

Ubuntu 22.04 の Postfix ローカル MTA は、サーバー自身から通知メールを送るための最小構成です。外部公開メールサーバーとは目的が異なるため、待ち受け範囲を loopback に絞り、必要に応じて relayhost へ配送する構成にします。

Ubuntu 22.04 Postfix ローカル MTA – サーバー通知メールの最小構成

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る