Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
dbmail [Le 15/09/2013, 19:48] titouan [PostFix] |
dbmail [Le 02/03/2023, 00:34] (Version actuelle) sefran Ajout tag |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>serveur serveurs_messagerie courriel ubuntu_server brouillon}} | + | {{tag>serveur serveurs_messagerie courriel ubuntu_server mda brouillon}} |
---- | ---- | ||
Ligne 17: | Ligne 17: | ||
^ Cas ^ IP fixe ^dynamique ^ DNS zone ^ MX ^ dyndns no-ip ^ POSTFIX DBMAIL ^^ | ^ Cas ^ IP fixe ^dynamique ^ DNS zone ^ MX ^ dyndns no-ip ^ POSTFIX DBMAIL ^^ | ||
^1 |oui |x | [[http://www.isalo.org/wiki.debian-fr/index.php?title=Configuration_d%27un_serveur_mail_avec_Postfix#Un_exemple_de_configuration_de_DNS_chez_gandi.net|GANDI]] | oui | x | Envoyer ET Recevoir |oui | | ^1 |oui |x | [[http://www.isalo.org/wiki.debian-fr/index.php?title=Configuration_d%27un_serveur_mail_avec_Postfix#Un_exemple_de_configuration_de_DNS_chez_gandi.net|GANDI]] | oui | x | Envoyer ET Recevoir |oui | | ||
- | ^2 | | |[[http://guides.ovh.com/VotreServeurMail|OVH]] | | | | + | ^2 | | |[[http://guides.ovh.com/VotreServeurMail|OVH]] | | | |
^3 |x | oui | test.domain.tld | ok.dyndns.org | ok.dyndns.org | Envoyer ET Recevoir | test.domain.tld mail is handled by ok.dyndns.org.| | ^3 |x | oui | test.domain.tld | ok.dyndns.org | ok.dyndns.org | Envoyer ET Recevoir | test.domain.tld mail is handled by ok.dyndns.org.| | ||
- | ^4 |x |oui |x |x |ok.dyndns.org | Envoyer Uniquement |ok.dyndns.org has no MX record. voir smtp_generic_maps | | + | ^4 |x |oui |x |x |ok.dyndns.org | Envoyer Uniquement |ok.dyndns.org has no MX record. voir smtp_generic_maps | |
- | ^4 | --------------------> dbmail est inutile : Recevoir sur imap.fai.fr imap.gmail.com ||||||canonical_maps relayhost /etc/aliases | | + | ^4 | --------------------> dbmail est inutile : Recevoir sur imap.fai.fr imap.gmail.com ||||||canonical_maps relayhost /etc/aliases | |
- | ^5 | x |oui | x |x | ok.dyndns.org mxok.dyndns.org |Envoyer ET Recevoir |ok.dyndns.org mail is handled by mxok.dyndns.org. | | + | ^5 | x |oui | x |x | ok.dyndns.org mxok.dyndns.org |Envoyer ET Recevoir |ok.dyndns.org mail is handled by mxok.dyndns.org. | |
- | ^6 | | | | | | | + | ^6 | | | | | | |
légende; x=non, host -t mx domain.tld | légende; x=non, host -t mx domain.tld | ||
>Cas 1,2,3 recommandés | >Cas 1,2,3 recommandés | ||
Ligne 50: | Ligne 50: | ||
* //domain.tld// est le domaine en tant que domaine de messagerie | * //domain.tld// est le domaine en tant que domaine de messagerie | ||
*// smtp.domain.tld// est le CNAME ou alias du MX, ou MX lui même. | *// smtp.domain.tld// est le CNAME ou alias du MX, ou MX lui même. | ||
- | * le mailto: //toto@domain.tld// est alors potentiellement possible | + | * le mailto: //toto@domain.tld// est alors potentiellement possible |
NB: valable également pour un //sous.domain.tld// en tant que domaine de messagerie | NB: valable également pour un //sous.domain.tld// en tant que domaine de messagerie | ||
* /etc/hosts | * /etc/hosts | ||
Ligne 411: | Ligne 411: | ||
* Serveur Sortant: smtp.domain.tld | * Serveur Sortant: smtp.domain.tld | ||
* Port : 25,587,465,5678(option) | * Port : 25,587,465,5678(option) | ||
- | * Nom utilisateur: toto@domain.tld | + | * Nom utilisateur: toto@domain.tld |
* Méthode d'authentification: mot de passe normal (plain), mot de passe chiffré (cram-md5) | * Méthode d'authentification: mot de passe normal (plain), mot de passe chiffré (cram-md5) | ||
* Sécurité de la connexion : STARTTLS, TLS/SSL | * Sécurité de la connexion : STARTTLS, TLS/SSL | ||
Ligne 441: | Ligne 441: | ||
-o smtpd_sender_restrictions=reject_unlisted_sender,permit | -o smtpd_sender_restrictions=reject_unlisted_sender,permit | ||
</code> | </code> | ||
- | Au niveau du MUA type thunderbird, on a: | + | Au niveau du MUA type thunderbird, on a: |
-nom du serveur SMTP= smtp.domain.tld | -nom du serveur SMTP= smtp.domain.tld | ||
-Port= 5678 | -Port= 5678 | ||
Ligne 550: | Ligne 550: | ||
===== Configuration ===== | ===== Configuration ===== | ||
==== dbmail 3.0 ==== | ==== dbmail 3.0 ==== | ||
- | [[http://www.iredmail.org/wiki/index.php?title=Integration/DBMail.iRedMail.with.MySQL.backend/RHEL#Summary|Complément d'informations]] | + | [[http://www.iredmail.org/wiki/index.php?title=Integration/DBMail.iRedMail.with.MySQL.backend/RHEL#Summary|Complément d'informations]] |
Ligne 599: | Ligne 599: | ||
* -a //ajouter un nouveau Compte// | * -a //ajouter un nouveau Compte// | ||
* -w //mot de passe// | * -w //mot de passe// | ||
- | * -p //type_password// md5, plaintext, crypt, md5-hash, md5-digest, crypt-raw, md5-hash-raw, md5-digest-raw, md5-base64, md5-base64-raw | + | * -p //type_password// md5, plaintext, crypt, md5-hash, md5-digest, crypt-raw, md5-hash-raw, md5-digest-raw, md5-base64, md5-base64-raw |
* -c //mise à jour du compte// | * -c //mise à jour du compte// | ||
* -s //créer// une adresse mail ou plusieurs alias -s toto@domain.tld,titi@domain.tld | * -s //créer// une adresse mail ou plusieurs alias -s toto@domain.tld,titi@domain.tld | ||
* -S //supprimer// une adresse mail ou plusieurs alias | * -S //supprimer// une adresse mail ou plusieurs alias | ||
- | * -m //quota// -m 50M | + | * -m //quota// -m 50M |
* -d //supprimer un compte// | * -d //supprimer un compte// | ||
* -x toto@domain.tld -t forward@domain2.tld2 //ajouter un forward // | * -x toto@domain.tld -t forward@domain2.tld2 //ajouter un forward // | ||
Ligne 653: | Ligne 653: | ||
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd" | OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd" | ||
</code> | </code> | ||
- | * Service | + | * Service |
<code> | <code> | ||
sudo service saslauthd restart|reload | sudo service saslauthd restart|reload | ||
Ligne 694: | Ligne 694: | ||
sudo dbmail-users -c toto@domain.tld -p plaintext -w password | sudo dbmail-users -c toto@domain.tld -p plaintext -w password | ||
</code> | </code> | ||
- | * /etc/postfix/sasl/smtpd.conf peut être obtenu par lien symbolique | + | * /etc/postfix/sasl/smtpd.conf peut être obtenu par lien symbolique |
<code> | <code> | ||
sudo ln -s /usr/lib/sasl2/smtpd.conf /etc/postfix/sasl/smtpd.conf | sudo ln -s /usr/lib/sasl2/smtpd.conf /etc/postfix/sasl/smtpd.conf | ||
Ligne 721: | Ligne 721: | ||
sql_select: SELECT passwd FROM dbmail_users WHERE userid = '%u@%r' | sql_select: SELECT passwd FROM dbmail_users WHERE userid = '%u@%r' | ||
</code> | </code> | ||
- | NB: userid = '%u@%r' si vous avez stocké sous la forme toto@domain.tld | + | NB: userid = '%u@%r' si vous avez stocké sous la forme toto@domain.tld |
[[http://asyd.net/docs/cyrus-options.html|Options SASL]] | [[http://asyd.net/docs/cyrus-options.html|Options SASL]] | ||
Ligne 791: | Ligne 791: | ||
sudo nano /etc/postfix/sender_canonical | sudo nano /etc/postfix/sender_canonical | ||
<code> | <code> | ||
- | yoko pierre.durand@gmail.com | + | yoko babar@monmail.com |
- | yoko@domain.tld pierre.durand@gmail.com | + | yoko@domain.tld babar@monmail.com |
</code> | </code> | ||
<code> | <code> | ||
Ligne 803: | Ligne 803: | ||
yoko@pc:~$ echo 'bonjour' | mail -s 'test' toto@sfr.fr | yoko@pc:~$ echo 'bonjour' | mail -s 'test' toto@sfr.fr | ||
</code> | </code> | ||
- | yoko devient pierre.durand@gmail.com, qui envoit au destinataire final toto@sfr.fr | + | yoko devient babar@monmail.com, qui envoie au destinataire final toto@sfr.fr |
=== Recevoir et Faire Suivre automatiquement le courrier=== | === Recevoir et Faire Suivre automatiquement le courrier=== | ||
- | le courrier à destination de toto@domain.tld est renvoyé chez durand.pierre@free.fr | + | le courrier à destination de toto@domain.tld est renvoyé chez casimir@free.fr |
<code> | <code> | ||
- | sudo dbmail-users -x toto@domain.tld -t durand.pierre@free.fr | + | sudo dbmail-users -x toto@domain.tld -t casimir@free.fr |
</code> | </code> | ||
Ligne 842: | Ligne 842: | ||
# Configure the ISP accounts (POP server, users and respective passwords) | # Configure the ISP accounts (POP server, users and respective passwords) | ||
poll imap.gmail.com with protocol IMAP: | poll imap.gmail.com with protocol IMAP: | ||
- | user "pierre.durand@gmail.com" with pass "motdepasse-de-pierre" with ssl with sslcertck is "yoko@domain.tld" here keep | + | user "babar@monmail.com" with pass "motdepasse-de-babar" with ssl with sslcertck is "yoko@domain.tld" here keep |
smtphost smtp.domain.tld | smtphost smtp.domain.tld | ||
</code> | </code> | ||
[[http://fetchmail.berlios.de/fetchmail-man.html#5|Options Fetchmail]] | [[http://fetchmail.berlios.de/fetchmail-man.html#5|Options Fetchmail]] | ||
- | Fetchmail relève toutes les heures les mails de pierre.durand@gmail.com et les rapatrie directement sur yoko@domain.tld. | + | Fetchmail relève toutes les heures les mails de babar@monmail.com et les rapatrie directement sur yoko@domain.tld. |
* keep signifie que fetchmail crée une copie du mail sans le détruire sur le serveur distant. | * keep signifie que fetchmail crée une copie du mail sans le détruire sur le serveur distant. | ||
* sender_canonical_maps a été défini. | * sender_canonical_maps a été défini. | ||
* sudo service fetchmail restart # pour relançer le démon. | * sudo service fetchmail restart # pour relançer le démon. | ||
- | Fetchmail fait un doublon, voir inutile, si vous avez délà roundcube, qui fait déjà du //fetch//. | + | Fetchmail fait un doublon, voir inutile, si vous avez délà roundcube, qui fait déjà du //fetch//. |
* exemple en modifiant le main.inc.php de roundcube | * exemple en modifiant le main.inc.php de roundcube | ||
Ligne 887: | Ligne 887: | ||
</code> | </code> | ||
- | Dès qu'un mail arrive chez modo@domain.tld(user_idnr='9'), un mail "NEW MAIL NOTIFICATION" est envoyé par webmaster@domain.tld pour admin.perso@fai.fr | + | Dès qu'un mail arrive chez modo@domain.tld(user_idnr='9'), un mail "NEW MAIL NOTIFICATION" est envoyé par webmaster@domain.tld pour admin.perso@fai.fr |
Attention, autonotify@dbmail génère une erreur car évidemment le récipient n'est pas connu. | Attention, autonotify@dbmail génère une erreur car évidemment le récipient n'est pas connu. | ||
Ligne 893: | Ligne 893: | ||
==== dbmail_auto_replies ==== | ==== dbmail_auto_replies ==== | ||
- | Chaque utilisateur peut spécifier un message de réponse automatique à tous les messages entrants. | + | Chaque utilisateur peut spécifier un message de réponse automatique à tous les messages entrants. |
>/etc/dbmail/dbmail.conf | >/etc/dbmail/dbmail.conf | ||
AUTO_REPLY = yes | AUTO_REPLY = yes | ||
Ligne 918: | Ligne 918: | ||
Ces boîtes sont appelées boîtes aux lettres partagées - Elles sont décrites dans la table //dbmail_subscription//. Les droits d'accès appropriés sont décrits dans la table //dbmail_acl//. | Ces boîtes sont appelées boîtes aux lettres partagées - Elles sont décrites dans la table //dbmail_subscription//. Les droits d'accès appropriés sont décrits dans la table //dbmail_acl//. | ||
- | Lister les identifiants et récupérer le user_idnr | + | Lister les identifiants et récupérer le user_idnr |
<code> | <code> | ||
select user_idnr,userid,passwd from dbmail_users; | select user_idnr,userid,passwd from dbmail_users; | ||
Ligne 950: | Ligne 950: | ||
DBMAIL[_dbmail_driver]="mysql" | DBMAIL[_dbmail_driver]="mysql" | ||
</code> | </code> | ||
- | modifier pour dbmail 3.x à proximité de function get_all_acls() | + | modifier pour dbmail 3.x à proximité de function get_all_acls() |
<code> | <code> | ||
$MYSQL_CLIENT -N -e "SELECT lookup_flag, read_flag, seen_flag, write_flag, insert_flag, post_flag, create_flag, delete_flag, deleted_flag, expunge_flag, administer_flag FROM dbmail_acl WHERE mailbox_id = $mailbox_idnr and user_id = $user_idnr;" | $MYSQL_CLIENT -N -e "SELECT lookup_flag, read_flag, seen_flag, write_flag, insert_flag, post_flag, create_flag, delete_flag, deleted_flag, expunge_flag, administer_flag FROM dbmail_acl WHERE mailbox_id = $mailbox_idnr and user_id = $user_idnr;" | ||
Ligne 1042: | Ligne 1042: | ||
===== Mailman ===== | ===== Mailman ===== | ||
==== Ajouter les Recipients ==== | ==== Ajouter les Recipients ==== | ||
- | C'est l'équivalence de virtual-aliases pour d'autres serveurs imap. Il n'y a pas besoin également de rajouter des aliases dans /etc/aliases. Les récipients des listes se trouvent dans la table dbmail_aliases | + | C'est l'équivalence de virtual-aliases pour d'autres serveurs imap. Il n'y a pas besoin également de rajouter des aliases dans /etc/aliases. Les récipients des listes se trouvent dans la table dbmail_aliases |
sudo nano dbmail-add-list | sudo nano dbmail-add-list | ||
Ligne 1131: | Ligne 1131: | ||
Ne pas oublier d'ouvrir les ports du pare-feu | Ne pas oublier d'ouvrir les ports du pare-feu | ||
- | Exemple avec shorewall : | + | Exemple avec shorewall : |
sudo vim /etc/shorewall/rules | sudo vim /etc/shorewall/rules | ||
IMAP/ACCEPT net $FW | IMAP/ACCEPT net $FW | ||
Ligne 1192: | Ligne 1192: | ||
===== Auth Digest Apache dbmail_users ===== | ===== Auth Digest Apache dbmail_users ===== | ||
- | Dans l'exemple ci-dessous, le SASL n'est pas utilisé. Une requête sql est directement invoquée pour dbmail_users, permettant une authentification //Digest// http. | + | Dans l'exemple ci-dessous, le SASL n'est pas utilisé. Une requête sql est directement invoquée pour dbmail_users, permettant une authentification //Digest// http. |
Virtualhost avec mod_auth_digest, mod_dbd | Virtualhost avec mod_auth_digest, mod_dbd |