Configurer Postfix

Je ne parviens pas à configurer correctement Postfix.
Je souhaiterais que quelqu'un me donne son point de vue sur ce problème
 
Voici ma config réseau :
- un modem routeur ADSL : IP 192.168.1.1
- un serveur Fedora (Apache, DNS ....) : nom machine : Linux01 - IP
192.168.1.2
- une station  Mdk : Linux02 - IP 192.168.1.3
- un serveur Mdk  (Postfix, Mysql ...) : nom machine : Linux03 -  IP
192.168.1.4

J'ai déposé un nom de domaine "nomdomaine.org" chez GANDI
et j'utilise également le service DynDns.org avec un nom de domaine créé pour la circonstance "mydyndns.homedns.org" afin d'effectuer la correspondance avec le DNS configuré chez le registar GANDI de cette manière :
www         3600 IN CNAME mydyndns.homedns.org.

Tous les paramètres des serveurs Apache et DNS (Linux01 IP 192.168.1.2) sont correctes et mon modem/routeur ADSL (192.168.1.1) est configuré avec les ports adéquates côté NAT (80, 25, 110 etc ...).
Le site "http://www.nomdomaine.org" est donc accessible et
fonctionne :)
Toujours sur le même serveur DNS (Linux01 IP 192.168.1.2) j'ai ajouté le Resource Record de type MX en spécifiant la machine du serveur Postfix soit 'linux03  IP 192.168.1.4' dans le fichier correspondant à la zone de "mondomaine.org" de cette manière :  
/***************************************/
..........
@               IN      TXT     "PRIMARY DNS"
@               IN      NS      linux01
@               IN      MX      10 linux03.monreseau.lan

localhost       IN      A       127.0.0.1
linux01          IN      A       192.168.1.2
linux03          IN      A       192.168.1.4

linux01          HINFO           "AMD 700 MHz (Athlon)" "RedHat Fedora Core 1"
linux03          HINFO           "Intel 535 MHz (Celeron)" "Mandrake 10.1"
;
;       Aliases
;
www            IN               CNAME           linux01
smtp            IN              CNAME           linux03
pop             IN              CNAME           linux03
/***********************************************/
Bon ben voilà je pense avoir tout configuré correctement côté serveur DNS sur la machine Linux01 IP 192.168.1.2 et je passe à la configuration du serveur Postfix (Linux03 IP 192.168.1.4)
Je modifie le fichier 'aliases' et j'écris un nom d'ulisateur "userlinux1" (nom de compte utilisateur Linux) à la place de celui mis par défaut (postfix)
/+++
root:   userlinux1  
+++/
[root@linux03 postfix] # postalias aliases

J'ajoute les lignes suivantes dans le fichier 'main.cf' (créé par défaut à l'installation de Postfix)  
/+++
myhostname = linux03.monreseau.lan
mydomain = monreseau.lan
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, $mydomain
mynetworks = 192.168.1.0/24, 127.0.0.0/8

relay_domains = 192.168.1.0/24, $mydestination, hash:/etc/postfix/relay

virtual_alias_domains = mondomaine.org
virtual_alias_maps = hash:/etc/postfix/virtual
sender_canonical_maps = hash:/etc/postfix/canonical
+++/

Je créé le fichier "relay" en y insérant :
/+++
 mondomaine.org
+++/
[root@linux03 postfix] # postmap relay (cette commande provoque une erreur avec ce fichier ??? -> postmap: warning: relay, line 1: expected format: key whitespace value). La seule alternative que j'ai trouvé pour éviter cette
erreur c'est de mettre deux fois "mondomaine.org" séparé par un espace (je ne sais si cela est correct, mais je n'ai plus d'erreur en effectuant un postmap)

Je créé le fichier "virtual" avec le nom d'utilisateur 'userlinux1'
/+++
 mondomaine.org  anything
info@mondomaine.org     userlinux1
+++/
[root@linux03 postfix] # postmap virtual

Je créé le fichier "canonical"
/+++
userlinux1       info@mondomaine.org
+++/
[root@linux03 postfix] # postmap canonical

Bon je relance postfix vec les nouvreaux paramètres :
[root@linux03 postfix] # service postfix reload

