Forum général.général Configuration Postfix

Posté par  . Licence CC By‑SA.
0
23
fév.
2015

Bonjour,

Je désire installer un environnement postfix/amavis/spamassassin sous Centos
je désire que les emails qui entrent soient soumis aux tests amavis mais les emails qui sortent ne soient pas soumis aux tests

  • j'ai configurer deux adresses IP sur l'interface réseau 192.168.1.2 et 192.168.1.222
  • j'ai configurer le fichier master.cf comme ci dessous smtp inet n - n - - smtpd

192.168.1.2:smtp inet n - n - - smtpd
-o content_filter=amavisfeed:[127.0.0.1]:10024

127.0.0.1:smtp inet n - n - - smtpd
-o content_filter=amavisfeed:[127.0.0.1]:10024
-o smtpd_delay_reject=no
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o smtpd_data_restrictions=reject_unauth_pipelining
-o smtpd_end_of_data_restrictions=
-o smtpd_restriction_classes=
-o mynetworks=127.0.0.0/8
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters
-o local_header_rewrite_clients=
-o smtpd_milters=
-o local_recipient_maps=
-o relay_recipient_maps=

192.168.1.222:smtp inet n - n - - smtpd
-o content_filter=amavisfeed:[127.0.0.1]:10026
-o mynetworks=127.0.0.0/8,127.0.0.1, 110.0.0.0/8, 192.168.1.0/24
-o smtpd_client_restrictions=permit_mynetworks,reject

-j'ai configurer le main.cf pour qu'il écoute sur toutes interfaces

inet_interfaces = all

-j'ai configurer amavis ( fichier amavisd.conf), pour qu'il écoute sur les ports 10024 et 10026

$inet_socket_port = [10024, 10026];

voici l'erreur que j'obtiens
Feb 23 09:15:17 servantispamprod01 postfix/master[13577]: fatal: bind 192.168.1.2 port 25: Address already in use

Après analyse de l'exectution du script de démarrage de postfix, l'erreur provient du fait que postif bind sur toutes les interfaces puis une seconde fois sur l'ip 192.168.1.2.

TESTS EFFECTUES

1 retirer les ":smtp" de la configuration du master.cf (voir le fichier ci dessus) : a ce moment là j'obtiens l'erreur suivante :** fatal: /etc/postfix/master.cf: line 23: garbage after numerical service in "192.168.1.2"

**
2 modification de l'ordre des entrées ( 192.168.1.2.et 192.168.1.222) dans le fichier master : même problème (bind 192.168.1.2 port 25:)

3 tests de passage de une carte réseau avec 2 IPS à deux cartes réseau : même problème

4 mise en commentaire de l'entrée 19.2.168.1.222 dans la configuration du master.cf : même problème

J'ai regardé les tutos mais cela ne m'a pas aidé

