Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

第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 サービスが起動していることを前提としています。
  1. getenforce コマンドを実行して、SELinux が Enforcing モードで実行されていることを確認します。
    ~]$ getenforce
    Enforcing
    
    SELinux が Enforcing モードで実行されていると、このコマンドは Enforcing を返します。
  2. 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
    
  3. 次のコマンドを実行して、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
    
    ここでは、Postfix master プロセスに関連する SELinux コンテキストが system_u:system_r:postfix_master_t:s0 になっています。文脈の最後の部分である postfix_master_t は、この処理のタイプです。タイプは、プロセスのドメインとファイルのタイプを定義します。この例では、master プロセスが postfix_master_t ドメインで実行しています。


[22] 詳細は、System Administrator's GuidePostfix セクションを参照してください。