Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 05/01/2016, à 21:18

gboul

[RESOLU] Serveur mail et saslauthd

Bonjour à tous et bonne année.

Je suis en train d'installer un serveur mail sur un serveur (Ubuntu serveur 14.04.3 LTS) afin de pouvoir l'utiliser sur mon site internet.
Pour cela j'ai donc suivi la documentation Postfix de Ubuntu.fr à ce lien https://doc.ubuntu-fr.org/postfix

De ce fait, j'ai utilisé une authentification par saslauthd.
Lors des tests, j'ai utilisé la fonction

testsaslauthd -u utilisateur -p password

Dans un premier temps, le résultat de ce test à donné de bon résultats, puisque j'obtenais le résultat suivant

0: OK "Success."

Je pouvais même envoyer des mails avec la fonction

mail adresse@mail -s Sujet

Ce qui fonctionnait très bien.

Or depuis un quelques temps, je n'arrive plus à utiliser la fonction

mail adresse@mail -s Sujet

.
Lorsque je le fait, Je n'ai pas de message d'erreur, mais je n'arrive pas à écrire de mail.

J'ai donc essayé le test de saslauthd avec la fonction

testsaslauthd -u utilisateur -p password

Et là, le résultat n'a pas été le même. J'obtiens celui-ci

root@monserver:/# testsaslauthd -u utilisateur -p motdepasse
connect() : No such file or directory
0: root@monserver:/#

Du coup, j'ai essayé de réinstaller Postfix et saslauthd.

Est-ce que quelqu'un aurait une idée d'une part pour mettre en place les fichiers manquant dans saslauthd et d'autre part pour récupérer la fonction d'envoi mail?

Merci beaucoup.

Dernière modification par gboul (Le 15/01/2017, à 19:48)

Hors ligne

#2 Le 08/01/2016, à 14:50

LeoMajor

Re : [RESOLU] Serveur mail et saslauthd

connect() : No such file or directory

bonjour,

ps aux | grep sasl

A/ problème de socket

Cela peut être le socket unix qui n'est pas crée, suite à un défaut de permissions. Au reboot, le système rétablit les permissions malgré chmod chown faits précédemment . Le service se lance et échoue ("mux" n'est pas crée). Il faut utiliser  dpkg-statoverride
Anciennement, il fallait utiliser

> 10.04 LTS: /usr/share/doc/sasl2-bin/README.Debian.gz: dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
> 12.04 LTS: /usr/share/doc/sasl2-bin/README.Debian.gz: dpkg-statoverride --add root sasl 750 /var/spool/postfix/var/run/saslauthd
> 14.04 idem que 12.04

reboot

sudo chmod g+s /var/spool/postfix/var/run/saslauthd

  vérification

sudo testsaslauthd -s smtp -f /var/spool/postfix/var/run/saslauthd/mux -u toto -p mot_de_passe localhost
0: OK "Success."

il me semble, de mémoire, que sans sudo le test ne fonctionne pas.

login et mot_depasse en encodage base64

printf 'toto\0toto\0mot_de_passe' | openssl base64
dG90bwB0b3RvAG1vdF9kZV9wYXNzZQ==

telnet smtp

telnet localhost 25
# openssl s_client -connect localhost:25 -starttls smtp -ign_eof # 
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 hostname ESMTP Postfix (Ubuntu)
ehlo machine
250-hostname
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
auth plain
334 
dG90bwB0b3RvAG1vdF9kZV9wYXNzZQ==
235 2.7.0 Authentication successful
^]
telnet> quit

B/ problème de croot

cannot connect to saslauthd server: No such file or directory
  * Dans une session telnet smtp, si tu as "**535 5.7.8 Error: authentication failed: generic failure**" comme erreur, c'est que tu as un problème de croot dans le master.cf

...
auth plain 
334 
dG90bw......==
535 5.7.8 Error: authentication failed: generic failure

>/var/log/mail.log

 
... postfix/smtpd[1663]: warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory
... postfix/smtpd[11139]: warning: SASL authentication failure: Password verification failed
... postfix/smtpd[11139]: warning: localhost[127.0.0.1]: SASL plain authentication failed: generic failure

  * solution de "Error: authentication failed: generic failure"

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd

C/ renseigner /usr/lib/sasl2/smtpd.conf

pwcheck_method: saslauthd
mech_list: PLAIN LOGIN

D/ renseigner /etc/default/saslauthd

egrep -v '^(^#|^$)' /etc/default/saslauthd

START=yes
DESC="SASL Authentication Daemon"
NAME="saslauthd"
MECHANISMS="pam"
MECH_OPTIONS=""
THREADS=5
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

Hors ligne

#3 Le 08/01/2016, à 23:33

gboul

Re : [RESOLU] Serveur mail et saslauthd

Bonsoir,
Merci LeoMajor pour ta réponse. Très complète.
Cela n'a pas complètement fonctionné.

J'ai avancé pas à pas.

A/
Au départ j'avais une erreur lorsque je tapais:

sudo testsaslauthd -s smtp -f /var/spool/postfix/var/run/saslauthd/mux -u toto -p mot_de_passe localhost