Merci de votre aide

  • # Réponse D ...

    Posté par  . Évalué à 2. Dernière modification le 23 février 2015 à 17:13.

    … comme système D.

    Pourquoi ne pas configuré les entrées comme ceci :

    127.0.0.1:smtpbidon1
    127.0.0.1:smtpbidon2
    127.0.0.1:smtpbidon3

    Les smtpbidon étant des ports quelconques. Puis de configurer une redirection de port selon l'adresse de destination tel que :
    192.168.1.2:smtp redirige vers 127.0.0.1:smtpbidon1
    192.168.1.222:smtp redirige vers 127.0.0.1:smtpbidon3

    Bon après, si tu as moyen de faire plus propre je suis preneur. Je n'en suis pas là dans mes tâches à faire.

  • # Supprimer le wildcard

    Posté par  . Évalué à 2. Dernière modification le 23 février 2015 à 21:10.

    La première ligne de ton master.cf : smtp inet n - n - - smtpd écoute sur le port 25 de toutes les interfaces listées dans le inet_interfaces de ton main.cf.

    La solution consiste a ne lister dans ton inet_interfaces que les interfaces qui vont relayer les mails locaux (dans ton cas 127.0.0.1 et 192.168.1.222) et supprimer les entrées correspondantes dans ton master.cf

    Ou alors mettre inet_interfaces à none puisque de toute façon tu overwrite cette directive dans ton master.cf avec les lignes suivantes :

    192.168.1.2:smtp inet n - n - - smtpd
    127.0.0.1:smtp inet n - n - - smtpd
    192.168.1.222:smtp inet n - n - - smtpd

    À quoi bon garder inet_interfaces dans ce cas ?

  • # compte rendu

    Posté par  . Évalué à 1. Dernière modification le 25 février 2015 à 23:23.

    SUite aux remarques j'ai fais les modifications suivantes

    PREMIER TEST

    Dans le master.cf

    smtp      inet  n       -       n       -       -       smtpd
    
    192.168.1.122:smtp   inet n    -       n       -       -     smtpd
            -o content_filter=amavisfeed:[127.0.0.1]:10026
            -o mynetworks=127.0.0.0/8,127.0.0.1, 110.0.28.38, 10.10.28.38, 110.0.71.6, 110.0.0.0/8
            -o smtpd_client_restrictions=permit_mynetworks,reject

    Effectivement, je n'ai plus de souci de bind mais le résultats est que mon amavis ne filtre plus rien.

    SECOND TEST

    Je tente de commenter la ligne ci dessous pour permettre à amavis de filter

    192.168.1.2:smtp   inet n    -       n       -       -     smtpd
          -o content_filter=amavisfeed:[127.0.0.1]:10024

    je commente la ligne ci dessous pour éviter le bin du port 25

    #smtp      inet  n       -       n       -       -       smtpd

    résultat : le transport est impossible

    : relay=none, delay=1185, delays=1185/0.03/0/0.03, dsn=4.3.0, status=deferred (mail transport unavailable)

    TROISIEME TEST

    mettre dans le main.cf : inet_interfaces à none et laisser décommenter les autres champs dans le master.
    résultat : postfix crie car il ne peux plus écouter

    Je pense qu'en rajoutant une petite modification à la configuration du "premier test", cela devrait fonctionner mais je ne vois pas comment faire pour permettre à amavis de filter.

    Merci de votre aide

    • [^] # Re: compte rendu

      Posté par  . Évalué à 2.

      soit tu definis le service 2 fois mais sur le meme port (:smtp), soit tu ne le definis pas du tout,
      dans les deux cas ca ne fera pas ce que tu demandes.

      essaye en mettant simplement ca dans ton master.cf

      smtp inet n - n - - smtpd
      -o content_filter=amavisfeed:[127.0.0.1]:10026
      -o mynetworks=127.0.0.0/8,127.0.0.1, 110.0.28.38, 10.10.28.38, 110.0.71.6, 110.0.0.0/8
      -o smtpd_client_restrictions=permit_mynetworks,reject

      meme si ce n'est pas ce qui est dit dans les tutos :
      https://help.ubuntu.com/community/PostfixAmavisNew
      http://infos-reseau.com/postfix-amavis-couple-avec-spamassassin-et-clamav/
      https://www.howtoforge.com/amavisd_postfix_debian_ubuntu

      qui font plutot un truc comme ca :

      amavis unix - - - - 2 smtp
              -o smtp_data_done_timeout=1200
              -o smtp_send_xforward_command=yes
      
      127.0.0.1:10025 inet n - - - - smtpd
              -o content_filter=
              -o local_recipient_maps=
              -o relay_recipient_maps=
              -o smtpd_restriction_classes=
              -o smtpd_client_restrictions=
              -o smtpd_helo_restrictions=
              -o smtpd_sender_restrictions=
              -o smtpd_recipient_restrictions=permit_mynetworks,reject
              -o mynetworks=127.0.0.0/8
              -o strict_rfc821_envelopes=yes
              -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
              -o smtpd_bind_address=127.0.0.1

      mais il faut aussi dire à postfix de transmettre les emails recus à amavis en lui donnant les directives suivantes :

      content_filter = amavis:[127.0.0.1]:10024

      du coup, postfix ecoute sur le port 25 par defaut,
      il passe l'email à amavis sur le port 10024
      qui le ressort sur le port 10025

      • [^] # Re: compte rendu

        Posté par  . Évalué à 1.

        j'ai essayé ce que tu proposes

        smtp inet n - n - - smtpd
        -o content_filter=amavisfeed:[127.0.0.1]:10026
        -o mynetworks=127.0.0.0/8,127.0.0.1, 110.0.28.38, 10.10.28.38, 110.0.71.6, 110.0.0.0/8
        -o smtpd_client_restrictions=permit_mynetworks,reject

        résultat : postfix ne démarre pas , souci avec le connecteur smtp

        Ton exemple ensuite est la configuration de base d'un postfix pour amavis, ce qui ne fonctionne pas du tout pour mon cas .

        Je n'arrive toujours pas à faire fonctionner amavis dans postfix avec deux interfaces :-/

        • [^] # Re: compte rendu

          Posté par  . Évalué à 2.

          je ne sais pas ou tu as vu

          smtp inet n - n - - smtpd
          […]

          hormis dans ma premiere proposition, qui est tout de suite commenté
          avec un extrait des howtos
          un commentaire que tu n'as pas du lire et qui te recommande de faire autrement

          avec

          amavis unix - - - - 2 smtp
          […]
          127.0.0.1:10025 inet n - - - - smtpd
          -o content_filter=

          mais aussi et surtout une ligne à rajouter dans le main.cf de postfix

          • [^] # Re: compte rendu

            Posté par  . Évalué à 1.

            j 'ai déjà essayé avec la commande

            content_filter = amavisfeed:[127.0.0.1]:10024 à rajouter dans le fichier main

            Mais cette commande implique que tous ce qui passent passent par postfix arrive sur le port 10024 et est traité par amavis, ce qui est pas ce que je veux.

            J'ai déjà aussi eut la conf qui est inscrite dans les tutos mais cette conf est une conf de base lorsque que tu fais que de l'entrée et pas de l'entrée sortie

            amavis unix - - - - 2 smtp
            […]
            127.0.0.1:10025 inet n - - - - smtpd
            -o content_filter=

  • # message sortant

    Posté par  . Évalué à 1.

    Ce que je veux, c est que les messages sortant ne soient pas filtre par amavis.
    Malgré mes différents tests ( deux cartes réseaux, cartes réseaux avec deux ip, utilisation de deux ports différents, …), rien ne fonctionnent.

    -soit amavis ne filtre plus rien
    -soit amavis bloque tout ou refuse de fonctionner correctement ( mail transport unavailable)
    -soit postfix bloque sur le port 25 pour refuse de démarrer

    si quelqu'un connaissait une solution pour faire fonctionner postfix en entrer/sortie avec un amavis qui ne filtre que en entrée, je prends

    Merci de vos réponses

    • [^] # Re: message sortant

      Posté par  . Évalué à 2.

      laisser là config ou amavais filtre en entrée ET en sortie
      mettre une exception pour que les emails sortant (en provenance de ton reseau) ne soient pas filtrés

  • # conf

    Posté par  . Évalué à 1.

    je suis d'accord avec toi NeoX, sauf que je ne trouve aucun moyen simple de le faire. C'est pour cela que j'essayer d'avoir deux IP, une qui passe par amavis et l'autre non.

    Si tu sais comment faire je suis preneur.

  • # postfix

    Posté par  . Évalué à 1.

    personne n'a d'idée :-(

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.