第23章 postfix
Postfix はオープンソースのメールトランスポートエージェント (MTA) で、LDAP、SMTP AUTH (SASL)、TLS などのプロトコルに対応します。[22]
Red Hat Enterprise Linux では、postfix パッケージにより Postfix が提供されます。以下のコマンドを実行して、postfix パッケージがインストールされているかどうかを確認します。
~]$ rpm -q postfix
package postfix is not installed
インストールされていない場合は、
yum
ユーティリティー root を使用して、インストールします。
~]# yum install postfix
23.1. Postfix および SELinux
Postfix が有効になると、デフォルトで制限ありで実行されます。制限のあるプロセスは、独自のドメインで実行され、他の制限のあるプロセスから分離されます。制限のあるプロセスが攻撃者によって侵害された場合、SELinux ポリシーの設定に応じて、攻撃者のリソースへのアクセスと、攻撃者が行う可能性のある損害は制限されます。以下の例は、Postfix と、そのドメインで実行している関連プロセスを示しています。この例では、postfix パッケージがインストールされ、Postfix サービスが起動していることを前提としています。
- getenforce コマンドを実行して、SELinux が Enforcing モードで実行されていることを確認します。
~]$ getenforce Enforcing
SELinux が Enforcing モードで実行されていると、このコマンドはEnforcing
を返します。 - root で次のコマンドを入力して、
postfix
を起動します。~]# systemctl start postfix.service
サービスが実行中であることを確認します。出力には以下の情報が含まれている必要があります (タイムスタンプのみは異なります)。~]# systemctl status postfix.service postfix.service - Postfix Mail Transport Agent Loaded: loaded (/usr/lib/systemd/system/postfix.service; disabled) Active: active (running) since Mon 2013-08-05 11:38:48 CEST; 3h 25min ago
- 次のコマンドを実行して、
postfix
プロセスを表示します。~]$ ps -eZ | grep postfix system_u:system_r:postfix_master_t:s0 1651 ? 00:00:00 master system_u:system_r:postfix_pickup_t:s0 1662 ? 00:00:00 pickup system_u:system_r:postfix_qmgr_t:s0 1663 ? 00:00:00 qmgr
ここでは、Postfixmaster
プロセスに関連する SELinux コンテキストがsystem_u:system_r:postfix_master_t:s0
になっています。文脈の最後の部分であるpostfix_master_t
は、この処理のタイプです。タイプは、プロセスのドメインとファイルのタイプを定義します。この例では、master
プロセスがpostfix_master_t
ドメインで実行しています。