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 23/02/2013, à 21:39

xuo

Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonjour,

J'ai posté ce message sur le forum de Mageia mais je n'ai pas eu vraiment de réponse. Et comme sur celui-ci, j'ai vu qu'il y avait des 'gourous' sur la config de messagerie, DNS et autres joyeusetés, je tente ma chance ici également.

Je souhaite pouvoir rediriger les messages locaux reçus sur un ordi par différents utilisateurs vers un utilisateur d'un autre ordi local, sans passer par internet. Je ne veux pas avoir à envoyer de messages vers xxx@free.fr par ex.
Je m'explique :
Les utilisateurs apache, cron, root, postfix, backuppc ... de ordi1 peuvent recevoir/émettre des messages pour un autre utilisateur (en général root ou eux-mêmes ou xuo).
Je souhaite que ces messages soient redirigés vers l'utilisateur xuo sur ordi2, SANS passer par Internet.

Aujourd'hui, j'arrive à le faire en passant par free et en redirigeant les messages vers xuo@free.fr. Puis depuis ordi2, je récupère ces messages avec Thunderbird comme n'importe quel autre.

Pour résumer, je souhaite que xuo@ordi2 reçoivent un message système reçu par root/postfix/backuppc/...@ordi1 à travers mon réseau local.

En résumé encore, je souhaite par exemple que en étant root sur ordi1.
# mail xuo@ordi2
soit reçu dans le /var/spool/mail/xuo de ordi2

J'ai cherché un peu partout et il semblerait qu'il faille que je commence par créer un serveur DNS, mais je n'en suis pas sûr et de toutes façons, cela ne sera sans doute qu'une première étape. En plus, cela me semble bien compliqué pour une manip qui me semble assez basique.

Quelqu'un pourrait-il me décrire (en me mettant les point sur les 'i') la marche à suivre ?

Merci.

Xuo.

Hors ligne

#2 Le 24/02/2013, à 10:56

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

c'est hyper simple :
tu configures ton système de messagerie de ordi1 pour qu'il envoie tous les e-mails (inconditionnellement) à ordi2, en mode "relais".

Personnellement je ne connais que Postfix, avec lui ça se passerait dans l'option "relayhost". Il faut aussi bien sûr le configurer pour que les e-mails vers "localhost" soient redirigés vers l'extérieur et non stockés localement.
http://www.postfix.org/postconf.5.html#relayhost


PS: Non, aucune nécessité d'avoir un serveur DNS pour un besoin aussi simple.

Dernière modification par tiramiseb (Le 24/02/2013, à 10:57)

Hors ligne

#3 Le 24/02/2013, à 15:54

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonjour,

Voici un extrait de mon fichier main.cf de ordi1 :

inet_interfaces = localhost
inet_protocols = all
mynetworks_style = host
#delay_warning_time = 4h
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) (Mandriva Linux)
unknown_local_recipient_reject_code = 450
smtp-filter_destination_concurrency_limit = 2
lmtp-filter_destination_concurrency_limit = 2

relayhost = ordi2

Cela ne change pas le fait que ordi2 ne reçoit rien de ordi1.

Après :
mail eric@ordi2

Dans le fichier /var/log/syslog de ordi1 :
Feb 24 15:47:55 ordi1 postfix/qmgr[22599]: 014DD1C1C7: from=<root@ordi1.localdomain>, size=441, nrcpt=1 (queue active)
Feb 24 15:47:55 ordi1 postfix/smtp[1054]: warning: relayhost configuration problem
Feb 24 15:47:55 ordi1 postfix/smtp[1054]: 014DD1C1C7: to=<eric@ordi2.localdomain>, orig_to=<eric@ordi2>, relay=none, delay=0.43, delays=0.18/0.04/0.21/0, dsn=4.3.5, status=deferred (Host or domain name not found. Name service error for name=ordi2.mondomaine.local type=AAAA: Host not found)

Mon fichier /etc/hosts sur ordi1 :

127.0.0.1 ordi1.mondomaine.local ordi1
127.0.0.1 localhost
192.168.0.13 ordi2.mondomaine.local ordi2

Merci pour votre aide.

Xuo.

Dernière modification par xuo (Le 24/02/2013, à 16:02)

Hors ligne

#4 Le 24/02/2013, à 16:13

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Les logs sont tout à fait clairs : la machine essaie d'envoyer à "ordi2.localdomain" et dans ton /etc/hosts ce nom n'est pas défini.

À la limite, utilise l'adresse IP carrément :

relayhost = [192.168.0.13]

Dernière modification par tiramiseb (Le 24/02/2013, à 16:13)

