Forum Linux.debian/ubuntu config exim4 pour cegetel

Posté par  .
Étiquettes : aucune
0
17
fév.
2005
Bonjour,

je galère depuis un moment pour essayer de configurer exim4 pour pouvoir envoyer des mails. Ma distri est une Sarge mise à jour, mon accès internet est l'ADSL de Cegetel. Je n'ai jamais configuré exim4 (ou d'autre MTA) avant, j'ai peut-être raté un truc évident ou mal compris quelque chose.

Ma config d'exim4 (fichier /etc/exim4/update-exim4.conf.conf):

# /etc/exim4/update-exim4.conf.conf
#
# Edit this file and /etc/mailname by hand and execute update-exim4.conf
# yourself or use 'dpkg-reconfigure exim4-config'

dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost='lenomdemonlocalhost'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.cegetel.net'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='true'


J'ai aussi modifié le fichier /etc/exim4/passwd.client:

### CONFDIR/passwd.client
#
# Format:
#targetmailserver.example:login:password
#
# default entry:
### *:bar:foo
smtp.cegetel.net:xxxxxxx@cegetel.net:yyyyyyy


avec xxxxxxx pour le nom d'utilisateur et yyyyyyy pour le mot de passe. L'adresse xxxxxxx@cegetel.net existe. J'ai aussi tenté xxxxxx\*cegetel.net et xxxxxxx*cegetel.net (qui est le nom d'utilisateur d'après le guide cegetel fourni avec le pack adsl), en faisant killall exim4 ; update-exim4.conf ; /usr/sbin/exim4 -bd -q30m avant chaque tentative.
J'ai rien changé d'autre à la config.

Aucun mail n'est arrivé à destination, aucun n'est revenu.

Des idées ?
  • # dpkg

    Posté par  . Évalué à 2.

    un conseil, utilise dpkg-reconfigure exim4-config.
    Tu devrais pouvoir tout configurer sans trop te prendre la tete...
    • [^] # Re: dpkg

      Posté par  . Évalué à 1.

      Oui je sais (c'est même indiqué dans les commentaires du fichier de configuration de mon message intial). Mais le problème est avant tout que je ne connais pas bien les MTA, donc je ne suis pas sûr du tout d'avoir configuré avec les bonnes valeurs. Le fichier .conf.conf que j'ai donné contient la liste des valeurs que j'ai donné lors du dernier dpkg-reconfigure exim4-config. En postant ici, j'espérais que quelqu'un qui est aussi chez cegetel pourrait faire un vdiff rapide avec son propre .conf.conf et me communiquer les différences importantes.
  • # les logs

    Posté par  . Évalué à 2.

    regarde ds les logs, ils sont ds /var/log/exim4/ et pas ds /var/log/mail...

    moi chez ovh, j'avais un pb de redirection de mon smarthost, en gros :
    smtp.monfai.com --> mailserver.monfai.com, et donc l'auth devait se faire sur mailserver et pas sur smtp.

    J'ai trouve ca grace au mode debug de sylpheed-claws
    • [^] # Re: les logs

      Posté par  . Évalué à 1.

      Voilà les erreurs que je trouve dans les logs:

      quelquun@laposte.net R=smarthost T=remo
      te_smtp_smarthost: SMTP error from remote mailer after RCPT TO:<quelquun@laposte.net>: host smtp.cegetel.net [212.94.174.24]: 554 <localhost.localdomain>: Helo
      command rejected: Invalid name
      • [^] # Re: les logs

        Posté par  . Évalué à 2.

        Ca a l'air d'etre un pb de configuration de ton nom de machine.
        Essaye de faire un helo toi meme en telnet

        Quel methode d'auth tu utilises ?
        • [^] # Re: les logs

          Posté par  . Évalué à 1.


          $ telnet smtp.cegetel.net 25
          Trying 212.94.174.24...
          Connected to smtp.sitadelle.com.
          Escape character is '^]'.
          220 smtp.cegetel.net ESMTP Postfix (Debian/GNU)
          ehlo mon.adr.esse.ip
          250-smtp.cegetel.net
          250-PIPELINING
          250-SIZE 10240000
          250-ETRN
          250-STARTTLS
          250 8BITMIME
          mail from:xxxxxxx@cegetel.net
          250 Ok
          rcpt to:xxxxxxxx@cegetel.net
          554 <mon.adr.esse.ip>: Helo command rejected: Invalid name


          J'ai été surpris de constater qu'il n'y avait pas de ligne 250-AUTH .
          Mon nom de machine est arbitraire, je ne suis pas (encore) déclaré sur les serveurs DNS. Est-ce que ça peut jouer ?

          Ca n'a probablement rien à voir, mais je ne comprends pas:
          $ telnet mon.adr.esse.ip 25
          Trying mon.adr.esse.ip...
          telnet: Unable to connect to remote host: Connection refused
          alors que mon firewall (guarddog) est configuré pour accepter le protocole smtp !?
          • [^] # Re: les logs

            Posté par  . Évalué à 2.

            Petre qu'il fonctionne en tls?
            250-STARTTLS


            guarddog acepte dans quel sens le smtp, et toi tu testes depuis ou et vers ou?

            exterieur-->passerelle-->server smtp?
            • [^] # Re: les logs

              Posté par  . Évalué à 1.

              YESSSSS!!!! Ca marche ! J'ai réussi ! Bonheur !

              Le 1er grand pas a été de réussir à envoyer un message avec telnet.
              J'ai pu ainsi m'apercevoir que je pouvais mettre à peu près n'importe quoi comme nom de site après le ehlo, mais que le domaine de l'adresse de l'expéditeur devait être un domaine existant.
              Le plus important est que cela prouvait qu'il n'y avait pas d'authentification ! Et donc pas besoin de me prendre la tête avec TLS !

              Par élimination, le problème venait probablement effectivement du fait que exim4 faisait un "ehlo localdomain.localhost" au lieu d'un "ehlo mamachine". J'ai trituré la config avec dpkg-reconfigure exim4-config, sans succès.

              Alors je n'ai plus eu le choix. J'ai du faire ce que je redoutais depuis le début... me plonger dans la spécification Exim, un bien bel ouvrage de 50 chapitres.

              Et j'ai trouvé !
              Il suffit de rajouter la ligne en gras dans le fichier /etc/exim4/exim4.conf.template (à peu près à la ligne 1250 chez moi).

              remote_smtp_smarthost:
              debug_print = "T: remote_smtp_smarthost for $local_part@$domain"
              driver = smtp
              helo_data = "mamachine"
              hosts_try_auth = ${if exists {CONFDIR/passwd.client}{DCsmarthost}{}}
              tls_tempfail_tryclear = false
              DEBCONFheaders_rewriteDEBCONF
              DEBCONFreturn_pathDEBCONF

              J'avoue, j'ai eu la flemme de chercher quelle variable contient le nom de ma machine.
              Je sais pas si c'est la manière standard de gérer le problème (j'en doute), mais en tout cas ça marche.
              Au bout du compte, j'aimerais quand même comprendre pourquoi ce ehlo est rejeté lors d'un connexion par exim4 alors qu'il est valide par telnet...

              Merci hommelix pour ton aide !

Suivre le flux des commentaires

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