dovecot:鸽巢筛守护进程未启动

dovecot:鸽巢筛守护进程未启动

我正在尝试让 dovecot + pigeonhole sieve 在 ubuntu 14.04 上运行。

从我读过的所有内容来看,这似乎应该非常简单,但我似乎无法让它发挥作用。

我已经安装并配置了 dovecot,一切运行正常。现在我正尝试让 pigeonhole 进行过滤。

我从 repo 安装了 pigeonhole:

apt-get install -y dovecot-sieve dovecot-managesieved

这是我的 dovecot.conf:

disable_plaintext_auth = no
mail_privileged_group = mail
mail_location = mbox:~/mail:INBOX=/var/mail/%u

userdb {
  driver = prefetch
}

userdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}

passdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}

protocols = imap lmtp

protocol imap {
  mail_plugins = " autocreate"
  disable_plaintext_auth = no
}

plugin {
  autocreate = Trash
  autocreate2 = Sent
  autosubscribe = Trash
  autosubscribe2 = Sent
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
}

service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
}

service lmtp {
    unix_listener /var/spool/postfix/private/dovecot-lmtp {
        group = postfix
        mode = 0600
        user = postfix
    }
}

protocol lmtp {
    [email protected]
    hostname=irn.cc
    mail_plugins = $mail_plugins sieve
}

protocol sieve {
}

ssl=required
ssl_cert = </etc/ssl/certs/mailcert.pem
ssl_key = </etc/ssl/private/mail.key

据我所知,启动 dovecot 应该也会启动 sieve 守护进程。但是,4190 上似乎没有任何内容在监听。

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      241/master      
tcp        0      0 0.0.0.0:993             0.0.0.0:*               LISTEN      1706/dovecot    
tcp        0      0 0.0.0.0:587             0.0.0.0:*               LISTEN      241/master      
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN      1706/dovecot    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -               
tcp6       0      0 :::993                  :::*                    LISTEN      1706/dovecot    
tcp6       0      0 :::143                  :::*                    LISTEN      1706/dovecot    
tcp6       0      0 :::80                   :::*                    LISTEN      420/apache2     
tcp6       0      0 :::22                   :::*                    LISTEN      -               
tcp6       0      0 :::5432                 :::*                    LISTEN      -               
udp        0      0 0.0.0.0:68              0.0.0.0:*                           -               
udp        0      0 172.17.42.1:123         0.0.0.0:*                           -               
udp        0      0 10.0.8.15:123           0.0.0.0:*                           -               
udp        0      0 127.0.0.1:123           0.0.0.0:*                           -               
udp        0      0 0.0.0.0:123             0.0.0.0:*                           -               
udp        0      0 0.0.0.0:59800           0.0.0.0:*                           -               
udp        0      0 0.0.0.0:35789           0.0.0.0:*                           -               
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           -               
udp6       0      0 fe80::5484:7aff:fef:123 :::*                                -               
udp6       0      0 fe80::250:56ff:fe81:123 :::*                                -               
udp6       0      0 ::1:123                 :::*                                -               
udp6       0      0 :::123                  :::*                                -               
udp6       0      0 :::58320                :::*                                -               

我是不是漏掉了启动它的步骤?日志似乎没有显示任何错误,也没有显示任何表明它看到这些设置的迹象。我看到的只是 dovecot 进程正在启动。

Jun 22 17:10:51 castle dovecot: master: Dovecot v2.2.9 starting up

答案1

您必须启用以下sieve常规功能:

protocols = imap sieve

然后你必须从deliverLDA 启用筛选调用:

protocol lda {
  mail_plugins          = sieve 
. . . . .
}

现在您必须配置插件本身:

plugin {
  sieve_before          = /etc/dovecot/common.sieve
  sieve_dir             = ~/sieve/
  sieve                 = ~/user.sieve
. . . . .
}

最后一步——您必须配置managesieve守护进程:

service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
}

答案2

和往常一样,我发布问题后立即就找到了答案。

对于将来遇到此问题的人,我必须sieve补充protocols

protocols = imap lmtp sieve

相关内容