Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| postfix_mysql_tls_sasl [Le 17/05/2014, 17:27] – ancienne révision restaurée seb24 | postfix_mysql_tls_sasl [Le 11/09/2022, 11:53] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 14: | Ligne 14: | ||
| Temps d' | Temps d' | ||
| - | [[http:// | + | [[http:// |
| Ce tuto vous permettra de mettre en place une solution multi-domaine basée sur des utilisateurs et domaines virtuels, couplée avec MySQL. Postfix peut être couplé a LDAP et ProgresSQL. | Ce tuto vous permettra de mettre en place une solution multi-domaine basée sur des utilisateurs et domaines virtuels, couplée avec MySQL. Postfix peut être couplé a LDAP et ProgresSQL. | ||
| Ligne 26: | Ligne 26: | ||
| Paquets principaux [[: | Paquets principaux [[: | ||
| - | <note warning> | + | <note warning> |
| - | < | + | < |
| <note tip>Chez moi, le package courier-authlib-mysql s' | <note tip>Chez moi, le package courier-authlib-mysql s' | ||
| Ligne 44: | Ligne 44: | ||
| mysqladmin -u root password ' | mysqladmin -u root password ' | ||
| </ | </ | ||
| + | |||
| ==== Postfix ==== | ==== Postfix ==== | ||
| Ligne 57: | Ligne 58: | ||
| GRANT ALL PRIVILEGES ON postfix.* TO " | GRANT ALL PRIVILEGES ON postfix.* TO " | ||
| - | Insertion des tables dans la base de données | + | Insertion des tables dans la base de données |
| USE postfix; | USE postfix; | ||
| Ligne 101: | Ligne 102: | ||
| quit; | quit; | ||
| - | On crée un dossier nommé vmail. Ce dossier regroupera les boîtes mail des utilisateurs. | + | On crée un dossier nommé vmail. Ce dossier regroupera les boîtes mail des utilisateurs. |
| $ groupadd -g 5000 vmail | $ groupadd -g 5000 vmail | ||
| Ligne 128: | Ligne 129: | ||
| # | # | ||
| - | Le smtp de postfix est chrooter, il faut donc le retirer afin d' | + | Le smtp de postfix est chrooté, il faut donc le retirer afin d' |
| # | # | ||
| Ligne 150: | Ligne 151: | ||
| Cela peut également vous servir le jour où vous désirez modifier le mot de passe...</ | Cela peut également vous servir le jour où vous désirez modifier le mot de passe...</ | ||
| - | mysql_virtual_alias_maps.cf | + | Creation des fichiers : mysql_virtual_alias_maps.cf, mysql_virtual_domains_maps.cf, |
| - | | + | |
| - | | + | |
| - | | + | |
| + | |||
| + | cat << EOF >/ | ||
| + | user = $MYSQL_USER | ||
| + | password = $MYSQL_PASSWORD | ||
| + | hosts = $MYSQL_HOST | ||
| dbname = postfix | dbname = postfix | ||
| query = SELECT goto FROM alias WHERE address=' | query = SELECT goto FROM alias WHERE address=' | ||
| - | + | EOF | |
| - | mysql_virtual_domains_maps.cf | + | |
| - | + | cat <<EOF >/ | |
| - | user = postfix | + | user = $MYSQL_USER |
| - | password = motdepasse | + | password = $MYSQL_PASSWORD |
| - | hosts = 127.0.0.1 | + | hosts = $MYSQL_HOST |
| dbname = postfix | dbname = postfix | ||
| query = SELECT domain FROM domain WHERE domain=' | query = SELECT domain FROM domain WHERE domain=' | ||
| #optional query to use when relaying for backup MX | #optional query to use when relaying for backup MX | ||
| #query = SELECT domain FROM domain WHERE domain=' | #query = SELECT domain FROM domain WHERE domain=' | ||
| - | + | EOF | |
| - | mysql_virtual_mailbox_maps.cf | + | |
| - | + | cat <<EOF >/ | |
| - | user = postfix | + | user = $MYSQL_USER |
| - | password = motdepasse | + | password = $MYSQL_PASSWORD |
| - | hosts = 127.0.0.1 | + | hosts = $MYSQL_HOST |
| dbname = postfix | dbname = postfix | ||
| query = SELECT maildir FROM mailbox WHERE username=' | query = SELECT maildir FROM mailbox WHERE username=' | ||
| - | + | EOF | |
| - | mysql_virtual_mailbox_limit_maps.cf | + | |
| - | + | cat << | |
| - | user = postfix | + | user = $MYSQL_USER |
| - | password = motdepasse | + | password = $MYSQL_PASSWORD |
| - | hosts = 127.0.0.1 | + | hosts = $MYSQL_HOST |
| dbname = postfix | dbname = postfix | ||
| query = SELECT quota FROM mailbox WHERE username=' | query = SELECT quota FROM mailbox WHERE username=' | ||
| - | + | EOF | |
| - | mysql_relay_domains_maps.cf | + | |
| - | + | cat << | |
| - | user = postfix | + | user = $MYSQL_USER |
| - | password = motdepasse | + | password = $MYSQL_PASSWORD |
| - | hosts = 127.0.0.1 | + | hosts = $MYSQL_HOST |
| dbname = postfix | dbname = postfix | ||
| query = SELECT domain FROM domain WHERE domain=' | query = SELECT domain FROM domain WHERE domain=' | ||
| + | EOF | ||
| Pour le bon fonctionnement et la sécurité il faut exécuter ces deux lignes de commandes | Pour le bon fonctionnement et la sécurité il faut exécuter ces deux lignes de commandes | ||
| Ligne 270: | Ligne 277: | ||
| warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory | warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory | ||
| - | Il faut ajouter, dans le fichier | + | Il faut ajouter, dans le fichier |
| saslauthd_path: | saslauthd_path: | ||
| Ligne 291: | Ligne 298: | ||
| - | Créez un lien symbolique pour que cela fonctionne lorsque postfix est chrooter | + | Créez un lien symbolique pour que cela fonctionne lorsque postfix est chrooté |
| ln -s / | ln -s / | ||
| Ligne 303: | Ligne 310: | ||
| </ | </ | ||
| - | <note warning> Depuis au moins Ubuntu 14.04, le lien symbolique disparaît à chaque reboot. Comme workaround, éditez / | + | <note warning> Depuis au moins Ubuntu 14.04, le lien symbolique disparaît à chaque reboot. Comme workaround, éditez / |
| sudo vi / | sudo vi / | ||
| - | Et ajoutez ces lignes tout à la fin du fichier : | + | Et ajoutez ces lignes tout à la fin du fichier : |
| / | / | ||
| Ligne 376: | Ligne 383: | ||
| Il est toujours possible de télécharger le paquet dcc-server (qui remplace dcc-client) via les paquets ubuntu cela marche avec la version 8.4 et la version 8.10. | Il est toujours possible de télécharger le paquet dcc-server (qui remplace dcc-client) via les paquets ubuntu cela marche avec la version 8.4 et la version 8.10. | ||
| - | Premièrement le paquet dcc-server a besoin de dcc-common pour fonctionner. | + | Premièrement le paquet dcc-server a besoin de dcc-common pour fonctionner. |
| - | * dcc-common : http:// | + | * dcc-common : https:// |
| - | * dcc-server : http:// | + | * dcc-server : https:// |
| Par exemple on peut procéder ainsi : | Par exemple on peut procéder ainsi : | ||
| Ligne 736: | Ligne 743: | ||
| $ / | $ / | ||
| - | Pour dire à postfix d' | + | Pour dire à postfix d' |
| | | ||
| - | par | + | par |
| | | ||
| -o content_filter=spamassassin | -o content_filter=spamassassin | ||
| - | et à la fin du fichier, ajoutez : | + | et à la fin du fichier, ajoutez : |
| | | ||
| | | ||
| Ligne 823: | Ligne 830: | ||
| quit | quit | ||
| - | Si les tests sont ok, votre serveur de mail est opérationnel. | + | Si les tests sont ok, votre serveur de mail est opérationnel. |
| - | + | ||
| - | + | ||
| - | + | ||
| ===== Création des utilisateurs/ | ===== Création des utilisateurs/ | ||
| Ligne 857: | Ligne 860: | ||
| ===== Création du répertoire de stockage des mails ===== | ===== Création du répertoire de stockage des mails ===== | ||
| - | Il faut créer le répertoire ou seront | + | Il faut créer le répertoire ou seront |
| Aller dans le répertoire ou tout les comptes mails sont enregistrés (/ | Aller dans le répertoire ou tout les comptes mails sont enregistrés (/ | ||
| Ligne 864: | Ligne 867: | ||
| Modifier VOTREREPERTOIREDEMAIL par le nom que vous voulez donner au compte mail (machin@domain.ltd par exemple). | Modifier VOTREREPERTOIREDEMAIL par le nom que vous voulez donner au compte mail (machin@domain.ltd par exemple). | ||
| - | Donner les droits | + | Donner les droits |
| $ sudo chown vmail:vmail -R / | $ sudo chown vmail:vmail -R / | ||
| Ligne 872: | Ligne 875: | ||
| <note info> | <note info> | ||
| - | Pour vérifier que sasl va bien chercher dans la db les utilisateurs, | + | Pour vérifier que sasl va bien chercher dans la db les utilisateurs, |
| La log / | La log / | ||
| Dans le cas contraire, vous avez probablement un problème de configuration. | Dans le cas contraire, vous avez probablement un problème de configuration. | ||
| Ligne 895: | Ligne 898: | ||
| chown vmail:vmail -R / | chown vmail:vmail -R / | ||
| - | - Si une fois un test d' | + | - Si une fois un test d' |
| postfix/ | postfix/ | ||
| postfix/ | postfix/ | ||
