[CentOS] Dovecot + ManageSieve + SquirrelMail AvelSieve
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/.dovecot.sieve znaci umisteni napr. nasledovne:
schranka@domena.cz -> /var/mail/virtual/domena.cz/schranka/.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ů
Vše z Blog Root.cz