ノート:
- このチュートリアルは、Oracle提供の無料ラボ環境で入手できます。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントに例の値を使用します。演習を完了するときは、これらの値をクラウド環境に固有の値に置き換えます。
Oracle LinuxでPostfixをインストールして構成する方法を学習します
イントロダクション
このチュートリアルでは、Oracle LinuxシステムにPostfix電子メール・サーバー・ソフトウェアをインストールして設定し、ネットワーク内でメッセージを送信する方法を示します。このチュートリアルは、Oracle Linux 8以降のユーザーを対象としています。
Postfixは、sendmail
の置換として開発されたメール転送エージェント(MTA)サーバーであり、これは多くの古いLinuxシステム上のデフォルトのMTAサーバーです。モジュラー・パイプライン・ベースのアーキテクチャにより、Postfixは汎用性があり、スパムやアンチウイルス処理など、多くの他のサービスや、Dovecot IMAPやPOPサーバーなどのメッセージ・ストア・ソフトウェアと簡単に統合できます。
このチュートリアルでは、主にSimple Mail Transfer Protocol (SMTP)サーバーとして機能するPostfixを設定および構成する方法について説明します。
目的
このラボを修了すると、次のことができるようになります。
- サーバー・ホスト名の設定
- 適切なファイアウォール・ルールを使用してPostfixをインストールします。
- 暗号化されていないEメールを送信するようにPostfixを構成します。
mailx
を使用したテスト電子メールの送信- Postfixメール・キューの確認
前提条件
- Oracle Linux 8を搭載したあらゆるシステム
Postfixのインストール
ノート:無料の演習環境を使用する場合は、接続やその他の使用方法の手順について、Oracle Linuxの演習の基本を参照してください。
-
次のように、パッケージ・マネージャを使用して、インスタンスに
postfix
パッケージをインストールします。sudo dnf install -y postfix
-
サーバー・ファイアウォールを介したSMTPトラフィックを許可:
sudo firewall-cmd --zone=public --add-service=smtp --permanent
sudo firewall-cmd --reload
-
sendmail
パッケージが存在する場合は削除します。sudo dnf remove -y sendmail
-
Postfixをデフォルトのメール転送エージェントとして設定します。
sudo alternatives --set mta /usr/sbin/sendmail.postfix
-
Postfixサービスを有効にして起動します。
sudo systemctl enable --now postfix
Postfixの構成
-
デフォルトのPostfix構成のバックアップを作成します。
sudo mv /etc/postfix/main.cf /etc/postfix/main.cf.bak
-
構成ファイル
/etc/postfix/main.cf
を編集して、次のような行を含めます。sudo tee -a /etc/postfix/main.cf > /dev/null <<EOF myhostname = $(hostname -f) myorigin = \$myhostname inet_interfaces = all inet_protocols = all mydestination = \$myhostname, localhost mynetworks = 192.168.1.0/24, 127.0.0.0/8, 10.0.0.0/24 home_mailbox = mail/ EOF
ノート: 1つのホストから電子メールを送信すると、この演習の目的で十分です。本番環境では、電子メールの送信元の登録済ドメイン名として
mydomain
を設定する必要があります。詳細は、Postfixのマニュアルページを参照してください。 -
Postfixサービスを再起動します。
sudo systemctl restart postfix
テスト電子メールを送信
-
mailx
電子メール・クライアントをインストールします:sudo dnf install -y mailx
-
自分の外部電子メール・アドレスにテスト電子メールを送信します。
mailx
コマンドのホスト名を、電子メールの送信元のインスタンスと一致するように更新します:hostname=$(hostname -f)
echo "External email" | mailx -r root@$hostname -s "Test email subject" admin@example.com
ノート:
mailx
を使用して単一ホストからテストEメールを送信すると、この演習の目的で十分です。本番環境では、かわりに、送信者の電子メール・アドレス内で/etc/postfix/main.cf
で構成した登録済ドメイン(root@example.com
など)を使用する必要があります。 -
新しいメッセージの電子メール・アカウントを確認してください。スパムフォルダのチェックが必要な場合があります。
-
電子メールが表示されない場合は、Postfixメール・キューを確認できます。
sudo mailq
-
Postfixログを確認することもできます。[Ctrl] + [C]を押して終了します。
sudo tail -f /var/log/maillog
その他の学習リソース
docs.oracle.com/learnの他のラボを調べるか、Oracle Learning YouTubeチャネルでさらに無料の学習コンテンツにアクセスします。さらに、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerにします。
製品ドキュメントは、Oracleヘルプ・センターを参照してください。
Learn to Install and Configure Postfix on Oracle Linux
F47604-07
February 2023
Copyright © 2021, Oracle and/or its affiliates.