Hors ligne

#5 Le 24/02/2013, à 17:08

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonjour,

Je reconnais que comme j'ai fait beaucoup de manips, modifs et autres tests, j'ai probablement une config un peu bancale.
J'ai fait la modif : relayhost = [192.168.0.13]
et dans /var/log/syslog, j'ai :

Feb 24 16:57:55 ordi1 postfix/error[5455]: A78601CE71: to=<eric@ordi2.localdomain>, relay=none, delay=1125, delays=1124/0.06/0/0.12, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to 192.168.0.13[192.168.0.13]:25: Connection timed out)

Sur ordi2, je n'ai aucun pare-feu activé, donc à priori, le port 25 est ouvert.

Dans les fichiers postfix/defer/xxx, j'ai :

reason=connect to 192.168.0.13[192.168.0.13]:25: Connection refused

Il faut peut-être faire quelque chose côté ordi2.

Xuo.

Dernière modification par xuo (Le 24/02/2013, à 17:10)

Hors ligne

#6 Le 24/02/2013, à 19:34

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Sur ordi2, Postfix est-il bien configuré ?
Que dit le fichier master.cf concernant le service smtp notamment ?
Que donnent ces commandes ?

grep ^smtp /etc/postfix/master.cf
netstat -tlnp | grep :25


PS: Mets le retour des commandes entre balises "[ code ]", que tu obtiendras en cliquant sur l'icône "< >" au-dessus du champ où tu tapes ta réponse

Dernière modification par tiramiseb (Le 24/02/2013, à 19:34)

Hors ligne

#7 Le 24/02/2013, à 22:35

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonsoir,

Le résultat des commandes :

/etc 140 # netstat -tlnp | grep :25
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      18237/master
/etc 141 # grep ^smtp /etc/postfix/master.cf
smtp    inet    n       -       y       -       -       smtpd
smtp    unix    -       -       y       -       -       smtp
smtp-filter     unix    -       -       y       -       -       smtp

Xuo.

Hors ligne

#8 Le 25/02/2013, à 18:00

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

xuo a écrit :
/etc 140 # netstat -tlnp | grep :25
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      18237/master

On voit que Postfix n'écoute que sur l'interface locale (127.0.0.1).

Je ne me rappelle plus comment on le configure pour écouter sur tous les ports.

Dans le fichier /etc/postfix/master.cf, la ligne qui commence par "smtp" est, chez moi (avec Postfix en écoute sur toutes les interfaces), la suivante :

smtp      inet  n       -       -       -       -       smtpd

Très légère différence sur le 5me champ, mais ça ne semble pas correspondre à l'écoute sur 127.0.0.1 uniquement.

Hors ligne

#9 Le 25/02/2013, à 20:57

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonsoir,

Je vais voir comment faire pour que ordi2 écoute toutes les interfaces. Mais ce soir, je suis trop fatigué. Ils m'ont épuisé au boulot ...

Merci.

Xuo.

Hors ligne

#10 Le 25/02/2013, à 21:33

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

J'ai retrouvé.

Si la config de Postfix sur ordi2 est relativement similaire à celle de ordi1, je pense qu'il suffit de remplacer la ligne suivante dans main.cf sur ordi2 :

inet_interfaces = localhost

par

inet_interfaces = all

Hors ligne

#11 Le 26/02/2013, à 21:11

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonsoir,

Je ne m'en sors pas.
Je vais donner les fichiers qui sont utilisés en ce moment :
J'avais utilisé les noms ordi1 et ordi2 pour expliquer ce que je voulais faire. Mais comme le post commence à devenir imposant, je vais utiliser dorénavant les "vrais" noms des pc que j'utilise. Cela m'évitera de renommer les noms des pcs ou des adresses ip (et de faire des erreurs).
En conclusion, le vrai nom de ordi1 est ordi4 et celui de ordi2 est ordi3.
Cela ne change pas grand-chose mais évitera de me faire des noeuds au cerveau.
Pour mémoire, je veux pouvoir faire depuis ordi4 en étant root :
mail eric@ordi3
et recevoir le message dans le /var/spool/mail/eric de ordi3

ordi4 :

/etc/postfix 458 # more /etc/hosts
# generated by drakconnect
127.0.0.1 ordi4
127.0.0.1 localhost
192.168.0.12 ordi2
192.168.0.13 ordi3
/etc/postfix 459 # more main.cf
# User configurable parameters
inet_interfaces = localhost
inet_protocols = all
mynetworks_style = host

# Modif EB
# Cela ne marche pas. Il faut l'adresse ip !!!
#relayhost = [ordi3]
relayhost = [192.168.0.13]

