Postfixは、非常に広く使用されているSMTP(Simple Mail Transfer Protocol)サーバーの一つで、メールの送信や受信を効率的に処理します。この記事では、Ubuntu 14.04でPostfixをインストールし、送信専用のSMTPサーバーとして設定する方法について、完全かつ包括的に説明します。
1. 必要なパッケージのインストール
まず最初に、Postfixをインストールするために必要なパッケージをインストールします。以下のコマンドを実行してください。

bashsudo apt-get update sudo apt-get install postfix mailutils
このコマンドは、Postfixとメールユーティリティ(mailutils)をインストールします。インストール中に、Postfixの設定ウィザードが表示されますので、以下の手順に従って設定します。
2. Postfixの設定
インストールが完了すると、Postfixの設定が求められます。設定ウィザードでの選択肢は次の通りです:
-
メールサーバの種類
「インターネットサイト」を選択します。これにより、PostfixはSMTPサーバーとして動作するように設定されます。 -
システムメール名
ここでは、サーバーのドメイン名(例:example.com
)を入力します。もしドメインがない場合、サーバーのFQDN(完全修飾ドメイン名)を入力してください。 -
SMTP認証の設定
今回は送信専用のSMTPサーバーを設定するため、特に認証設定を有効にする必要はありません。
3. 設定ファイルの確認
Postfixの設定ファイルは/etc/postfix/main.cf
にあります。ここで、いくつかの重要な設定を確認していきます。
3.1 ホスト名の設定
/etc/postfix/main.cf
ファイルを開き、myhostname
とmydomain
の設定が正しいかを確認します。
bashsudo nano /etc/postfix/main.cf
以下のように設定します(例としてexample.com
を使用):
textmyhostname = mail.example.com mydomain = example.com
3.2 送信専用の設定
送信専用SMTPサーバーとしてPostfixを使用する場合、受信機能を無効化することができます。/etc/postfix/main.cf
で以下の設定を行います。
textinet_interfaces = loopback-only
これにより、サーバーはローカルホスト(127.0.0.1)からのみ接続を受け入れるようになります。外部からの接続を受け付けない設定です。
3.3 リレー許可設定
他のメールサーバーにメールを中継するために、mydestination
やrelayhost
の設定も確認します。
textmydestination = $myhostname, localhost.$mydomain, localhost relayhost = [smtp.your-isp.com]:587
relayhost
には、利用する外部SMTPサーバーのホスト名とポート番号を設定します。例えば、Gmailを使用する場合は次のように設定します。
textrelayhost = [smtp.gmail.com]:587
4. SMTP認証の設定
送信専用のSMTPサーバーとしてPostfixを使用する場合、SMTP認証を設定することで、特定のユーザーに対して認証を要求できます。/etc/postfix/sasl/sasl_passwd
というファイルを作成し、認証情報を記述します。
bashsudo nano /etc/postfix/sasl/sasl_passwd
以下のように、SMTPサーバーへの認証情報を設定します(Gmailの例):
その後、このファイルをPostfixが使用する形式に変換します。
bashsudo postmap /etc/postfix/sasl/sasl_passwd
5. サービスの再起動
設定が完了したら、Postfixサービスを再起動して新しい設定を反映させます。
bashsudo service postfix restart
これでPostfixが送信専用SMTPサーバーとして動作する準備が整いました。
6. メール送信のテスト
最後に、設定が正しく行われているかを確認するために、メールを送信してテストを行います。以下のコマンドを使用して、メールが正常に送信されるか確認します。
これで、[email protected]
にテストメールが送信されます。もしエラーが発生した場合、/var/log/mail.log
を確認してエラーメッセージを調べます。
bashtail -f /var/log/mail.log
7. セキュリティ設定
送信専用のSMTPサーバーを運用する場合、セキュリティも非常に重要です。以下の設定を行って、メールの送信を安全にします。
7.1 TLS/SSLの有効化
送信メールを暗号化するため、TLS(Transport Layer Security)を有効にします。/etc/postfix/main.cf
に次の設定を追加します。
textsmtp_tls_security_level = may smtp_tls_loglevel = 1
これにより、可能であればTLS暗号化が使用されます。
7.2 スパム対策
Postfixにはスパム対策の機能もあります。/etc/postfix/main.cf
に以下の設定を追加することで、スパムメールの送信を防ぐことができます。
textsmtpd_client_restrictions = permit_mynetworks, reject_unauth_pipelining, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname
8. 最後に
Postfixを送信専用SMTPサーバーとして設定することで、メールの送信を効率的かつ安全に行うことができます。今回紹介した手順に従って設定を行うことで、Ubuntu 14.04で動作する強力なメール送信サーバーを構築することができます。
適切なセキュリティ対策とメンテナンスを行うことで、安定した運用を保つことができます。