2.4 KiB
2.4 KiB
PostfixのComposeプロジェクト
1. ディレクトリの作成
sudo mkdir -p /opt/postfix
sudo chown $USER:$USER /opt/postfix
cd /opt/postfix
2. compose.ymlの作成
compose.yml:
services:
postfix:
image: boky/postfix:latest
restart: unless-stopped
hostname: mail.unchioshi.net
environment:
TZ: Asia/Tokyo
ALLOWED_SENDER_DOMAINS: unchioshi.net
ports:
- "127.0.0.1:2525:25"
- Dockerイメージは
boky/postfix(送信用のSMTPリレーのイメージ)を利用 ALLOWED_SENDER_DOMAINSにはメールの送信元として許可するドメインを指定- コンテナのTCP 587番ポートをホスト側の2525番ポートに公開
3. コンテナの起動
docker compose up -d
4. 送信テスト
swaksをインストール:
sudo apt update
sudo apt install swaks
メール送信:
swaks \
--server localhost \
--port 2525 \
--from notification@unchioshi.net \
--to t.murate1124@gmail.com \
--header "Subject: Postfix SMTP Test"
--body "Hello from Postfix!"
--server <server>... SMTPサーバの接続先--port <port>... SMTPサーバのポート--from <source-address>... 送信元メールアドレス--to <target-address>... 送信先メールアドレス--header <header>... メールヘッダー--body <content>... メール本文
補足:正引きと逆引きの対応を一致させ、PostfixがSMTP通信で名乗るホスト名も揃える
正引きと逆引きの対応:
tsubanyan@localhost:~$ dig +short mail.unchioshi.net A
46.250.255.203
tsubanyan@localhost:~$ dig +short -x 46.250.255.203
mail.unchioshi.net.
tsubanyan@localhost:~$
- 対応が取れていない場合は適宜編集する
- 正引きはゾーン情報を編集する
- 逆引きホスト名は、サーバ側の管理画面から設定
Postfixのホスト名を合わせる
myhostname = mail.unchioshi.net
- PostfixがSMTP通信で自身を識別する際のホスト名
smtp_helo_name = mail.unchioshi.net
- 外部へのSMTP接続で使用するEHLO名
- 通常
smtp_helo_nameのデフォルト値は$myhostnameなので明示的に設定する必要はない
補足:SPF・DMARC対策
tsubanyan@localhost:~$ dig +short unchioshi.net TXT
"v=spf1 a mx ~all"
tsubanyan@localhost:~$ dig +short _dmarc.unchioshi.net TXT
"v=DMARC1; p=none"
tsubanyan@localhost:~$
- ゾーン情報を編集して設定