1.3.3. 仮想ユーザーを使用するための Dovecot の準備
デフォルトでは、Dovecot はサービスを使用するユーザーとして、ファイルシステム上で多くのアクションを実行します。ただし、1 人のローカルユーザーを使用してこれらのアクションを実行するように Dovecot バックエンドを設定すると、複数の利点があります。
利点:
- Dovecot は、ユーザーの ID (UID) を使用する代わりに、特定のローカルユーザーとしてファイルシステムアクションを実行します。
- ユーザーは、サーバー上でローカルに利用できる必要はありません。
- すべてのメールボックスとユーザー固有のファイルを 1 つのルートディレクトリーに保存できます。
- ユーザーは UID とグループ ID (GID) を必要としないため、管理作業が軽減されます。
- サーバー上のファイルシステムにアクセスできるユーザーは、これらのファイルにアクセスできないため、メールボックスやインデックスを危険にさらす可能性はありません。
- レプリケーションのセットアップはより簡単です。
前提条件
- Dovecot がインストールされている。
手順
vmailユーザーを作成します。# useradd --home-dir /var/mail/ --shell /usr/sbin/nologin vmailDovecot は後でこのユーザーを使用してメールボックスを管理します。セキュリティー上の理由から、この目的で
dovecotまたはdovenullシステムユーザーを使用しないでください。/var/mail/以外のパスを使用する場合は、それに SELinux コンテキストmail_spool_tを設定します。例:# semanage fcontext -a -t mail_spool_t "<path>(/.)?"* # restorecon -Rv <path>/var/mail/への書き込み権限をvmailユーザーにのみ付与します。# chown vmail:vmail /var/mail/ # chmod 700 /var/mail//etc/dovecot/conf.d/10-mail.confファイルのmail_locationパラメーターをコメント解除し、メールボックスの形式と場所を設定します。mail_location = sdbox:/var/mail/%n/この設定の場合:
-
Dovecot は、
singleモードで高パフォーマンスのdboxメールボックス形式を使用します。このモードでは、サービスは、maildir形式と同様に、各メールを個別のファイルに保存します。 -
Dovecot はパス内の
%n変数をユーザー名に解決します。これは、各ユーザーがメールボックス用に個別のディレクトリーを持つようにするために必要です。
-
Dovecot は、