web-dev-qa-db-ja.com

ユーザー固有のSieveファイルはどのように作成されますか?

私のDovecotのprotocol_ldaは次のとおりです。

protocol lda {
    log_path = /var/log/mail/dovecot-deliver.log
    auth_socket_path = /var/run/dovecot/auth-master
    postmaster_address = [email protected]
    mail_plugins = sieve
    mail_plugin_dir = /usr/lib/dovecot/modules/lda
    global_script_path = /etc/sieve/globalsieverc
    sieve_before = /etc/sieve/sieve_before
    sieve = file:~/sieve;active=~/.dovecot.sieve

}

/home/someuser/.dovecot.sieveをタッチしてファイルを作成し、ディレクトリ~/sieveを作成し、次の内容で/home/someuser/someuser.sieveを作成しました。

require ["fileinto"];

if address :domain :is "From" "gmail.com" {
  fileinto "XXX";
  stop;
}

ただし、Gmailアカウントからのメールは、XXXではなくINBOXに送信されています。

編集:一言で言えば、私が興味を持っているユースケースは次のとおりです。

Linuxシステムユーザーごとに1つのメールボックスを持つポストフィックス構成の管理者として

デフォルトのグローバルルールに加えて、ユーザーごとに(ホームディレクトリに)1つのふるいルールファイルが必要です

各ユーザーのルールが分離され(読みやすく)、使用するたびに独自のルールを構成できるようにします

2018-08-29を編集:次のようにして動作するようになりました:

  • /home/malmeida/sieve/name.sieveを指すシンボリックリンク〜/ .dovecot.sieve
  • 〜/ sieve /name.sieveのスクリプト
  • スクリプトの名前が異なる場合、dovecotはログに記録することに注意してください(たとえば、ファイルがactive_sieveと呼ばれる場合) "警告:sieve:ファイルストレージ:ActiveSieveスクリプトのシンボリックリンク/home/user/.dovecot.sieveが壊れています:無効なscriptname(/home/user/sieve/active_sieve)。」
1
mmalmeida

Sieveには、アクティブなsieveスクリプトの概念があります。 .dovecot.sieveはディレクトリではありませんが、アクティブなsieveスクリプトへのシンボリックリンクである必要があります。

言い換えると:

  • 〜/ sieveには複数のスクリプトが含まれる場合があります
  • 〜/ .dovecot.sieveは、これらのスクリプトの1つへのシンボリックリンクである必要があります

この設定により、dovecotは、各ユーザーのホームディレクトリ内のファイルに基づいてユーザーごとの構成を使用できるようになります。

2
cmouse