OVH Community, votre nouvel espace communautaire.

serveur web et mails séparés, problème dkim pour le serveur web


jeromefabre
06/08/2014, 23h21
domaine virtuel, il fallait donc le supprimer de la base de données... Ça marche. Merci de la piste elle était bonne.

jeromefabre
06/08/2014, 22h58
déjà passé par là... pas simple. J'y retourne.

Nowwhat
06/08/2014, 21h35
Pas simple au début, mais ta bible est ici: http://postfix.traduc.org/index.php/...ON_README.html

jeromefabre
06/08/2014, 21h30
OK je vais voir plus simplement $mydomains?

jeromefabre
06/08/2014, 21h28
C'est ce que j'ai voulu lui expliquer tout l'après midi en lui parlant de relay et de transport.... Mais j'ai pas du être assez clair.
Oui j'ai bien relancé postfix après chaque modif.

Nowwhat
06/08/2014, 20h51
En mots simples:
Ce serveur mail (lui sur le serveur web) ne doit pas avoir de notion qu'il "gère" un domaine (qu'il gère "localhost" - c'est tout - pas plus) et ce serveur doit être programmé pour qu'il "relay" toutes les mails vers ton "vrai serveur mail" sur l'autre serveur.
Sur ce vrai serveur mail mail il y a les boites 'locales' (les domaines qu'il gère) et la reste part ')à la poste' ailleurs.

jeromefabre
06/08/2014, 20h06
Bon je me suis dépatouillé et ça fonctionne. Me reste un problème majeur pour lequel je ne trouve pas de solution;
Le serveur doit envoyer un mail vers un utilisateur qui a une adresse du même domaine. Il me semble avoir correctement configuré les dns et pourtant postfix sur le serveur web cherche la boite localement (et ne la trouve pas) et ne va pas chercher à l'envoyer vers le second serveur. commend lui faire comprendre?

jeromefabre
30/07/2014, 12h54
Je n'arrive pas à utiliser phpmailer;
"Must issue a STARTTLS command first"

jeromefabre
29/07/2014, 19h31
Oui je sens bien que c'est de ce côté là que ça pêche. C'est les CMS qui m'ont valu quelques soucis précédemment.

laurentm
29/07/2014, 18h54
Postfix est très très bien sécurisé, mais c'est tout ce qui tourne autour des CMS, PHP, et bases de données qui comporte quantité de failles.
Pour ma part, je n'aime pas trop l'authentification des clients SMTP sur port 587 (trop souvent bloqué), je préfère carrément connecter en VPN (PPTP ou IPSEC) tous les clients !

jeromefabre
29/07/2014, 17h47
Bon OK OK je vais m'appliquer à faire des choses propres et on va arrêter de se faire peur.

Nowwhat
29/07/2014, 16h16
Citation Envoyé par jeromefabre
...
Dans cette voie, je vais pouvoir couper postfix sur mon serveur web?(et perdre tout intérêt pour les spammeurs qui cherchent des hôtes?)
Probablement pas.
Un "serveur" possède beaucoup des sources qui envoient des mails vers 'root' etc (cron, fail2ban, monit, etc etc etc) - il faut quand même continuer à recevoir ces messages.

Puis, le jour qu'on "casse" tes scripts web, et il n'y pas de serveur mail, et bien, le hackeur va vite installer 'postfix' (pire: qmail) ou autre MTA au choix.
Soit il utilise ton serveur pour DDOS un peu partout ..... d'un manière ou autre: c'est fin i pour ton serveur après.

jeromefabre
29/07/2014, 16h01
OK, merci.
Pour le serveur mail, j'utilise déjà le port 587 avec mes clients donc si je te suis c'est bien parti. Ai jeté un œil sur des exemples d'utilisation de phpmailer et j'y ai vu ce qui ressemble de près à la conf d'un client mail; user pass.... Effectivement il semble que ça va être ma solution.
Dans cette voie, je vais pouvoir couper postfix sur mon serveur web?(et perdre tout intérêt pour les spammeurs qui cherchent des hôtes?)

Nowwhat
29/07/2014, 15h19
Citation Envoyé par jeromefabre
.... C'est propre. Mon problème est que mon site doit aussi envoyer des mails par scripts php. J'ai beau batailler je n'arrive pas à configurer dkim sur ce serveur web de manière à ce que les mails envoyés par script php soient correctement signés.
Quelqu'un connaît une solution?
Je pense qu'il existe plusieurs solutions vu la liste des paramétrés quand on regarde
man opendkim.conf
et
man
opendkim

