Postfix Mysql : Différence entre versions

De Wiki NCad
Aller à : navigation, rechercher
(Authentification MySQL)
(Installation)
Ligne 4 : Ligne 4 :
  
 
{{ Box Console | objet=sudo apt-get install postfix-mysql }}
 
{{ Box Console | objet=sudo apt-get install postfix-mysql }}
 +
 +
* Si le module est bien installé, la commande suivante devra retourner '''mysql''' :
 +
 +
{{ Box Console | objet=postconf -m | grep mysql }}
  
 
=== Authentification MySQL ===
 
=== Authentification MySQL ===

Version du 2 février 2014 à 19:51

Installation

  • Pour fonctionner avec une base de données MySQL, il faut installer le paquet postfix-mysql :
ICON Terminal.png

sudo apt-get install postfix-mysql

  • Si le module est bien installé, la commande suivante devra retourner mysql :
ICON Terminal.png

postconf -m

Authentification MySQL

Création de la base de données

  • Création de l'utilisateur mysql postfix avec le mot de passe motdepassebasemysqlpourpostfix et sa base de données nommé postfix avec les droits nécessaires.
ICON Terminal.png

CREATE USER 'postfix'@'%' IDENTIFIED BY 'motdepassebasemysqlpourpostfix';
GRANT USAGE ON * . * TO 'postfix'@'%' IDENTIFIED BY 'motdepassebasemysqlpourpostfix' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE DATABASE IF NOT EXISTS `postfix` ;
GRANT ALL PRIVILEGES ON `postfix` . * TO 'postfix'@'%';

Création du fichier mysql_relay_domains_maps.cf

user = postfix
password = motdepassebasemysqlpourpostfix
hosts = 192.168.1.123
dbname = postfix
query = SELECT domain FROM domain WHERE domain='%s' and backupmx = '1'

Création du fichier mysql_virtual_alias_maps.cf

user = postfix
password = motdepassebasemysqlpourpostfix
hosts = 192.168.1.123
dbname = postfix
query = SELECT goto FROM alias WHERE address='%s' AND active = 1

Création du fichier mysql_virtual_domains_maps.cf

user = postfix
password = motdepassebasemysqlpourpostfix
hosts = 192.168.1.123
dbname = postfix
query = SELECT domain FROM domain WHERE domain='%s'

Création du fichier mysql_virtual_mailbox_limit_maps.cf

user = postfix
password = motdepassebasemysqlpourpostfix
hosts = 192.168.1.123
dbname = postfix
query = SELECT quota FROM mailbox WHERE username='%s'

Création du fichier mysql_virtual_mailbox_maps.cf

user = postfix
password = motdepassebasemysqlpourpostfix
hosts = 192.168.1.123
dbname = postfix
query = SELECT maildir FROM mailbox WHERE  CONCAT(username,'@',domain)='%s' AND active = 1

Edition du fichier /etc/postfix/main.conf

# Support Mysql
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:5000
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 5000
virtual_transport = virtual
virtual_uid_maps = static:5000
# Support du quota
virtual_mailbox_limit = 504000000
# virtual_create_maildirsize = yes
# virtual_mailbox_extended = yes