Je teste en local :
# echo "Test mail local" | mail info@mondomaine.org
OK, ça marche en local :)

Je créé un compte email dans Kontact et/ou Evolution et je configure les protocoles de cette manière en fonction de mon DNS :
pour 'smtp' : smtp.mondomaine.org
pour 'pop' : pop.mondomaine.org
Le nom d'utilisateur est celui de mon compte Linux déjà cité plus haut.
Je teste depuis Evolution et KContact mais ça ne marche pas en transmettant des emails par internet.  
Quelqu'un a t-il une idée sur la question ?
Merci de me faire part de votre expérience avec Postfix.

28 réponses

Résumé de la discussion

Postfix rencontre des difficultés à délivrer des messages sur Internet malgré une configuration DNS et des enregistrements MX corrects et l'ouverture des ports SMTP sur le routeur NAT. Des solutions essentielles incluent l'obtention d'une IP publique fixe ou l'utilisation d'un service de DNS dynamique fiable, la vérification que le port 25 est accessible et la bonne redirection NAT. Des échanges suggèrent de tester l'accès au SMTP depuis l'extérieur via telnet ou webmail, de vérifier les logs Postfix et de s'assurer que la redirection NAT pointe vers Linux03 sur le port 25. En outre, le MX doit pointer vers un nom de domaine public résolu publiquement et son A doit pointer vers l'adresse IP publique du serveur, pas vers 127.0.0.1.

