Forum Linux.debian/ubuntu [EXIM4] Authentification SMTP

Posté par .
Tags : aucun
1
13
fév.
2009
Bonjour à tous,

Je voudrais faire un relais SMTP accessible depuis le net mais pour éviter de mauvaises surprises, je voudrais ajouter une authentification. (Sans TLS pour l'instant)

Je tourne sur une Debian avec un Exim 4.69.

J'ai réussi à configurer mon serveur afin qu'il puisse faire relais.
Mais j'arrive à rien faire pour la partie authentification.

Un extrait de /etc/exim4/exim4.conf.template

# this returns the matching line from passwd.client and doubles all ^
PASSWDLINE=${sg{\
${lookup{$host}nwildlsearch{CONFDIR/passwd.client}{$value}fail}\
}\
{\\N[\\^]\\N}\
{^^}\
}

plain:
driver = plaintext
public_name = PLAIN
.ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
client_send = "<; ${if !eq{$tls_cipher}{}\
{^${extract{1}{:}{PASSWDLINE}}\
^${sg{PASSWDLINE}{\\N([^:]+: )(.*)\\N}{\\$2}}\
}fail}"
.else
client_send = "<; ^${extract{1}{:}{PASSWDLINE}}\
^${sg{PASSWDLINE}{\\N([^:]+: )(.*)\\N}{\\$2}}"
.endif

login:
driver = plaintext
public_name = LOGIN
.ifndef AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS
# Return empty string if not non-TLS AND looking up $host in passwd-file
# yields a non-empty string; fail otherwise.
client_send = "<; ${if and{\
{!eq{$tls_cipher}{}}\
{!eq{PASSWDLINE}{}}\
}\
{}fail}\
; ${extract{1}{::}{PASSWDLINE}}\
; ${sg{PASSWDLINE}{\\N([^:]+: )(.*)\\N}{\\$2}}"
.else
# Return empty string if looking up $host in passwd-file yields a
# non-empty string; fail otherwise.
client_send = "<; ${if !eq{PASSWDLINE}{}\
{}fail}\
; ${extract{1}{::}{PASSWDLINE}}\
; ${sg{PASSWDLINE}{\\N([^:]+: )(.*)\\N}{\\$2}}"
.endif



De même voici la configuration de /etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype='internet'
dc_other_hostnames='machine.truc'
dc_local_interfaces=''
dc_readhost=''
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets='192.168.1.xx' # mon IP
dc_smarthost=''
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname=''
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'



Auriez-vous des liens vers une documentation complète et simple ?
Mes recherches sur Internet n'ont pas été fructueuse ...

Pour complément d'information sur mon problème, lors d'une connexion, je n'ai pas besoin d'authentification.

220 ********.**** ESMTP Exim 4.69 Thu, 12 Feb 2009 11:30:24 +0100
EHLO example.com
250-********.**** Hello ********.****.local [192.168.1.**]
250-SIZE 52428800
250-PIPELINING
250-AUTH LOGIN
250 HELP
MAIL FROM:from@example.com
250 OK
RCPT TO:to@example.com
250 Accepted
DATA
354 Enter message, ending with "." on a line by itself
Subject:test
.
250 OK id=1LXYrZ-0000Xr-Td


Enfin, je suis un peu perdu avec le fichier barbare de configuration /etc/exim4/exim4.conf.template qui comportent un peu plus de 2000 lignes.

Merci à l'avance
  • # autre MTA

    Posté par . Évalué à 1.

    si exim te rebute, tu dois pouvoir faire la meme chose avec
    sendmail ou avec postfix (ou encore un autre MTA)
  • # [EXIM4] Authentification SMTP

    Posté par . Évalué à 1.

    Merci pour cette réponse, j'y avais pensé mais j'aimerais comprendre le non fonctionnement de Exim 4.
    • [^] # Commentaire supprimé

      Posté par . Évalué à 2.

      Ce commentaire a été supprimé par l'équipe de modération.

      • [^] # Re: [EXIM4] Authentification SMTP

        Posté par . Évalué à 1.

        Merci alenvers, j'avais lu la doc et j'ai bien une version non-splitter avec un fichier exim4.conf.localmacros contenant :

        AUTH_CLIENT_ALLOW_NOTLS_PASSWORDS=true
        AUTH_SERVER_ALLOW_NOTLS_PASSWORDS=true
        • [^] # Re: [EXIM4] Authentification SMTP

          Posté par . Évalué à 2.

          Il faut peut-être aussi ajouter une ligne :
          AUTH_PLAINTEXT = yes

          Regarde aussi du côté du fichier /etc/exim4/passwd (man exim4_passwd) De mémoire il faut y mettre les noms d'utilisateurs et mots de passe des gens que tu autorises à utiliser ton SMTP.

          J'ai souvenir que la conf exim est assez obscur pour l'authentification, bon courage donc ;)
          • [^] # Re: [EXIM4] Authentification SMTP

            Posté par . Évalué à 1.

            Merci, j'ai ajouté
            AUTH_PLAINTEXT=yes
            puis
            AUTH_LOGIN=yes

            J'ai bien rempli le fichier /etc/exim4/passwd
            nicolas:$1$3SjN$lm1nQFQvaUMUFdNRJOHhV1:nicolas

            Avec les bons droits (cf. man exim4_passwd)

            Mon problème reste toujours le même, je peux envoyer un mail sans m'authentifier.
            • [^] # Commentaire supprimé

              Posté par . Évalué à 2.

              Ce commentaire a été supprimé par l'équipe de modération.

              • [^] # Commentaire supprimé

                Posté par . Évalué à 2.

                Ce commentaire a été supprimé par l'équipe de modération.

                • [^] # Re: [EXIM4] Authentification SMTP

                  Posté par . Évalué à 1.

                  Merci allenvers,

                  Ces lignes ont été décommentées, je me suis aperçu également (par la suite) que je n'aurais pas du poster ces lignes car en effet elles correspondent à l'authentification "post-serveur".

                  Je retourne toujours à la case départ, j'ai beau lire et relire la doc d'Exim4 et/ou des documentations sur Internet ... je ne vois toujours pas où se trouve mon problème.

                  Doit-il y avoir des modifications au niveau des ACLs ?
                  • [^] # Re: [EXIM4] Authentification SMTP

                    Posté par . Évalué à 1.

                    Sinon, je fais toujours un ...
                    update-exim4.conf; /etc/init.d/exim4 restart

                    **Correction**
                    Ces lignes ont été décommentées.
                    Je me suis aperçu également (par la suite) que je n'aurais pas du poster cette extrait de /etc/exim4/exim4.conf.templates dans mon sujet initiale car en effet elles correspondent à l'authentification "post-serveur".

Suivre le flux des commentaires

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