株式会社エスロジカル
株式会社エスロジカル
SSL証明書(DV、OV、EV)、セキュリティ、Web開発、Linux開発、Go言語

HOME > 技術ドキュメント > Postfix メールサーバー + TLS 設定(Ubuntu 24.04 LTS)

Postfix メールサーバー + TLS 設定(Ubuntu 24.04 LTS)


Postfix は Linux で広く使われる MTA(メール転送エージェント)です。 本記事では Ubuntu 24.04 LTS へのインストールから TLS(STARTTLS)の設定、動作確認までを解説します。 メールサーバーの TLS には SSL 証明書が必要です。


sudo apt update
sudo apt install -y postfix

インストール中に設定ウィザードが起動します。

設定項目 選択値
General type of mail configuration Internet Site
System mail name mail.example.com(FQDN)

設定ファイルは /etc/postfix/main.cf です。

sudo nano /etc/postfix/main.cf
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 127.0.0.0/8
home_mailbox = Maildir/

Web サーバーと同じドメインの SSL 証明書を使えます。証明書のパスを main.cf に追記します。

# TLS 受信設定(smtpd = SMTP サーバー側)
smtpd_tls_cert_file = /etc/ssl/certs/fullchain.pem
smtpd_tls_key_file  = /etc/ssl/private/server.key
smtpd_tls_security_level = may
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_loglevel = 1

# TLS 送信設定(smtp = SMTP クライアント側)
smtp_tls_security_level = may
smtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_loglevel = 1
sudo postfix check
sudo systemctl restart postfix

openssl s_client -connect mail.example.com:25 -starttls smtp

証明書情報が表示されれば TLS が有効です。接続後に quit で終了します。


sudo apt install -y mailutils
echo "テスト本文" | mail -s "テスト件名" you@example.com

ログで確認します。

sudo tail -f /var/log/mail.log

sudo ufw allow 25/tcp    # SMTP(他サーバーからの受信)
sudo ufw allow 587/tcp   # Submission(メールクライアントからの送信)

技術 DNS レコード 効果
SPF TXT レコード 正規の送信サーバーの IP アドレスを宣言。なりすまし防止
DKIM TXT レコード 送信メールに電子署名を付与。改ざん検知
DMARC TXT レコード SPF/DKIM 失敗時のポリシーを指定(none/quarantine/reject)

SPF は DNS の TXT レコードに追加するだけで設定できます。

example.com. IN TXT "v=spf1 ip4:203.0.113.1 -all"

Postfix は MTA(送受信)、Dovecot は MDA(メールボックス管理・IMAP/POP3)を担当します。 Dovecot を追加することでメールクライアント(Thunderbird 等)からの IMAP/POP3 接続が可能になります。

sudo apt install -y dovecot-core dovecot-imapd dovecot-pop3d

Postfix の TLS 設定には SSL証明書(サーバー証明書)が必要です。 Web サーバーと同じドメインの証明書をメールサーバーにも使用できます(mail.example.com が証明書の SAN に含まれている場合)。 エスロジカルでは Web・メール兼用の SSL証明書も取り扱っています。
エスロジカルではデジサート・サイバートラストの正規取扱代理店として、 RapidSSL 3,960円/1年(税込)〜で SSL証明書を販売しています。審査サポート・インストール代行も対応しています。

SSL証明書の購入はこちら / SSL証明書とは? / インストール代行サービス


Nginx SSL/TLS 設定(Ubuntu 24.04 LTS) — Web サーバーへの SSL証明書設定
SSH 公開鍵認証・セキュリティ設定(Ubuntu 24.04) — サーバーへのセキュアなアクセス
UFW・Fail2ban 設定(Ubuntu 24.04) — ファイアウォールとブルートフォース対策


← 技術ドキュメント一覧へ戻る