ordi3 :

/etc 192 # more /etc/hosts
# generated by drakconnect
127.0.0.1 ordi3.mondomaine.local ordi3
127.0.0.1 localhost
192.168.0.12 ordi2
192.168.0.14 ordi4 serveur
/etc 193 # more /etc/postfix/main.cf
# User configurable parameters

#inet_interfaces = localhost
inet_interfaces = all
inet_protocols = all
#mynetworks_style = host

# Modif EB
mynetworks_style = subnet
mynetworks = 127.0.0.0/8 192.168.0.0/24

J'ai supprimé les lignes non modifiées ou à priori sans intérêt ici.

Depuis ordi4 :

/etc/postfix 460 # mail eric@ordi3
Subject: essai 17
essai 17
EOT
/etc/postfix 465 # tail -30 /var/log/syslog
Feb 26 21:01:22 ordi4 postfix/pickup[13688]: F2B721B675: uid=0 from=<root>                                           
Feb 26 21:01:22 ordi4 postfix/cleanup[15740]: F2B721B675: message-id=<20130226200121.F2B721B675@ordi4.localdomain>   
Feb 26 21:01:22 ordi4 postfix/qmgr[642]: F2B721B675: from=<root@ordi4.localdomain>, size=443, nrcpt=1 (queue active) 
Feb 26 21:01:23 ordi4 postfix/smtp[15742]: F2B721B675: to=<eric@ordi3.localdomain>, orig_to=<eric@ordi3>, relay=192.168.0.13[192.168.0.13]:25, delay=1.9, delays=1.3/0.44/0.08/0.08, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 1E1104E2)
Feb 26 21:01:23 ordi4 postfix/qmgr[642]: F2B721B675: removed 

Mais bien sûr, je n'ai rien reçu sur ordi3. Si quelqu'un peut trouver quelque chose, je suis preneur.
Je crois que si je supprime les lignes mynetworks_style et mynetworks du fichier main.cf de ordi3, j'ai un message d'erreur. Mais rien de plus dans /var/spool/mail/eric de ordi3.

Merci.

Xuo.

Hors ligne

#12 Le 26/02/2013, à 23:22

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

status=sent (250 2.0.0 Ok: queued as 1E1104E2)

Cela signifie que le mail a bien été accepté par le serveur "ordi3".

Il faut maintenant voir sur ordi3 (dans les logs de Postfix) ce que ce mail est devenu...

Hors ligne

#13 Le 27/02/2013, à 08:36

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonjour,

/var/spool/postfix 115 # grep 1E1104E2 !$
grep 1E1104E2 /var/log/mail/info.log
Feb 26 21:01:23 ordi3 postfix/smtpd[12214]: 1E1104E2: client=ordi4[192.168.0.14]
Feb 26 21:01:23 ordi3 postfix/cleanup[12217]: 1E1104E2: message-id=<20130226200121.F2B721B675@ordi4.localdomain>
Feb 26 21:01:23 ordi3 postfix/qmgr[31387]: 1E1104E2: from=<root@ordi4.localdomain>, size=631, nrcpt=1 (queue active)
Feb 26 21:01:23 ordi3 postfix/smtp[12218]: 1E1104E2: to=<eric@ordi3.localdomain>, relay=none, delay=0.23, delays=0.08/0.01/0.14/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=ordi3.localdomain type=AAAA: Host not found)
Feb 26 21:01:23 ordi3 postfix/bounce[12219]: 1E1104E2: sender non-delivery notification: 5FA80503
Feb 26 21:01:23 ordi3 postfix/qmgr[31387]: 1E1104E2: removed

Peut-être faut-il ajouter ordi3.localdomain dans le fichier /etc/hosts ? Ou il y a sans doute quelque chose à faire au niveau des hosts.deny et hosts.allow ?

Xuo.

Dernière modification par xuo (Le 27/02/2013, à 08:37)

Hors ligne

#14 Le 27/02/2013, à 08:42

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Encore moi,

Peut-être faut-il ajouter ordi3.localdomain dans le fichier /etc/hosts ?

Cela ne change rien. Ce soir, je regarde les hosts.deny et allow.

Xuo.

Hors ligne

#15 Le 27/02/2013, à 08:46

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

L'ordinateur ordi3 n'est pas configuré pour accepter le domaine ordi3.localdomain. Du coup il essaie de le renvoyer à l'extérieur. Sauf qu'en effet il n'y a pas d'entrée DNS "MX" pour le domaine "ordi3.localdomain".

