| |
| configurer_un_serveur_mail_sous_linux_avec_postfix [2020/08/31 11:45] – superadmin | configurer_un_serveur_mail_sous_linux_avec_postfix [2022/04/11 16:34] (Version actuelle) – modification externe 127.0.0.1 |
|---|
| postconf -e 'tls_random_source = dev:/dev/urandom' | postconf -e 'tls_random_source = dev:/dev/urandom' |
| postconf -e 'myhostname = nocterie.local' | postconf -e 'myhostname = nocterie.local' |
| postconf -e 'maillog_file = /var/log/postfix.log'</code> | postconf -e 'maillog_file = /var/log/postfix.log' |
| | postconf -e 'smtp_tls_policy_maps = hash:/etc/postfix/tls_policy'</code> |
| | |
| | Afin que SMTP-TLS vérifie bien le domaine, créer le fichier ''/etc/postfix/tls_policy'' contenant : |
| | |
| | <code>nocterie.local verify</code> |
| | |
| | :!: ''nocterie.local'' doit être remplacé par le nom du domaine à vérifier. |
| | |
| | Appliquer les changements avec : |
| | |
| | <code>postmap /etc/postfix/tls_policy |
| | chgrp postfix /etc/postfix/tls_policy*</code> |
| |
| Par défaut, PostFix tente d'envoyer les mails sortants sur Internet, parfois ce n'est pas possible car l'opérateur bloque la livraison directe du courrier, il faut alors configurer soi-même le relais SMTP à utiliser en sortie : | Par défaut, PostFix tente d'envoyer les mails sortants sur Internet, parfois ce n'est pas possible car l'opérateur bloque la livraison directe du courrier, il faut alors configurer soi-même le relais SMTP à utiliser en sortie : |
| postconf -e 'virtual_transport = virtual' | postconf -e 'virtual_transport = virtual' |
| postconf -e 'virtual_uid_maps = static:5000' | postconf -e 'virtual_uid_maps = static:5000' |
| postconf -e 'virtual_create_maildirsize = yes' | |
| postconf -e 'virtual_mailbox_extended = yes' | |
| postconf -e 'virtual_mailbox_limit_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf' | |
| postconf -e 'virtual_mailbox_limit_override = yes' | |
| postconf -e 'virtual_maildir_limit_message = Le compte a atteint son quota de mails. Merci de rééssayer plus tard' | |
| postconf -e 'virtual_overquota_bounce = yes' | |
| postconf -e 'relay_domains = proxy:mysql:/etc/postfix/mysql_relay_domains_maps.cf'</code> | postconf -e 'relay_domains = proxy:mysql:/etc/postfix/mysql_relay_domains_maps.cf'</code> |
| |
| touch /etc/postfix/sasl/smtpd.conf | touch /etc/postfix/sasl/smtpd.conf |
| <code>echo 'pwcheck_method: saslauthd' >> /etc/postfix/sasl/smtpd.conf | <code>echo 'pwcheck_method: saslauthd' >> /etc/postfix/sasl/smtpd.conf |
| echo 'mech_list: plain login' >> /etc/postfix/sasl/smtpd.conf </code> | echo 'mech_list: plain login' >> /etc/postfix/sasl/smtpd.conf |
| | echo 'allow_plaintext: true' >> /etc/postfix/sasl/smtpd.conf</code> |
| |
| Puis entrer les commandes suivantes : | Puis entrer les commandes suivantes : |
| Ensuite éditer le fichier /etc/default/saslauthd pour modifier les 2 lignes suivantes : | Ensuite éditer le fichier /etc/default/saslauthd pour modifier les 2 lignes suivantes : |
| |
| ''START=no'' en ''START=yes'' | * ''START=no'' en ''START=yes'' |
| ''OPTIONS=“-c -m /var/run/saslauthd”'' en ''OPTIONS=“-m /var/spool/postfix/var/run/saslauthd”'' | * ''OPTIONS="-c -m /var/run/saslauthd"'' en ''OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"'' |
| |
| | Enfin, créer le fichier ''/etc/pam.d/smtp'' contenant : |
| | |
| | <code>auth required pam_mysql.so user=postfix passwd=password host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=2 |
| | account sufficient pam_mysql.so user=postfix passwd=password host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=2 |
| | </code> |
| ===== Tests du protocole SMTP ===== | ===== Tests du protocole SMTP ===== |
| |
| On peut aussi essayer l'authentification avec un utilisateur local membre du groupe ''sasl'' pour voir si elle fonctionne : | On peut aussi essayer l'authentification avec un utilisateur local membre du groupe ''sasl'' pour voir si elle fonctionne : |
| |
| <code>testsaslauthd -u utilisateur -p password</code> | <code>testsaslauthd -u utilisateur -p userpassword -s smtp -f /var/spool/postfix/var/run/saslauthd/mux</code> |
| |
| Cela doit renvoyer ceci : ''0: OK "Success."'', autrement il y a un problème quelquepart. | Cela doit renvoyer ceci : ''0: OK "Success."'', autrement il y a un problème quelquepart. |
| |
| ===== Création d'un compte mail ===== | ===== Création d'un compte mail ===== |
| | |
| | Ouvrir la console MySQL et créer l'utilisateur en ajoutant différentes entrées : |
| | |
| | <code>use postfix; |
| | INSERT INTO domain (domain,description) VALUES ('domain.tld','Test Domain'); |
| | INSERT INTO alias (address,goto) VALUES ('alias@domain.tld', 'test@domain.tld'); |
| | INSERT INTO mailbox (username,password,name,maildir) VALUES ('test@domain.tld',ENCRYPT('userpassword'),'Mailbox User','test@domain.tld/');</code> |
| | |
| |
| Avec ce système, les comptes de messagerie sont les mêmes que ceux de Linux. | Avec ce système, les comptes de messagerie sont les mêmes que ceux de Linux. |