« Amavis MySQL » : différence entre les versions
Aller à la navigation
Aller à la recherche
Installation >> Postfix avec MySQL
Pour aller plus loin : Commandes messagerie | DNSBL | MX Backup
Aucun résumé des modifications |
|||
| Ligne 1 : | Ligne 1 : | ||
{{Serveur de Messagerie}} | |||
[[Image:Amavid_Logo|center]] | |||
== Installation des tables == | == Installation des tables == | ||
Version du 10 février 2014 à 17:02
.:[ Serveur de Messagerie ]:.
Filtrage anti-spam : Anti-Spam SpamAssassin | Anti-Virus Clamav
Filtrage anti-virus : Plateforme de filtrage Amavis >> Amavis avec MySQL
Plus de fonctions : Ajouter un Disclaimer | DKIM Proxy | OpenDKIM | Mailman | Maildrop | DANE | SPF
Clients de messagerie : Configurer Thundirbird | Configurer Roundcube
Pour aller plus loin : Commandes messagerie | DNSBL | MX Backup
Installation des tables
Création des tables
| La documentation complète ainsi que la structure des tables sont décrites dans les fichiers /usr/share/doc/amavisd-new/README.sql.gz et /usr/share/doc/amavisd-new/README.sql-mysql.gz. |
- La table user contient la liste des utilisateurs ayant une boîte mail locale (Postfix). Elle sera consulter pour vérifier les préférences de l'utilisateur recevant un courriel - si elle existe.
CREATE TABLE users ( id int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY, -- unique id priority integer NOT NULL DEFAULT '7', -- 0 étant la plus faible priorité. policy_id integer unsigned NOT NULL DEFAULT '1', -- N° de la règle policy (id) appliquée email varbinary(255) NOT NULL UNIQUE, fullname varchar(255) DEFAULT NULL, -- Non utilisé par amavisd-new local char(1) -- Y/N (optionnel) );
- La table policy contient les règles de filtrage pour le spam et les virus (score, activation des divers filtres, tag des messages, avertir l'émetteur en cas d’échec, ...).
CREATE TABLE policy (
id int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
-- 'id' this is the _only_ required field
policy_name varchar(32), -- non utilisé par amavisd-new, à titre de commentaire
virus_lover char(1) default NULL, -- Y/N
spam_lover char(1) default NULL, -- Y/N
banned_files_lover char(1) default NULL, -- Y/N
bad_header_lover char(1) default NULL, -- Y/N
bypass_virus_checks char(1) default NULL, -- Y/N
bypass_spam_checks char(1) default NULL, -- Y/N
bypass_banned_checks char(1) default NULL, -- Y/N
bypass_header_checks char(1) default NULL, -- Y/N
spam_modifies_subj char(1) default NULL, -- Y/N
virus_quarantine_to varchar(64) default NULL,
spam_quarantine_to varchar(64) default NULL,
banned_quarantine_to varchar(64) default NULL,
bad_header_quarantine_to varchar(64) default NULL,
clean_quarantine_to varchar(64) default NULL,
other_quarantine_to varchar(64) default NULL,
spam_tag_level float default NULL, -- higher score inserts spam info headers
spam_tag2_level float default NULL, -- inserts 'declared spam' header fields
spam_kill_level float default NULL, -- higher score triggers evasive actions
-- e.g. reject/drop, quarantine, ...
-- (subject to final_spam_destiny setting)
spam_dsn_cutoff_level float default NULL,
spam_quarantine_cutoff_level float default NULL,
addr_extension_virus varchar(64) default NULL,
addr_extension_spam varchar(64) default NULL,
addr_extension_banned varchar(64) default NULL,
addr_extension_bad_header varchar(64) default NULL,
warnvirusrecip char(1) default NULL, -- Y/N
warnbannedrecip char(1) default NULL, -- Y/N
warnbadhrecip char(1) default NULL, -- Y/N
newvirus_admin varchar(64) default NULL,
virus_admin varchar(64) default NULL,
banned_admin varchar(64) default NULL,
bad_header_admin varchar(64) default NULL,
spam_admin varchar(64) default NULL,
spam_subject_tag varchar(64) default NULL,
spam_subject_tag2 varchar(64) default NULL,
message_size_limit integer default NULL, -- max size in bytes, 0 disable
banned_rulenames varchar(64) default NULL -- comma-separated list of ...
-- names mapped through %banned_rules to actual banned_filename tables
);
- La table mailaddr contient les adresses ou domaines pour lesquels on souhaite définir une règle de listage (c.f table wblist) ainsi qu'une priorité de traitement.
CREATE TABLE mailaddr ( id int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY, priority integer NOT NULL DEFAULT '7', -- 0 est la plus faible priorité email varbinary(255) NOT NULL UNIQUE );
- La table wblist permet de blacklister ou whitelister une adresse émetteur définie dans la table mailaddr et appliqué pour le destinataire locale définit dans la table (users).
CREATE TABLE wblist ( rid integer unsigned NOT NULL, -- destinataire: users.id sid integer unsigned NOT NULL, -- émetteur: mailaddr.id wb varchar(10) NOT NULL, -- W ou Y / B ou N / espace=neutre / score PRIMARY KEY (rid,sid) );
Configuration de Amavis
- Pour activer le module Sql dans Amavis, il faut insérer les deux lignes suivantes dans le fichier /etc/amavis/conf.d:
@lookup_sql_dsn = ( ['DBI:mysql:database=postfix;host=10.0.0.47;port=3306', 'postfix', 'motdepassebasemysqlpourpostfix']); @storage_sql_dsn = @lookup_sql_dsn;