Il faut configurer ordi3 pour accepter localement ce domaine "ordi3.localdomain", soit en faisant un alias sur cette adresse, soit en adaptant la valeur de "mydestination" dans main.cf ; cette dernière proposition est plus simple je trouve.

Hors ligne

#16 Le 27/02/2013, à 19:09

Pseudo supprimé

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

oui, c'est bien tout ça tongue, mais

Puis depuis ordi2, je récupère ces messages avec Thunderbird comme n'importe quel autre.
Pour résumer, je souhaite que xuo@ordi2 reçoivent un message système reçu par root/postfix/backuppc/...@ordi1 à travers mon réseau local.

Quel est vraiment l'objectif final ? J'ai dû mal à comprendre ...
a/ récupérer simplement les mails par un user sur la machine 2
b/ ou avoir un 2ème smtp mx sous le coude.

#17 Le 27/02/2013, à 19:45

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Titouan : l'objectif est probablement "a/" vu que ses serveurs SMTP n'écoutaient qu'en local jusqu'ici...

Hors ligne

#18 Le 27/02/2013, à 20:02

Pseudo supprimé

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

dans ce cas, il y avait aussi l'option d'installer roundcube, et c'est apache qui travaille au lieu de postfix. Le MUA se superpose au MDA; requêtes locales. Le client récupère ses mails via http.

#19 Le 27/02/2013, à 20:04

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

C'est quand même vachement plus compliqué... Il faut dans ce cas un MDA sur les deux ordis, un MUA qui tape sur les deux également, etc.

Et s'il s'agit de lire les mails de manière automatique et centralisée, c'est mort... smile

Dernière modification par tiramiseb (Le 27/02/2013, à 20:04)

Hors ligne

#20 Le 27/02/2013, à 20:13

Pseudo supprimé

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

non tout dégage sur la 2ème machine (MTA,MDA,MUA).
roundcube fait office de super MUA. Et c'est apache qui fait le boulot.
le client sur la deuxième machine a juste à taper http://1ermachine/roundube et récupére ses mails

#21 Le 27/02/2013, à 20:19

tiramiseb

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Je ne te suis pas.

Je suis en train de lui expliquer comment centraliser les e-mails de deux ordinateurs sur un seul, avec simplement la bonne configuration des MTA.

Toi tu dis qu'"il y a aussi l'option d'installer Roundcube" pour que "ce soit Apache qui travaille et non Postfix"... Donc un MTA et un MDA sur chacune des deux machines... Ou alors, si tu mets tout sur une seule des deux machines, il faut bien qu'un des MTA renvoie les mails à l'autre... et donc ton truc vient juste en complément de ce qu'on est en train d'expliquer...

Hors ligne

#22 Le 27/02/2013, à 20:55

xuo

Re : Rediriger les messages LOCAUX d'un ordi vers un autre ordi LOCAL.

Bonsoir,

En attendant, les dernières modifs MARCHENT !!!
Je vais tout réinstaller proprement, vérifier que tout marche bien comme je veux puis je publierai à nouveau les fichiers hosts et main.cf des 2 machines. Je pense faire ça ce week-end.

J'ai ajouté cela ce midi dans le main.cf de ordi3 :

# NOMS DE LA MACHINE ET DU DOMAINE
myhostname = ordi3.localdomain
mydomain = localdomain

# POUR L'ENVOI DU COURRIER
#myorigin = $myhostname

# POUR LA RECEPTION DU COURRIER
mydestination = $myhostname, localhost, ordi3

Je remercie plus particulièrement Tiramiseb pour son aide.
Titouan : ce que je veux faire est tout bête (encore que quand on voit la galère pour y arriver ...).
J'ai des logiciels sur ordi4 (mon serveur) qui peuvent m'envoyer des courriers (backuppc, fail2ban, ...). Je veux qu'ils me les envoient directement sur le pc qui est dans le salon, sans passer par Internet. Le serveur n'a pas d'interface graphique.
Pourquoi je ne veux pas passer par Internet ? Je me suis fait pirater le serveur il y a quelques jours. J'ai (ou plutôt ordi4, mais avec probablement mon nom dans le "From") a envoyé des milliers de spams. Free m'a bloqué une partie de ma connexion (http ou ftp, il fallait choisir), mes propres mails mettaient du temps à m'arriver. Donc, si ordi4 ne peut pas envoyer de message vers un utilisateur autre que local, cela ne m'empêchera pas de dormir.

Ceci dit, je souhaiterais installer un service de messagerie auto-hébergé sur ordi4 mais ce sera pour plus tard. Je ne suis pas au niveau. Il faut que je potasse de la doc (ou que j'embauche Tiramiseb).

Xuo.

Hors ligne