Puis par la suite, j'ai eu une confirmation que ça fonctionnait.
Par la suite j'ai utilisé Telnet localhost 25, mais j'ai eu le message d'erreur suivant

535 5.7.8 Error: authentication failed: generic failure

B/
J'ai donc modifier le fichier /etc/postfix/master.cf afin d'y modifier la ligne ci -dessous

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd
 

C/ Le fichier /usr/lib/sasl2/smtpd.conf a été renseigné
D/ Le fichier /etc/default/saslauthd a aussi été renseigné

Comme ça ne fonctionnait toujours pas, j'ai utilisé les commandes

dpkg-statoverride --add root sasl 710 /var/run/saslauthd/mux
dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd/mux

Mais malgré cela, ça ne marche toujours pas.
Je commence à m'arracher les cheveux malgré que j'ai le crane rasé! lol

Pour la commande

ps aux | grep sasl

j'ai obtenu le résultat suivant:

root      1473  0.0  0.0  83604  1084 ?        Ss   23:07   0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -n 5
root      1474  0.0  0.0  83604   760 ?        S    23:07   0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -n 5
root      1475  0.0  0.0  83604   760 ?        S    23:07   0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -n 5
root      1477  0.0  0.0  83604   760 ?        S    23:07   0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -n 5
root      1478  0.0  0.0  83604   760 ?        S    23:07   0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -n 5
root      1951  0.0  0.0  14564   932 pts/0    S+   23:25   0:00 grep --color=auto sasl

Là, je suis perdu, je ne sais plus quoi faire.

Merci pour votre aide.

Hors ligne

#4 Le 09/01/2016, à 13:03

Compte anonymisé

Re : [RESOLU] Serveur mail et saslauthd

Bonjour, je ne compte pas le temps que j'ai passé à cause de saslauthd, fonctionne puis fonctionne plus etc... je l'ai laissé et remplacé par Dovecot qui servait déjà pour les transfert imap.
Il s'agit d'indiquer à  Dovecot de créer un socket Unix, sur lequel il écoutera les demandes d'identification provenant de Postfix.
avec Dovecot c'est beaucoup plus simple et pas de mauvaises surprises. (à mon avis)
http://feub.net/2011/08/postfix-sasl-avec-dovecot/
suivant les versions, la config est dans  /etc/dovecot/dovecot.conf   ou   /etc/dovecot/conf.d/10-master.conf

exemple dans   /etc/dovecot/conf.d/10-master.conf

service auth {
   # Postfix smtp-auth
  unix_listener /var/spool/postfix/private/auth {
    mode = 0660
        user=postfix
        group=postfix
  }
 
  # Auth process is run as this user.
  #user = $default_internal_user
 }

#5 Le 09/01/2016, à 18:53

gboul

Re : [RESOLU] Serveur mail et saslauthd

Bonjour,
Localhost,, j'ai tenté ta solution, mais ça a été pire.
Par conséquent, j'ai désinstallé Postfix saslauth avec apt-get purge, puis j'ai tout réinstallé.
Finalement, tout à fini par fonctionner.

Seule la fonction mail ne fonction pas, j'obtiens ceci:

root@mon-server:/# mail adresse@mail.tld -s Sujet
root@mon-server:/# 

Je n'ai pas moyen d'écrire un mail.

Est-ce que quelqu'un saurait comment récupérer cette fonction, s'il vous plaît?

En tout cas, merci beaucoup pour ces réponses qui m'ont déjà beaucoup aidées.

Hors ligne

#6 Le 10/01/2016, à 10:33

Compte anonymisé

Re : [RESOLU] Serveur mail et saslauthd

gboul a écrit :

Je n'ai pas moyen d'écrire un mail.

Est-ce que quelqu'un saurait comment récupérer cette fonction, s'il vous plaît?

En tout cas, merci beaucoup pour ces réponses qui m'ont déjà beaucoup aidées.

echo "envoi test" | mail -s test ton-adresse@mail
mailq  
tail -f /var/log/mail.log

#7 Le 10/01/2016, à 11:40

LeoMajor

Re : [RESOLU] Serveur mail et saslauthd

535 5.7.8 Error: authentication failed: generic failure

Le problème peut venir aussi d'un problème de la portée de l'authentification; user@domain.tld != user
Si user@domain est passé en argument comme identifiant, le sasl, à travers pam, va chercher un truc du genre grep user@domain /etc/password. Evidemment, il ne trouve.
Pire, il considère qu'il s'agit d'une erreur de syntaxe, d'écriture du même acabit que  *canonical_maps, *generic_maps.

Fais un test en créant un utilisateur unix gboul@domain.tld et non simplement un utilsateur gbout
portée de l'identification:   %u@%r != %u

Hors ligne

#8 Le 10/01/2016, à 13:58

gboul

Re : [RESOLU] Serveur mail et saslauthd

Fais un test en créant un utilisateur unix gboul@domain.tld et non simplement un utilsateur gbout
portée de l'identification:   %u@%r != %u

Merci beaucoup, Je n'avais pas pensé à ça. Je vais essayer pour voir ce que ça donne.

Merci encore.

Hors ligne