URL: https://linuxfr.org/forums/linux-debutant/posts/configuration-postfix-pour-envoyer-des-courriels-via-smtp Title: configuration PostFix pour envoyer des courriels via SMTP Authors: aureusms Date: 2012年12月28日T11:37:02+01:00 License: CC By-SA Tags: debian Score: 0 Bonjour à tous, Je débute dans le monde de linux et je voudrais monter mon propre serveur. J'ai pour cela téléchargé une copie ISO d'ubuntu pour sa popularité version server LTS 12.04. Ensuite j'ai voulu installer samba => aucun problème et j'en suis pour le moment au serveur courriel. La configuration retenue est donnée par le fait que ma connexion à Internet n'est pas persistante (même si elle le devrait d'après le FAI : orange). Nous avons de temps en temps des déconnexions PPP et suite à cette obligation j'ai retenu un mode de courriel bien connu : * Réception : fetchmail -> postfix -> procmail * émission : postfix via relay smtp avec authentification obligatoire (j'utilise OVH ave clogin + mot de passe en SSL sur port 587) Le tout en SSL 3/TLS. Côté réception cela fonctionne parfaitement (même si j'ai passé trois jours à comprendre ^^). Côté émission : je cale. J'ai lu beaucoup de tutos mais je bute sur un problème de base de données "canonical" Pour envoyer sur le port 587 au lieu de 25 qui est bloqué par OVH, j'ai décommenté >submission inet n - - - - smtpd dans **/etc/postfix/master.cf** Ma configuration postfix : ```sh ########### See /usr/share/postfix/main.cf.dist for a commented, more complete version # Debian specific: Specifying a file name will cause the first # line of that file to be used as the name. The Debian default # is /etc/mailname. #myorigin = /etc/mailname smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) biff = no # envoyer vers le domaines loacl réduit #################### append_dot_mydomain = no readme_directory = no #Propriétaire et processus de la file d'attente ##################### mail_owner = postfix mail_spool_directory = /var/spool/mail #myhostname est le nom Internet de la machine ##################### myhostname = neo.monDomaine.fr #mydomaine est le nom du domaine local ##################### mydomain = monDomaine.fr #masquerade_domains = $mydomain #mydestination definit la liste de domaines ou nom de machine pour laquelle la machine #se considérera comme destination finale des messages. ################# mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost #myorigine spécifie le nom du domaine local #la valeur par défaut est $mydomain ######################## myorigin = $mydomain #Internet versus INtranet ######################### relayhost = [ssl0.ovh.net] defer_transports = smtp default_transport = smtp #Ré-écriture d'adresse ####################### sender_canonical_maps = hash:/etc/postfix/send_canonical recipient_canonical_maps = hash:/etc/postfix/recipient_canonical #Alias ###################### alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases #Distribution des messages locaux ###################### mailbox_command = /usr/bin/procmail #liste des adresses considérées comem locales ####################### mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 #Boite des utilisateur ###################### home_mailbox = Maildir/ #Distribution parallèle à une même destination ###################### local_destination_concurrency_limit = 2 default_destination_concurrency_limit = 5 #paramètre de limites de boites et de messages ##################### mailbox_size_limit = 0 delay_warning_time = 4h message_size_limit = 2621440 #séparateur entre utilisateur et extention d'adresse ##################### recipient_delimiter = + #Réception des messages #inet_interfaces définit quels sont les interfaces de la amichine qui sont suceptibles de recevoir du courrier #inet_rpotocole définit les protocoles de la machine par lequel postfix peut recevoir des messages inet_interfaces = all inet_protocols = all setgid_group = postdrop # Paramètres TLS #################### smtpd_use_tls = yes smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_tls_auth_only = no smtp_tls_note_starttls_offer = yes smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s tls_random_source = dev:/dev/urandom #Autentification SASL ################### smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtp_sasl_password_maps = hash:/etc/postfix/sender_sasl_passwd smtpd_sasl_local_domain = broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination ############### ``` Le problème vu dans /var/log/syslog est le suivant :>Dec 28 11:22:34 SYMATEC-NEO postfix/pickup[5159]: 684D013814C2: uid=1000 from= Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: hash:/etc/postfix/send_canonical is unavailable. open database /etc/postfix/send_canonical.db: No such file or directory Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: hash:/etc/postfix/send_canonical lookup error for "monLogin@monDomain.fr" Dec 28 11:22:34 SYMATEC-NEO postfix/cleanup[5247]: warning: 684D013814C2: sender_canonical_maps map lookup problem for monLogin@monDomain.fr Dec 28 11:22:34 SYMATEC-NEO postfix/pickup[5159]: warning: maildrop/018F713814E8: error writing 684D013814C2: queue file write error J'ai généré la base de donnée canonical à partir du fichier : **/etc/postfix/send_canonical** qui contient :>root prenom.nom@monDomain.fr>monLogin prenom.nom@monDomain.fr en faisant **sudo postmap /etc/postfix/send_canonical** ce qui m'a généré un fichier **/etc/postfix/send_canonical.db**. J'ai d'abord pensé à un problème de droit mais un **ls -l /etc/postfix/send_canonical.db me donne un -rw-r--r-- 1 root root 12288 dec 27 23:09 /etc/postfix/send_canonical.db Bref! Je suis perdu.

AltStyle によって変換されたページ (->オリジナル) /