J’avais une « erreur » de génération du fichier JSON qui ne se créait pas une fois le mois passé - donc il manquait des jours de stats - par exemple si j’étais passé sur la page DMARC le 25 du mois.
C’est ce que je voulais faire (et qui est toujours actif) pour pas que le fichier JSON soit régénéré à chaque chargement de page du tableau HTML des rapports DMARC - des mois précédents.
J’ai ajouté une vérification pour que le fichier soit régénéré même le mois d’après (pour avoir les stats du mois complet).
PS : J’ai laissé en commentaire la ligne 531 : qui génère le fichier à chaque fois et modifié la vérification en ligne 535.
Note de Moi-même : L’intégration finale du tableau HTML des rapports DMARC sur mon site web est cette page écrite en Français | English | Español | العربية
NdMoi-même 20220710 : J’ai modifié le code PHPsource avec une demande de FQDN (Fully Qualified Domain Name) dans la visualisation des rapports mensuel - Pour avoir leur FQDN du mois courant - au cas où ils changeraient de nom - tous les mois - ou qu’ils couperaient leur serveur
Note de Moi-même 20220709 18h05 : Archives de fichiers GeoIP*.dat à mettre dans le répertoire /usr/share/GeoIP/ - Sauvegarder votre répertoire s’il contient déjà des fichiers
Dézipper le fichier comme cela : tar -xvf /home/orj/GeoIP-LAB3W.tar.gz -C /root/ pour le décompresser dans le répertoire /root/.
Je ne trouve pas de fichier GeoIPISP.dat valide - On peut le générer avec la commande /usr/lib/geoip/geoip-generator du paquet geoip-bin je crois depuis un CSV ? Comment-faire ?
Donc, ci-joint un essaie, le code PHPsource d’une API cliente RESTful pour lire le fichier au format JSON pour afficher la ressource serveur sur un autre site web (le client) - En Cross-origin resource sharing - par exemple d’ici - C’est en JS (JavaScript) - je n’aime pas trop . Il faudrait faire un client en PHP curL sur requête POST ce serait mieux - bien gérer l’authentification du client en POST toujours, le jeton (token) d’accès, le refresh etc…
API (Application Programming Interface ) est un ensemble normalisé de classes, de méthodes, de fonctions et de constantes qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels.
CORS (Cross-Origin Resource Sharing) (littéralement « partage de ressources entre origines multiples ») est un mécanisme qui permet à des ressources restreintes d’une page web d’être récupérées par un autre domaine extérieur au domaine à partir duquel la première ressource a été servie.
C’est en développement côté serveur et client - çà va prendre du temps de bien tout sécuriser.
J’ai ajouté sur l’API serveur une authentification et ai créé un compte BETA-TESTEURS - qui peut utiliser l’application depuis n’importe quelle origine de sites/serveurs Web - pour qui, pour que vous puissiez récupérer le(s) JSON « normalement/facilement/fonctionnellement ».
Bonne journée, bon courage, bonnes vacances.
Note de Moi-même :
Qui me donnerait une URL de ses rapports d’analyse - en se créant un serveur API JSON de son côté ? Pour cumuler les « statistiques des adresses IP des serveurs mails d’usurpateurs de chacun de nous » Et faire, donc, une grande base de données internationale d’usurpateurs d’identité La première -
I’m sorry to have to inform you that your message could not
be delivered to one or more recipients. It’s attached below.
For further assistance, please send mail to postmaster.
If you do so, please include this problem report. You can
delete your own text from the attached returned message.
The mail system
address_mail@gmail.com: host gmail-smtp-in.l.google.com[142.251.16.26] said:
550-5.7.1 [158.69.126.137 18] Our system has detected that this
message is 550-5.7.1 likely suspicious due to the very low reputation of
the sending IP 550-5.7.1 address. To best protect our users from spam, the
message has been 550-5.7.1 blocked. Please visit 550 5.7.1 Why has Gmail blocked my messages? - Gmail Help for more information.
6-20020a05621420e600b004737906ac89si6565856qvk.438 - gsmtp (in reply to end
of DATA command)
Final-Recipient: rfc822; address_mail@gmail.com
Original-Recipient: rfc822;address_mail@gmail.com
Action: failed
Status: 5.7.1
Remote-MTA: dns; gmail-smtp-in.l.google.com
Diagnostic-Code: smtp; 550-5.7.1 [158.69.126.137 18] Our system has
detected that this message is 550-5.7.1 likely suspicious due to the very
low reputation of the sending IP 550-5.7.1 address. To best protect our
users from spam, the message has been 550-5.7.1 blocked. Please visit 550
5.7.1 Why has Gmail blocked my messages? - Gmail Help for more information.
6-20020a05621420e600b004737906ac89si6565856qvk.438 - gsmtp
Return-Path: address_mail@lab3w.fr
Received: from localhost (ip6-localhost [IPv6:::1])
by mail.zw3b.net (Postfix) with ESMTP id 1DC8A5650CC
for address_mail@gmail.com; Mon, 8 Aug 2022 14:02:13 +0200 (CEST)
Received: from mail.zw3b.net ([IPv6:::1])
by localhost (mail.zw3b.net [IPv6:::1]) (amavisd-new, port 10032)
with ESMTP id LxM5Uzfd3R-t for address_mail@gmail.com;
Mon, 8 Aug 2022 14:02:07 +0200 (CEST)
Received: from localhost (ip6-localhost [IPv6:::1])
by mail.zw3b.net (Postfix) with ESMTP id 75DC45650D0
for address_mail@gmail.com; Mon, 8 Aug 2022 14:02:07 +0200 (CEST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.zw3b.net 75DC45650D0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lab3w.fr;
s=D169D816-836E-11EC-0000-F2FADF2C65F6; t=1659960127;
bh=OZ/pG1T0eII60+331pet61zTvvsJYp0uhNIl8eSs/po=;
h=Message-ID:Date:MIME-Version:From:To;
b=ooaHSxqleiN8i1eX8wgyD3Ckqaxut7+BRq05YN3zfptBP7plBxzYhAdV0hZjZLbsP
JCAMeiZlD/dJExwo5VEDAT3r5QvwQmnR2rjBw5/TOOMN63bi/Y6INR64z9DXQNu+aC
ywCNCYXW+Q0BJWBKIUoGCZLs581RPPT3MpzzFJOJ/fpU2wSZln7+8eP1AUWDCyswZ9
4HeNzFx3uNU2/lF3iJegTTKVjqREZyfjh2hjy8rDH2Fpeu7Ud/QL5Hf0BYSyYj0xe5
Q7vK9TjaBCzZVM3wkulufb9phpxUpYhU9j4dL2bVOLGZ9jZ3UHdGg76SIG60Za3WJW
dLKtoVFY9Rmyw==
X-Virus-Scanned: amavisd-new at zw3b.net
Received: from mail.zw3b.net ([IPv6:::1])
by localhost (mail.zw3b.net [IPv6:::1]) (amavisd-new, port 10026)
with ESMTP id 8sIoKCqiUQaQ for address_mail@gmail.com;
Mon, 8 Aug 2022 14:02:06 +0200 (CEST)
Received: from [IPV6:2607:5300:60:9389:58:eeee:ffdd:1678] (unknown [IPv6:2607:5300:60:9389:58:eeee:ffdd:1678])
by mail.zw3b.net (Postfix) with ESMTPSA id 803AD5650CC
for address_mail@gmail.com; Mon, 8 Aug 2022 14:01:27 +0200 (CEST)
Content-Type: multipart/alternative;
boundary="------------f8qCs8gsFLfKH6nGxN7lPWzX"
Message-ID: 4cfabf3b-dbe6-a456-ffb4-fe55d02c2508@lab3w.fr
Date: Mon, 8 Aug 2022 14:00:57 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.12.0
Content-Language: fr
From: « O.Romain.Jaillet-ramey » address_mail@lab3w.fr
To: address_mail@gmail.com
Subject: Solution pour « File Transfert » - Ile Maurice
C’est quoi que tu ne comprends pas dans cette ligne ?
Problème de DNS sur le sous-domaine pour le mail …
Après en étant listé chez UCEProtect … pas de bol c’est rat pour faire délister si t’arrive en niv2 chez eux, mais c’est sans doute l’AS de ton provider qui est listé et là ce sera plus compliqué …
J’ai remarqué aussi que tout le bloc IPv6::/32 du mon FAI OVH est black-listé : ce block 2607:5300:0:0:0:0:0:0/32
CF :
Votre adresse IP est dans une plage qui a été bloquée sur tous les wikis de la Fondation Wikimédia.
Le blocage a été réalisé par Trijnstel (meta.wikimedia.org). Le motif fourni est Open proxy: abused proxy by LTAs and spambots - should you be affected by this block, please email stewards (at) wikimedia (dot) org.
Début du blocage : 1 juin 2018 à 09:49
Expiration du blocage : 1 juin 2023 à 09:49
Le champs MX ne doit pas être positionné sur ton domaine mais sur ton sous-domaine si c’est lui qui émet les mails et porte le reverse DNS en acord avec le hostname qui envoi les mails.
En gros ton MX semble (c’est même sûr) positionné sur le mauvais enregistrement DNS.
Le bloc IPV4 est listé chez UCE Protect … change de provider pour les mails.
AH bon… J’ai toujours mis le champ MX sur le domaine moi
Comme cela : @ 3600 IN MX 10 mail.zw3b.net.
Avec cela :
mail 3600 IN A 158.69.126.137
mail 3600 IN AAAA 2607:5300:0060:9389:0017:0004:0000:0001
je ne crois pas pouvoir faire çà en plus :
mail 3600 IN MX 10 158.69.126.137
mail 3600 IN MX 10 2607:5300:0060:9389:0017:0004:0000:0001
Cà m’étonne.
C’est bien cela - Nop :
/etc/bind/masters/zw3b.net.hosts:42: warning: '158.69.126.137': MX is an address
/etc/bind/masters/zw3b.net.hosts:43: warning: '2607:5300:0060:9389:0017:0004:0000:0001': MX is an address
/etc/bind/masters/zw3b.net.hosts:43: warning: 2607:5300:0060:9389:0017:0004:0000:0001.zw3b.net: bad name (check-names)
zone zw3b.net/IN: mail.zw3b.net/MX '158.69.126.137.zw3b.net' is a CNAME (illegal)
zone zw3b.net/IN: mail.zw3b.net/MX '2607:5300:0060:9389:0017:0004:0000:0001.zw3b.net' is a CNAME (illegal)
;------------------------------
; MX
;------------------------------
@ 3600 IN MX 10 mail.zw3b.net.
w1a 3600 IN MX 50 mail.zw3b.net.
;mail 3600 IN MX 10 158.69.126.137
;mail 3600 IN MX 10 2607:5300:0060:9389:0017:0004:0000:0001
mail 3600 IN A 158.69.126.137
mail 3600 IN AAAA 2607:5300:0060:9389:0017:0004:0000:0001
imap 3600 IN CNAME mail.zw3b.net.
pop 3600 IN CNAME mail.zw3b.net.
smtp 3600 IN CNAME mail.zw3b.net.
webmail 3600 IN A 158.69.126.137
webmail 3600 IN AAAA 2607:5300:0060:9389:0015:0001:0000:0001
Il faut que tu corriges le problème de DNS. Met aussi dans le domaine un enregistrement SPF, ça ne mange pas de pain, et Gmail, ce ne sont pas les rois du mail en termes de sécurité.
Pour retirer le blacklist, il y a une procédure normalement c’est obligatoire pour celui qui blacklist de donner clairement la procédure pour gérer.
Et comme cela a été dit, OHV en réputation pour la messagerie c’est vraiment la loose. La plupart de nos client ont tous retiré leurs serveurs de messageries de OVH.
;------------------------------
; MX
;------------------------------
;@ 3600 IN MX 10 mail.zw3b.net.
@ 3600 IN MX 10 smtp.zw3b.net.
;mail 3600 IN A 158.69.126.137
;mail 3600 IN AAAA 2607:5300:0060:9389:0017:0004:0000:0001
smtp 3600 IN A 158.69.126.137
smtp 3600 IN AAAA 2607:5300:0060:9389:0017:0004:0000:0001
mail 3600 IN MX 10 smtp.zw3b.net.
imap 3600 IN CNAME mail.zw3b.net.
pop 3600 IN CNAME mail.zw3b.net.
;smtp 3600 IN CNAME mail.zw3b.net.
;------------------------------
; SPF
;------------------------------
@ 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
@ 10800 IN TXT "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
w1a 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
w1a 10800 IN TXT "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
; JE VIENS D'AJOUTER CELA
smtp 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
smtp 10800 IN TXT "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
mail 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
mail 10800 IN TXT "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
On test :
12:08:02 root@lv1.dns:~ # named-checkzone zw3b.net /etc/bind/masters/zw3b.net.hosts
zone zw3b.net/IN: loaded serial 2022080901
OK
Je signe la zone et j’attends de voir si tout est buggué
Je me suis toujours dis qu’il y avait une erreur sur cet outil de MXToolbox : mx:mail.zw3b.net (je me trompe )
Pour les SPF @Zargos :
il faut que - pour le domaine principal - par exemple un utilisateur qui veut envoyer un mail avec son adresse « email@domain.com »
il faut ce champ SPF et TXT :
@ 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
Pour le sous-domaine d’envoie par exemple newsletter.domain.com - un utilsateur qui veut envoyer un mail avec l’adresse www-data@newsletter.domain.com :
il faut un SPF pour lui (politique DMARC) - parce que c’est ce serveur qui envoie les mails lui qui est dans les DKIM-signature.
newsletter 10800 IN SPF "v=spf1 ip4:158.69.126.137/32 ip6:2607:5300:60:9389:17:4:0:1/124 ~all"
t= flag, représentés sous la forme d’une liste de noms séparés par deux-points (texte brut ; FACULTATIF, par défaut, aucun drapeau n’est défini). Les fanions non reconnus DOIVENT être ignorés. Les drapeaux définis sont les suivants :
y
Ce domaine teste DKIM. Les vérificateurs NE DOIVENT PAS traiter les messages des signataires en mode test différemment des e-mails non signés, même si la signature n’est pas vérifiée. Les vérificateurs PEUVENT souhaiter suivre les résultats du mode de test pour aider le signataire.
s
Tous les champs d’en-tête DKIM-Signature utilisant la balise « i= » DOIVENT avoir la même valeur de domaine à droite du « @ » dans la balise « i= » et la valeur de la balise « d= ». Autrement dit, le domaine « i= » NE DOIT PAS être un sous-domaine de « d= ». L’utilisation de cet indicateur est RECOMMANDÉE sauf si un sous-domaine est requis.
Tous les champs d’en-tête DKIM-Signature utilisant la balise « i= » DOIVENT avoir la même valeur de domaine à droite du « @ » dans la balise « i= » et la valeur de la balise « d= ».
Autrement dit, le domaine « i= » NE DOIT PAS être un sous-domaine de « d= ». L’utilisation de cet indicateur est RECOMMANDÉE sauf si un sous-domaine est requis.
Donc, si je configure mon champ DNS DKIM comme cela :
selector._domainkey.mailing IN TXT ( "v=DKIM1; k=rsa; t=s; d=mailing.domain.tld" "p=clef")
il faut que les mails soient signés avec - et cela dans la DKIM-Signature - avec un header.i=email@mailing.domain.tld ou simplement un header.i=@mailing.domain.tld je crois