Bonjour,
Description de la situation
Sur mon serveur de messagerie (autohébergement avec un raspberry), j'ai le couple postfix + dovecot.
Je m'en sers pour envoyer mes courriels à partir de mon ordinateur : pas de problème.
Description du problème
En utilisant sur mon téléphone portable le client de messagerie k9-mail, je ne peux envoyer aucun courriel sur des adresses extérieures à mon nom de domaine. Les traces de postfix sont claires :
postfix/smtpd[30266]: NOQUEUE: reject: RCPT from unknown[xx.xx.xx.xx]: 454 4.7.1 <xxxxx@free.fr>: Relay access denied; from=<utilisateur@mondomaine.fr> to=<xxxx@free.fr> proto=ESMTP helo=<[xx.xx.xx.xx]>
Question
Quelle partie de la configuration dois-je modifier (tout en ne souhaitant pas être un relai trop ouvert) ?
Merci
# Sauf erreur de ma part
Posté par Zylabon . Évalué à 0. Dernière modification le 25 février 2014 à 21:52.
En mettant ce qu'il faut dans la variable
mynetworks
par exemplemynetworks = 127.0.0.0/8 ip_du_telephone
Please do not feed the trolls
[^] # Re: Sauf erreur de ma part
Posté par Zylabon . Évalué à 3.
ajout : Comment est connecté le téléphone ? Ce truc ne marche bien que si le téléphone a sa propre adresse ou est sur le réseau local. Si c'est sur le net il faut mettre en place une authentification.
(personnellement j'ai réglé le problème avec un tunnel ssh)
Please do not feed the trolls
# Explication
Posté par chimrod (site web personnel) . Évalué à 5.
Il est normal que le serveur mail ne renvoie pas ton message : il ne peut pas faire la différence entre un mail valide écrit par tes soins et un spam envoyé par un bot sur pc vérolé. Quand tu es sur le réseau local, tout va bien on considère que tu es un utilisateur légitime.
Une autre solution que de rajouter des IPs à la chaîne est d'autoriser les utilisateurs authentifiés. À ce moment là, dès que tu es sur le réseau extérieur, tu dois montrer patte blanche pour envoyer un mail.
Tu peux ajouter la ligne permit_sasl_authenticated dans la liste des autorisations postfix :
Ensuite pour l'authentification, je ne vais pas répéter le wiki ki va bien, je te laisse suivre la documentation (ou la compléter au besoin).
Une fois que tu auras configuré tout ça, je t'encourage très fortement à regarder du côté de fail2ban pour sécuriser ton serveur et bloquer les tentatives d'intrusions (mais c'est une autre histoire)…
[^] # Re: Explication
Posté par claudex . Évalué à 3.
Quel est l'intérêt d'avoir
permit_mynetworks
etinet:127.0.0.1:10023
? À moins de ne pas avoir localhost dansmy_networks
.« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Explication
Posté par chimrod (site web personnel) . Évalué à 2.
Tu as raison aucune. Scorie probable de mes essais de configurations…
# Authentification SMTP
Posté par JJD . Évalué à 2.
Afin que ton postfix accepte de relayer tes mails, il faut que ton client (smartphone) s'identifie auprès du serveur SMTP (il me semble que c'est la configuration par défaut sous Debian).
Comme tu as un serveur IMAP dovecot, tu peux l'utiliser pour cela : cherche un peu et tu trouveras pleins de tutos t'expliquant le paramétrage. Au final, dans le fichier main.cf tu devrais avoir quelque chose dans ce genre :
Comme ça postfix va utiliser une socket publiée par dovecot (/var/spool/postfix/private/auth) pour vérifier le mot de passe. Dans la conf de dovecot, il faudra déclarer cette socket :
Et bien évidemment, comme tu va devoir envoyer un mot de passe, pense à faire du TSL pour que ce mot de passe ne transite pas en clair (mais tu dois déjà avoir un certificat pour chiffrer la connexion IMAP)
# Merci de vos réponses
Posté par gepolabo . Évalué à 2.
Bonsoir à tous,
Merci pour vos commentaires.
L'adresse IP du téléphone n'étant pas prévisible, la solution que j'ai retenue est celle basée sur une authentification smtp.
Grâce au wiki j'ai réussi à finaliser ma configuration.
Bonne soirée à vous,
Librement vôtre.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.