Outils pour utilisateurs

Outils du site


serveur_postfix

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
serveur_postfix [2007/03/28 18:30] thierryserveur_postfix [2010/09/12 10:53] (Version actuelle) thierry
Ligne 1: Ligne 1:
 ====== Postfix ====== ====== Postfix ======
 +
 +Installer un serveur mail SMTP/POP avec postfix, courier-pop, spamassassin :
 +
 +Lien: http://xbright.codingteam.net/post/2009/04/13/Installer-un-serveur-mail-SMTP/POP-avec-postfix-courier-pop-spamassassin-et-quelques-echalottes
 +
 ===== Les bases ===== ===== Les bases =====
 +
  
 ==== Liens: ==== ==== Liens: ====
 +
 +http://postfix.traduc.org/index.php/postconf.5.html
  
 http://www.supinfo-projects.com/fr/2005/installation_spamassassin/2\\ http://www.supinfo-projects.com/fr/2005/installation_spamassassin/2\\
Ligne 99: Ligne 107:
   thierry: root   thierry: root
   root: xxxxxxxxxxxxx@free.fr   root: xxxxxxxxxxxxx@free.fr
 +
 +===== Configurations =====
 +
 +
 +
 +
 +
 +==== Reseau ".local" ====
 +Lorsqu'on a des machines locales avec des noms locaux, pas facile de les faire communiquer avec certains serveurs, dont Free.
 +
 +Ainsi, une adresse: **''root@trouduc.thierry-jaouen.local''** est rejeté avec:
 +  host mx1.free.fr[212.27.48.6] said: 553 sorry, your envelope sender domain must exist (#5.7.1) (in reply to MAIL FROM command)
 +
 +Il faut que **''postfix''** re-ecrit (rewrite) ce genre d'adresse.
 +
 +=== Solution ===
 +Lien:
 +  * http://www.postfix.com/ADDRESS_REWRITING_README.html
 +  * http://www.postfix.com/postconf.5.html#smtp_generic_maps
 +
 +Editer un fichier texte, genre:
 +  /etc/postfix/generic
 +Y mettre dedans quelque chose comme ca:
 +  # TJ -----------------
 +  # --------------------
 +  @trouduc.thierry-jaouen.local        @thierry-jaouen.fr
 +Et puis, de retour sur le shell:
 +  # postmap /etc/postfix/generic
 +(Un fichier **''generic.db''** est créé)
 +
 +Editer **''/etc/postfix/main.cf''** , et y inserer une ligne comme ca:
 +  smtp_generic_maps = hash:/etc/postfix/generic
 +Recharger la config:
 +  # /etc/init.d/postfix reload
 +Verifier que ca marche: (sur le poste local)
 +  (trouduc.thierry-jaouen.local)$ date | mail -s "test" adresse_mail@domaine.ext
 +
 +
 +
 +=== postmaster ===
 +Ouai, mais j'ai encore un problème avec "postfix" lui-même, lorsqu'il genere un mail pour "postmaster":
 +  Oct 11 22:39:14 netcave postfix/smtp[4768]: BC4F742A7: to=<mon_adresse_mail@free.fr>, orig_to=<postmaster>, relay=mx1.free.fr[212.27.48.7]:25, delay=0.35, delays=0.01/0/0.28/0.06, dsn=5.0.0, status=bounced (host mx1.free.fr[212.27.48.7] said: 553 sorry, your envelope sender domain must exist (#5.7.1) (in reply to MAIL FROM command))
 +  Oct 11 22:39:14 netcave postfix/bounce[4770]: warning: BC4F742A7: undeliverable postmaster notification discarded
 +  Oct 11 22:39:14 netcave postfix/qmgr[4734]: BC4F742A7: removed
 +
 +== Solution ==
 +J'avais oublié "$myhostname" (lui-même) dans le fichier "generic" ! (c'est a dire le "host" déclaré avec "myhostname = ...")
 +
 +===== Tips =====
 +
 +
 +==== queue ====
 +Voir la queue:
 +  # postqueue -p
 +
 +Grosse queue! Supprimer les "deferer" :
 +  # postsuper -d ALL deferred
 +  postsuper: Deleted: 1449 messages
 +
 +Ou simplement tout ?
 +  # postsuper -d ALL
 +
 +Remettre tout les messages en attente:
 +  # postsuper -r ALL
 +
 +Voir un message:
 +  # postcat -q <ID_DU_MESSAGE> | less
 +
 +==== purge ====
 +
 +Petit scripte (a adapter) pour purger les SPAM en "deferred" ...
 +
 +  -Ca recherche les "ID" dans le spool de "deferred"
 +  -Recherche le flag "Spam Yes" : si oui, efface
 +  -Recherche une date mise en queue dans l'année 2008 (là, nous sommes en 2010!) : si oui efface
 +
 +  #!/bin/sh
 +  
 +  TMPFILE=/tmp/postfix-purge-deferred.txt
 +  
 +  rm -f $TMPFILE >/dev/null 2>&1
 +  
 +  find /var/spool/postfix/deferred/ | awk -F'/' '{ print $7; }' | egrep -v "^$" > $TMPFILE
 +  
 +  if [ -e $TMPFILE ]; then
 +    echo "fichier existe"
 +    while read mailID; do
 +      SpanStatus=$( postcat -q $mailID | grep "X-Spam-Status: Yes" )
 +      if [ "x$SpanStatus" != "x" ]; then
 +        echo "Spam: $mailID : $SpanStatus"
 +        postsuper -d $mailID
 +      fi
 +  
 +      Older=$( postcat -q $mailID | egrep "^message_arrival_time.*2008" )
 +  
 +      if [ "x$Older" != "x" ]; then
 +        echo "Old: $mailID : $Older"
 +        postsuper -d $mailID
 +      fi
 +    done < $TMPFILE
 +  fi
 +
 +==== Amavis et autres ====
 +En appliquant un article de "Linux Mag" N°113 (Fevrier 2009), je m'aperçois qu'il est trés difficile de faire prendre en compte les modifications de **''master.cf''** par PostFix ... Pourquoi ? je ne sais pas.
 +
 +La seule astuce trouvé:
 +  - modifier ''master.cf''
 +  - taper: ''# postsuper -r ALL''
 +  - et puis: ''# postfix reload''
 +
 +Source: http://www.postfix.org/FILTER_README.html
  
serveur_postfix.1175106650.txt.gz · Dernière modification : 2007/03/28 18:30 de thierry