[CentOS] Dovecot + ManageSieve + SquirrelMail AvelSieve

27. 10. 2011 19:12 (aktualizováno) Michal Jirka

Zprovoznit podporu Sieve pro Dovecot v distribuci CentOS není úplně jednoduché. Když nainstalujete balíček dovecot-sieve, tak se sice nainstaluje podpora pro sieve, ale nikoliv jako daemon, takže pro AvelSieve nepoužitelné.

Řešení je přidat podporu ManageSieve, avšak pro Dovecot v CentOS žádný takový balíček neexistuje. Řešení je poměrně jednoduché, i když ne moc systémové :-) Podotýkám, že uvedený postup jsem dělal na CentOS 5.4 64bit a dovecot ve verzi 1.1.20.

Na rpmfind lze najít balíček dovecot-managsieve ve verzi pro Fedoru 10, který lze i na CentOS použít. Instalaci zkusíme s kontrolou závislostí, dostaneme hlášku:

# rpm -Uvh dovecot-managesieve-1.1.20–1.fc10.x86_64.rpm error: Failed dependencies: dovecot = 1:1.1.20–1.fc10 is needed by dovecot-managesieve-1.1.20–1.fc10.x86_64 libcrypto.so.7()(64bit) is needed by dovecot-managesieve-1.1.20–1.fc10.x86_64 libssl.so.7()(64bit) is needed by dovecot-managesieve-1.1.20–1.fc10.x86_64

Dovecot-1.1.20 je nainstalovaný (avšak ne ve verzi fc10, ale el5), tudíž tuto závislost můžeme pominout. Ostatní 2 závislosti lze obejít vytvořením novým symlinků:

# ln -s /lib64/libcrypto.so.0.9.8e /usr/lib64/libcrypto.so.7 # ln -s /lib64/libssl.so.0.9.8e /usr/lib64/libssl.so.7

Poté je potřeba nainstalovat dovecot-managesieve bez kontroly závislostí:

# rpm -Uvh –nodeps dovecot-managesieve-1.1.20–1.fc10.x86_64.rpm

Nastavíme příslušně /etc/dovecot.conf (uvedeny jen útržky, co se doplní):

protocols = imap pop3 imaps pop3s managesieve protocol managesieve { sieve = /var/mail/virtual/%d/%n/.dovecot.sieve sieve_storage = /var/mail/virtual/%d/%n/sieve listen = *:2000 }

Pro cestu k Sieve souboru je potřeba uvádět absolutní cestu, jinak AvelSieve způsobuje chyby u schránek se stejným jménem před zavináčem. Cesta ve tvaru /var/mail/virtual/%d/%n/.do­vecot.sieve znaci umisteni napr. nasledovne:

schranka@domena.cz → /var/mail/virtual/domena.cz/schran­ka/.dovecot.sieve

Po restartu dovecotu by melo byt videt, ze Sieve posloucha na portu 2000:

# netstat -nat | grep 2000 tcp        0      0 0.0.0.0:2000                0.0.0.0:* LISTEN

U SquirrelMail pluginu AvelSieve je potřeba jen jednoduchá změna (zbytek by měl stačit na defaultních hodnotách):

$avelsieve_striproot = ‚INBOX.‘;

Pak už stačí ve SquirrelMailu zapnout plugin AvelSieve a užívat si možnost filtrů ;-)

Sdílet