Vous êtes ici : » Accueil» Dovecot » Filtrage de courrier via sieve sur ubuntu

Filtrage de courrier via sieve sur ubuntu

(Dernière mise à jour le: 23 septembre 2021)

Cet article couvre:

  1. Filtrage par courriel, par exemple, montrant des poubelles aux bulletins d’information qui n’honorent pas automatiquement les liens de désabonnement. C’est comme les filtres Gmail.
  2. Filtrage global des pourriels, par exemple le déplacement du spam de la boîte de réception au dossier indésirable (automatiquement)

Installation de paquets pour sieve et managesieve

Nous utilisons le projet de dovecotet dovecot -managesieve.

apt-get install dovecot-sieve dovecot-managesieved

Veuillez noter que l’installation d’un sieve sans spamassassin ne filtrera pas automatiquement les messages indésirables.

Configuration sieve-dovecot

Activer le support plugin de sieve pour dovecot-lmtp

vim /etc/dovecot/conf.d/20-lmtp.conf
Add following:

protocol lmtp {
  postmaster_address = admin@example.com
  mail_plugins = $mail_plugins sieve
}

Modifier la configuration de sieve dovecot-pluign

vim /etc/dovecot/conf.d/90-sieve.conf

Ajouter ce qui suit:

plugin {
   sieve = ~/.dovecot.sieve
   sieve_global_path = /var/lib/dovecot/sieve/default.sieve
   sieve_dir = ~/sieve
   sieve_global_dir = /var/lib/dovecot/sieve/
}

Redémarrer Dovecot

Redémarrez dovecot pour que les modifications prennent effet :

service dovecot restart

Vous pouvez voir le service managesieve fonctionnant sur le numéro de port 4190 en utilisant la commande telnet :

telnet example.com 4190

Est-ce que la sortie quelque chose comme:

Trying 162.243.12.140...
Connected to test3.rtcamp.com.
Escape character is '^]'.
"IMPLEMENTATION" "Dovecot Pigeonhole"
"SIEVE" "fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave"
"NOTIFY" "mailto"
"SASL" "PLAIN LOGIN"
"STARTTLS"
"VERSION" "1.0"
OK "Dovecot ready."

Vous pouvez trouver des commandes de sieve ici que vous pouvez exécuter à l’intérieur de la coquille telnet pour gérer les filtres de sieve. Ou vous pouvez utiliser la méthode suivante pour manipuler directement les règles globales de sieve.

Règles mondiales de sieve

Vous pouvez utiliser sieve pour implémenter/appliquer des règles/stratégies d’organisation du côté du serveur.

Créer un fichier global de règles de sieve

mkdir /var/lib/dovecot/sieve/

Créez/ouvrez ensuite des fichiers de règles de sieve global :

vim /var/lib/dovecot/sieve/default.sieve

Suivant les règles d’exemple déplace automatiquement les e-mails de spam de la boîte de réception au dossier Junk. est ajouté par spamassassin et amavis.X-Spam-Flag

require "fileinto";
if header :contains "X-Spam-Flag" "YES" {
  fileinto "Junk";
}

Changer de propriétaire :

chown -R vmail:vmail /var/lib/dovecot

Compiler les règles de sieve :

sievec /var/lib/dovecot/sieve/default.sieve

À ce stade, vous avez interprète sieve et managesieve service en cours d’exécution.

Activation du plugin de sieve en roundcube

Roundcube a 2 plugins pour sieve: et.managesievesieverules

Les deux fournit des fonctionnalités similaires, mais j’aime la prise en charge pour les en-têtes de courrier étendus dans l’interface utilisateur fournis par sieverules. Donc, nous allons utiliser plugin sieverules.

Activer le plugin sieverules dans roundcube config

ouvrir

vim /etc/roundcube/main.inc.php

Ajouter à la liste des plugins roundcubesieverules

$rcmail_config['plugins'] = array('sieverules');

Configurer le plugin sieverules pour utiliser le port de service managesieve correct

ouvrir

vim /etc/roundcube/plugins/sieverules/config.inc.php

Ajouter/mettre à jour la ligne suivante :

$rcmail_config['sieverules_port'] = 4190;

Laisser un commentaire

Translate »