Le plus simple:
Ton serveur "web", va utiliser le serveur "mail" pour envoyer des mails.
Tout d'abord, le serveur "mail" doit savoir qu'il gère les mails pour le domaine, géré par le serveur "web".

Paramètre ensuite le serveur web, la partie 'mail' dans PHP ensuite comme ça:
SURTOUT pas utiliser la fonction mail() ..... (de toute façon, évite cette fonction TOUJOURS, n'importe où ...)
Utilise l'envoi de mail par "submission" (une sorte de smtp). Ton serveur "web" va déposer le mail sur le serveur "mail" comme un client mail (Outlook, Thunderbird) sur ton PC.
Paramètre donc PHP comme ça:
smtp.ton-serveur-mail.tld
porte 587
Active aussi l'option "authentification" et renseigne le login (un adresse mail) et le mot de passe. Souvent ça sont les même que l'accès POP.

Je pense que coté DKIM t'as rien d'autre à faire - il saura que le mail est déposé sur le serveur par une connexion "authentifié", il ne va donc pas traitre ce mail comme "arrivé, venant de l"extérieur" mais comme "mail a expédier, donc DKIM à ajouter".

J'ai trafiqué mon DKIM conernant ce sujet justement hier soir, je me suis permis de modifier un peu le code (du C pure, le bonheur total) pour voir comment ça marche.

Voici une exemple des logs: http://pastebin.com/abUiwTjV
1) Depuis ma connexion adsl (Orange) mon client mail "Outlook" se connecte sur la porte 587 de mon serveur mail.
2) opendmarc détecte directement que c'est un mail pour 'envoyer' (car entrée par la porte "submission") donc il ne fait plus rien .... (ce ligne s'affiche depuis que j'ai patch opendmarc pour qu'il me affiche ça)
3) on retrouve mon SASL login (avec mon adrese mail ....)
4)
5) dk-filter ajoute son grain de sable
6) jusqu'à 11) C'est ici qu'on constate que opendkim sais que c'est un mail "interne", et qu'il ajoute son bagage ..

(Mon serveur mail - et donc DKIM - supporte 5 nom des domaines différent - qui opèrent sur 4 IPv4 et autant d'IPv6 différent)

La suite est le train-train normal:
Mon mail est filtré par l'anti spam/virus (oui, aussi les mails sortent)
GMail est contacté .... sur un IPv6 - et Gmail réfuse ... pas grave, une deuxieme tentative est lancé sur son IPv4 - et ça marche ....

Inutile de dire: ton serveur mail doit avoir le submision (porte '587') activé.

Citation Envoyé par jeromefabre
question subsidiaire:
Étant un peu faignant, je ne me suis jamais vraiment intéressé à phpmailer. Cette solution me permettrait-elle de me connecter au serveur mail par smtp pour envoyer mais mails du site, signés du coup par le serveur web?
(sachant que ça contournerait mon problème et que je préférerais résoudre mon problème.).
Yep, t'as tout compris.
DE-intresse toi totalement avec la fonction mail().
phpmailer est ce qu'il te faut.

Car un "site web + phpmailer" est exactement la même chose qu'un "client mail chez toi sur un PC".
Toutes les deux, ils peuvent déposer un mail sur ton serveur mail.

jeromefabre
29/07/2014, 11h52
Bonjour,

Pour un même domaine, j'envoie les mails depuis un serveur, et j'héberge le site web sur un autre serveur. Les deux serveurs en release 3 ovh.
Les mails envoyés par le serveurs mails sont bien signés avec dkim. C'est propre. Mon problème est que mon site doit aussi envoyer des mails par scripts php. J'ai beau batailler je n'arrive pas à configurer dkim sur ce serveur web de manière à ce que les mails envoyés par script php soient correctement signés.
Quelqu'un connaît une solution?

question subsidiaire:
Étant un peu faignant, je ne me suis jamais vraiment intéressé à phpmailer. Cette solution me permettrait-elle de me connecter au serveur mail par smtp pour envoyer mais mails du site, signés du coup par le serveur web?
(sachant que ça contournerait mon problème et que je préférerais résoudre mon problème.).