Bobot (l’IA à votre service)
  1. bonjour a tous, je suis entrain de configurer postfix sous mandrake 10.0 et je veux le configurer avec pop3.
    qui pourrait m'aider?merci d'avance
    0
    1. Contributeur
      Salut Denist,

      Merci de ton feedback :)

      Pour ton information, les e-mails que j'ai reçu de toi se sont vu attribuer, dans mon compte de messagerie sur lequel figure un filtre anti-spam, un flag "Spam", je pense pour la raison évoquée en <40> ci-dessus.

      Vu l'entête de ces messages, je pense que tu n'as pas changé le paramétrage du "smtp" de KMail. Je pense qu'en envoyant directement sur le smtp de ton FAI à partir du client de messagerie, ce problème serait résolu (au lieu de paramétrer tes clients de messagerie avec l'adresse de ton serveur Postfix local). Si tu le souhaites, tu peux m'envoyer un nouvel e-mail pour tester après le changement. D'après ce que j'ai compris tu possèdes d'autres comptes de messagerie sur lesquels tu peux faire des tests toi même, fais les aussi.

      Si tu ne veux pas procéder de la sorte et que tu veux utiliser ton serveur Postfix comme serveur d'envoi pour tes clients de messagerie, il te faudra contacter ton FAI et éventuellement lui demander une IP fixe ou changer pour un FAI qui ne catalogue pas sur SORBS ses clients utilisant des serveurs smtp sur ses adresses dynamiques comme des spammeurs.

      Dal
      0
      1. Hello,

        La résiliation de mon abonnement internet (ADSL) 9tel est en cours !
        Une offre d'abonnement ADSL chez freetel me paraît intéressante.
        Je pourrai ainsi obtenir une IP fixe :)

        A+

        Denist
        0
      2. @denistça aurait été sympa de dire ce qui s'est passé ensuite chez Free avec une IP fixe!

        Il y a ceux qui écrivent dans les forums et ceux... qui lisent les forums...

        même un an après les solutions sont toujours valables
        0
      3. @denistPour satisfaire votre demande (un peu tardivement, j'en suis désolé ;), je peux vous dire que le choix d'une IP fixe a été pour moi le moyen de changer de FAI (si j'ai bonne mémoire, mon ex FAI de l'époque ne pouvait me fournir d'adresse IP fixe, c'est pour cette raison que j'utilisais une IP dynamique). Cette solution d'IP dynamique reste encore une alternative viable (et assez fiable) quand on ne possède pas d'IP statique et que l'on souhaite héberger des sites sur ses propres serveurs webs et de messageries, chez soi ou dans son entreprise. Il faut une bande passante >= 256 Kbits ascendant et être armé contre les coupures électriques :(pour info, j'ai eu l'occasion de mettre quelques sites chez un hébergeur professionnel et je peux vous dire que le service a été décevant, voire catastrophique. Même une solution d'hébergement comme décrite ci-dessus peut-être de meilleure facture :). Ceci dit si vous désirez passer à une IP fixe tout ce qui est décrit ci-dessus reste valable et vous n'aurez qu'à modifier le DNS de votre registrar (Gandi) de cette manière :

        AVANT (IP DYNAMIQUE) <-----------------------------------

        DNS GANDI configuré avec une adresse dynamique (ex : mondyndns.homedns.org) :

        Configuration avec l'interface avancée du DNS chez le prestataire gandi.net pour une connexion par IP dynamique :

        www 28800 IN CNAME mondyndns.homedns.org.
        @ 28800 IN MX 10 mondyndns.homedns.org.

        Où 'mondyndns' représente le mom du dyndns et homedns.org le nom de domaine choisi parmi une liste de noms de domaines existant chez dyndns.org

        Important : vous devez configurer le modem routeur (ou la passerelle linux faisant office de routeur) en y insérant le nom de domaine "mondyndns.homedns.org" et le "mot de passe"

        Note : déclarer préalablement le nom de domaine mondyndns.homedns.org chez dyndns.org.

        APRES (IP STATIQUE) ----------------------------------->

        DNS GANDI configuré avec une adresse statique (ex : 81.56.135.165) :

        Configuration avec l'interface avancée du DNS chez le prestataire gandi.net pour une connexion avec une IP statique :

        www 28800 IN A 81.56.135.165
        mail 28800 IN A 81.56.135.165
        @ 28800 IN MX 10 mail.mondomaine.net.

        Note : demander préalablement l'adresse IP fixe votre fournisseur d'accès internet

        denist
        0
      4. Contributeur
        @denistSalut Denist,

        ... et je suppose qu'une fois armé de ton IP fixe de chez ce FAI, tes e-mails sortants adressés par son serveur Postfix ne sont plus catalogués comme étant des "spams" dans SORBS.

        C'est peut être le sens de la demande de confirmation que souhaitait avoir laed, qu'il/elle aurait pu exprimer de manière moins véhémente :)

        Dal
        0
    2. Contributeur
      J'imagine que c'est dans le souci de répartir la charge de travail, c'est une configuration plutôt normale.

      Sinon, Denis, jette un oeil à mon message ci-dessus http://www.commentcamarche.net/forum/affich-1487961#40 et vois si celà fait avancer les choses pour le courrier sortant.

      A propos de tes scans nmap, pour être vraiment probants, il faudrait les faire à partir d'une machine extérieure au LAN. Sous cette réserve, d'après tes résultats, si pour ton routeur le port 25 est fermé alors que le NAT est correct et que Postfix tourne, celà révèle plutôt un problème concernant les e-mails entrants (et non les e-mails sortants). Je te suggèrerait de vérifier sur ta machine Postfix que celle-ci n'a pas un firewall bloquant le traffic arrivant de l'extérieur sur le port 25.

      Dal
      0
      1. Hello,

        Bon après plusieurs manipulations des fichiers pour la configuration de mes serveurs DNS (registrar et local) et de mise à jour concernant mon main.cf sur le serveur de messagerie Postfix, les voici enfin opérationnels :

        Le problème principal venant du record MX dans la configuration du DNS chez mon registar. Il faut le déclarer de cette manière :
        /***
        www                  3600 IN CNAME mondyndns.homedns.org.
        @                    28800 IN MX 10 mondyndns.homedns.org.
        ***/

        Configuration de mon DNS local (linux01 IP 192.
        168.1.2) :
        /***
        @ IN TXT "PRIMARY DNS"
        @ IN NS linux01
        @ IN MX 10 linux03.monreseau.lan

        localhost IN A 127.0.0.1
        linux01 IN A 192.168.1.2
        linux03 IN A 192.168.1.4

        linux01 HINFO "AMD 700 MHz (Athlon)" "RedHat Fedora Core 1"
        linux03 HINFO "Intel 535 MHz (Celeron)" "Mandrake 10.1"
        ;
        ; Aliases
        ;
        www IN CNAME linux01
        mail IN CNAME linux03
        ***/
         
        Le fichier main.cf de Postfix (linux03 IP 192.168.1.4) :
        /***
        myhostname = linux03.monreseau.lan
        mydomain = monreseau.lan
        myorigin = $mydomain
        mydestination = $myhostname, localhost.$mydomain, $mydomain, mondomaine.net, unautredomaine.org, unautredomaine.com
        virtual_alias_maps = hash:/etc/postfix/virtual
        sender_canonical_maps = hash:/etc/postfix/canonical
        mail_spool_directory = /var/spool/mail
        mailbox_command = /usr/bin/procmail
        ***/

        Les fichiers canonical, relay et virtual :
        /**canonical**
        userlinux1 monnom@mondomaine.net
        userlinux2 autrenom@unautredomaine.org
        userlinux2 autre_nom@unautredomaine.com
        ***/

        /**relay**
        reseau.lan
        mondomaine.net
        unautredomaine.org
        unautredomaine.com
        ***/

        /**virtual**
        reseau.lan anything
        monnom@mondomaine.net userlinux1
        autrenom@unautredomaine.org userlinux2
        autre_nom@unautredomaine.com userlinux2
        ***/

        Merci à tous en particulier à Dal et Hectotor !
        0
    3. déjà pourquoi utiliser 2 pc différent pour le serveur mail et serveur web, et ftp
      0
      1. Contributeur
        Salut Denis,

        Voilà une hypothèse basée sur ton indication comme suit.

        rcpt to: 192.168.1.2:25
        554 Service unavailable; Client host [84.99.83.144] blocked using dul.dnsbl.sorbs.net; Dynamic IP Addresses See: http://www.dnsbl.sorbs.net/lookup.shtml?84.99.83.144


        Celà signifierait que ton fournisseur d'accès (9 Telecom) a déclaré la plage d'adresses dynamiques dans laquelle ton adresse IP se trouve dans la base de données SORBS d'adresses dynamiques. Tu peux le vérifier en suivant le lien ci-dessus.

        Vois aussi http://www.nl.sorbs.net/faq/dul.shtml pour plus d'infos.

        Du coup... les e-mails adressés par ton serveur smtp sont bloqués par les serveurs de messagerie utilisant la base de données SORBS pour lutter contre le spam.

        Pour contourner le problème, sauf à obtenir de 9 Telecom une IP fixe non blacklistée, tu pourrais simplement utiliser le serveur smtp de 9 Telecom comme "smart host" pour acheminer ton courrier vers l'Internet.

        Utilise la rubrique "relayhost" de main.cf pour celà, en y indiquant le serveur smtp de ton FAI, relance postfix et refait un essai d'envoi à une adresse externe.

        En principe tes clients de messagerie peuvent continuer d'indiquer smtp.tondomaine.com, car ton Postfix relayera les e-mails au serveur smtp de 9 Telecom s'ils ne correspondent pas à des adresses internes.

        Il y a peut être d'autres problèmes dans ta configuration (qui est très complexe), mais essaye déjà de résoudre celui-ci.

        Dal
        0
        1. bon, tu as montré que tu connais nmap, fort bien, mais je t'ai demandé des choses simples et tu ne veux pas les faire

          moi je jette l'éponge
          0
          1. OK, je vais dans un premier temps vous décrire la config de mon modem/routeur et de mes machines pour savoir si les ports sont ouverts ou fermés en effectuant des tests qui je l'espère sont viables grâce à la commande 'nmap' :
            Rappels sur mon LAN :
            - l'adresse du modem/routeur 192.168.1.1
            - l'adresse de mon serveur DNS, HTTPd 192.168.1.2
            - l'adresse de mon serveur de Mail (Postfix) 192.168.1.4

            Les adresses SUA/NAT sur mon modem/routeur (192.168.1.1) sont configurées de la manière suivante :
            - port: 110 adresse: 192.168.1.4
            - port: 25 adresse: 192.168.1.4
            - port: 80 adresse: 192.168.1.2
            - port: 21 adresse: 192.168.1.2
            ...
            cette configuration est conforme au mode d'emploi du modem/routeur Zyxel (sauf erreur de ma part)

            J'applique un test sur les ports 110,25,80,21 et sur chaque adresse en commençant par le modem/routeur.
            TEST sur 192.168.1.1 :
            /***
            [root@linux03 root]# nmap -v -p 110,25,80,21 192.168.1.1

            Starting nmap 3.55 ( http://www.insecure.org/nmap/ ) at 2005-05-10 14:14 CEST
            Host 192.168.1.1 appears to be up ... good.
            Initiating SYN Stealth Scan against 192.168.1.1 at 14:14
            Adding open port 80/tcp
            Adding open port 21/tcp
            The SYN Stealth Scan took 0 seconds to scan 4 ports.
            Interesting ports on 192.168.1.1:
            PORT STATE SERVICE
            21/tcp open ftp
            25/tcp closed smtp
            80/tcp open http
            110/tcp closed pop3
            MAC Address: **:**:**:**:**:** (Zyxel Communication)

            Nmap run completed -- 1 IP address (1 host up) scanned in 1.146 seconds
            ***/
            :(

            TEST sur 192.168.1.2 :
            /***
            [root@linux03 root]# nmap -v -p 110,25,80,21 192.168.1.2
            Starting nmap 3.55 ( http://www.insecure.org/nmap/ ) at 2005-05-10 14:24 CEST
            Host linux01 (192.168.1.2) appears to be up ... good.
            Initiating SYN Stealth Scan against linux01 (192.168.1.2) at 14:24
            Adding open port 21/tcp
            Adding open port 80/tcp
            The SYN Stealth Scan took 0 seconds to scan 4 ports.
            Interesting ports on linux01 (192.168.1.2):
            PORT STATE SERVICE
            21/tcp open ftp
            25/tcp closed smtp
            80/tcp open http
            110/tcp closed pop3

            MAC Address: **:**:**:**:**:** (Hsing TECH. Enterprise CO.)
            Nmap run completed -- 1 IP address (1 host up) scanned in 1.323 seconds
            ***/

            TEST sur 192.168.1.4 :
            /***
            [root@linux03 root]# nmap -v -p 110,25,80,21 192.168.1.4

            Starting nmap 3.55 ( http://www.insecure.org/nmap/ ) at 2005-05-10 14:28 CEST
            Host linux03 (192.168.1.4) appears to be up ... good.
            Initiating SYN Stealth Scan against linux03 (192.168.1.4) at 14:28
            Adding open port 25/tcp
            Adding open port 110/tcp
            Adding open port 80/tcp
            Adding open port 21/tcp
            The SYN Stealth Scan took 0 seconds to scan 4 ports.
            Interesting ports on linux03 (192.168.1.4):
            PORT STATE SERVICE
            21/tcp open ftp
            25/tcp open smtp
            80/tcp open http
            110/tcp open pop3

            Nmap run completed -- 1 IP address (1 host up) scanned in 0.464 seconds
            ***/
            :)

            On peut constater que les ports 25 et 110 sont seulement ouverts sur 192.168.1.4 c'est à dire sur le serveur de Mail Postfix. Mais en ce qui concerne le modem/routeur 192.168.1.1 ils sont fermés.
            S'il y a blocage sur les ports 25 et 110 au niveau de mon modem/routeur cela peut paraitre logique que je ne puisse pas transmettre des mails au-delà de mon LAN avec le serveur Postfix : 192.168.1.4 (Note : cela ne m'empêche pas de recevoir et de transmettre des mails avec un compte messagerie qui n'est pas configuré pour ce serveur, mais à l'extérieur ;).
            0
            1. hectotor si ta config internet est basée sur un dyndns il serait intéressant de voir comment ton réseau est configuré (DNS registrar, ton DNS éventuellement ... ) ainsi que tes fichiers Postfix, peut-être que cela pourrait me mettre sur la voie ;)
              0
              1. comme je le disais dans mon premier message je n'ai pas à proprement parler de réseau. J'ai une machine connectée, l'autre rarmeent allumée, et de toutes façons postfix est configuré de la même façon sur les deux.

                je n'ai aucun intérêt à avoir un serveur DNS, autant dire que c'est beaucoup plus simple.

                mon cas n'est donc pas franchement extrapolable au tien. Mais donne déjà tes informations, elles viennent au compte goutte.

                je redis donc:
                fais un telnet sur le smtp de ton FAI par exemple (ou mieux, un autre smtp où tu peux accéder en t'identifiant) pour t'envoyer un mail sur ton serveur, fais un telnet sur ton serveur pour envoyer un mail vers un autre smtp, et donnenous tes résultats
                0
              2. y compris les bounce éventuels mais en entier cette fois, en ne cachant que ce qui doit impérativement l'être, avec des astérisques
                0
              3. Bonjour,

                A la lecture de toutes les suggestions, je vous propose d'effectuer le test suivant :

                1) Pourriez vous tester votre pc principal comme s'il s'agissait d'un simple poste perso ne se trouvant pas en réseau ? Dans un premier temps, cela devrait permettre, de façon basique de régler la question de savoir si le port 25 est bloqué ou non.

                2) Si l'envoie du message avec postfix se passe bien, cela peut vouloir dire qu'il s'agit plutôt d'un problème réseau et de la façon dont l'ensemble des postes accèdent à postfix.

                3) Si le port 25 est bloqué, il faudra, à mon avis, demander au provider quel port de remplacement utiliser.

                Il peut y avoir un problème de réseau.

                Bon ok, c'est un peu simplicite, et pas génial, mais au moins cela permettra d'écarter une hypothèse bloquante.
                0
              4. @THIERRYneuf telecom ne bloque pas le port 25

                je l'ai dit au dessus :)
                0
            2. en effet hectotor, j'avais pas penser à ça!!!

              donc il faudrait commencer par là essayer d'avoir une ip fixe, il me semble que no-ip convertir une ip dynamic en ip fixe à chaque connexion et il me semble même que c'est gratuit comme service
              0
              1. oh je pense qu'il peut s'en tirer même sans ça, enfin chez moi en tout cas tout fonctionne au poil avec dyndns

                cela dit, soit il nous donne les résultats nécessaires pour qu'on comprenne, soit il reste énigmatique (ce que je peux comprendre) mais dans ce cas il faut qu'il fasse des tests plus appropriés
                0
            3. Bon je viens de scanner les port de ton serveur, après 30 mn il a trouvé d'ouvert le 21, 22 , 80 , 443.

              est tu sur d'avoir bien configurer ton routeur afin de laisser tonport 25 ouvert
              0
              1. sauf qu'entre temps il a peut-être changé d'IP et que tu as peut-être scanné quelqu'un d'autre
                0
            4. ok essaye de faire un telnet avec l'ip de ton serveur de messagerie.

              après fais un test en configurant ton kmail et a lieu de mettre un serveur smtp, tu y met l'ip du serveur
              0
              1. le modem/routeur possède une ip statique 192.168.1.1 et chaque machine du réseau local possède une ip statique 192.168.1.2 192.168.1.3 192.168.1.4 ...
                0
                1. sur ton réseau, tu utilises des ip fixe ou tu tu un routeur qui t'attribue une ip a chaque machine en DHCP

                  j'ai essayer de faire un telnet sur l'ip que tu ma donner toute à l'heure, et là j'ai in message qui me dit que ton service mail n'est pas définie
                  0
                  1. Tu veux dire passer à une adresse IP static à la place du dynDNS ?
                    0
                    1. je suppose que tu as a fais un info@mondomaine.org:25
                      dans ce cas je te conseille de tester avec l'ip de ton serveur
                      192.168.1.0.:25
                      0
                      1. ily aun truc que je pige pas bien a quoi il sert ton relay
                        relay_domains = 192.168.1.0/24, $mydestination, hash:/etc/postfix/relay

                        as-tu essayer d'envoyer un mail en console via mutt ou equivalent pour voir si cela fontionne..
                        0
                        1. Le problème est clairement expliqué dans tout ce qui précède, mais je peux le résumer en qq phrases ;)

                          Lorsque je transmets un mail avec la commande telnet cela semble marcher, mais pas quand j'utilise Evolution ou KMail. Ceci est décrit en <13> ci-dessus.
                          0
                          • 1
                          • 2