Aller au contenu

Configuration email — Délivrabilité veille appels à projets

Date : 2026-05-22
Statut : 🔄 En cours — ZeptoMail vérification domaine en attente


Problème de départ

Les emails de veille envoyés depuis bernardkanmdev@gmail.com via smtp.gmail.com arrivaient en courrier indésirable chez les destinataires @caritasbenin.org et @caritasbenin.com.

Causes identifiées : - Expéditeur = Gmail personnel → méfiance des serveurs d'entreprise - Tous les destinataires visibles dans le champ To: → pattern spam - Beaucoup d'URLs dans le corps (18 CFEIs) → score SpamAssassin élevé - Absence d'en-têtes professionnels (Precedence, Auto-Submitted, etc.)


Solutions appliquées (dans l'ordre)

✅ Étape 1 — En-têtes email et Bcc

Remplacé To: tous par To: expéditeur + Bcc: tous les autres.
Ajout des en-têtes : Precedence: bulk, Auto-Submitted: auto-generated, X-Mailer, List-Unsubscribe.

✅ Étape 2 — Création noreply@caritasbenin.com

Créé dans cPanel de Caritas. Credentials dans /home/kanmaber/.caritas_smtp_pass.
Résultat : BLOQUÉ — serveur cPanel retourne 550 This message was classified as SPAM.
Cause : filtre anti-spam sortant du serveur cPanel sur les mails avec beaucoup d'URLs. Pas accessible en tant qu'utilisateur cPanel (réglage serveur root uniquement).

✅ Étape 3 — Domaine tekdhi.dev + Zoho Mail + ZeptoMail

Domaine tekdhi.dev ✅

  • Acheté sur Cloudflare (12,20€/an), DNS géré par Cloudflare
  • Résolu : 178.105.46.57 (VPS Hetzner)

Zoho Mail ✅ (boîtes email consultables)

  • Domaine tekdhi.dev vérifié dans Zoho Mail
  • Boîtes créées : noreply@tekdhi.dev (super admin), contact@tekdhi.dev
  • MX Zoho ajoutés via Domain Connect automatique puis manuellement :
    MX tekdhi.dev  mx.zoho.com   priorité 10
    MX tekdhi.dev  mx2.zoho.com  priorité 20
    MX tekdhi.dev  mx3.zoho.com  priorité 50
    
  • DKIM Zoho Mail : zmail._domainkey.tekdhi.dev
  • SPF : v=spf1 include:zohomail.com ~all
  • Mot de passe app noreply@tekdhi.dev : /home/kanmaber/.zoho_smtp_pass
  • SMTP Zoho Mail bloqué : erreur 553 "Sender is not allowed to relay emails" vers destinataires externes — restriction relay Zoho Mail non contournable sans plan payant

ZeptoMail 🔄 (envoi transactionnel — EN COURS)

Service Zoho dédié à l'envoi transactionnel par scripts (gratuit, 10 000 emails/mois).

DNS ajoutés dans Cloudflare :

TXT   2292111._domainkey.tekdhi.dev  →  k=rsa; p=MIGfMA0GCSqGSIb3...
CNAME bounce-zem.tekdhi.dev          →  cluster89.zeptomail.com
DNS propagés et vérifiés ✅

Credentials SMTP ZeptoMail :

SMTP_HOST = "smtp.zeptomail.com"
SMTP_PORT = 587
SMTP_USER = "emailapikey"   ← username littéral, pas l'adresse email
SMTP_PASS = /home/kanmaber/.zeptomail_api_key
SMTP_SENDER = "noreply@tekdhi.dev"

État : domaine en attente de vérification dans l'interface ZeptoMail → erreur 553 encore présente.
Action restante : cliquer "Vérifier" dans ZeptoMail → relancer le script.


État actuel du script

Fichier : /home/kanmaber/scripts/veille_appels_projets.py

# Configuration actuelle (ZeptoMail)
SMTP_PASS   = Path("/home/kanmaber/.zeptomail_api_key").read_text().strip()
SMTP_HOST   = "smtp.zeptomail.com"
SMTP_PORT   = 587
SMTP_USER   = "emailapikey"
SMTP_SENDER = "noreply@tekdhi.dev"

Connexion SMTP dans envoyer_email() :

ctx = ssl.create_default_context()
with smtplib.SMTP(SMTP_HOST, SMTP_PORT) as s:
    s.starttls(context=ctx)
    s.login(SMTP_USER, SMTP_PASS)
    s.sendmail(SMTP_SENDER, DESTINATAIRES, msg.as_string())


Destinataires configurés (appels_projets_config.json)

"destinataires": [
  "bernardkanmdev@gmail.com",
  "kanmaber@gmail.com",
  "secretariat@caritasbenin.org",
  "raymond.goudjo@caritasbenin.org",
  "blandine.babadankpodji@caritasbenin.org",
  "brigitte.bonou@caritasbenin.com",
  "franck_morel.mehissou@caritasbenin.com",
  "oscar.adanho@caritasbenin.com"
]

Fichiers de credentials

Fichier Contenu Utilisé
/home/kanmaber/.himalaya_smtp_pass Mot de passe Gmail (ancien) ❌ Remplacé
/home/kanmaber/.caritas_smtp_pass MDP noreply@caritasbenin.com ⚠️ Bloqué par serveur
/home/kanmaber/.portail_onu_creds.json Login Portail ONU (Playwright) ✅ Actif
/home/kanmaber/.zoho_smtp_pass App password noreply@tekdhi.dev (Zoho Mail) ⚠️ Relay bloqué
/home/kanmaber/.zeptomail_api_key Clé API SMTP ZeptoMail 🔄 En cours

Architecture email finale cible

noreply@tekdhi.dev  →  ZeptoMail SMTP  →  destinataires (SPF + DKIM valides)
contact@tekdhi.dev  →  Zoho Mail       →  consultable webmail (mail.zoho.com)

DNS tekdhi.dev — état complet

# Vérifier l'état
dig MX tekdhi.dev +short
dig TXT tekdhi.dev +short
dig TXT zmail._domainkey.tekdhi.dev +short
dig TXT 2292111._domainkey.tekdhi.dev +short
dig CNAME bounce-zem.tekdhi.dev +short

# Vider le cache et tester
echo "[]" > /home/kanmaber/scripts/appels_projets_cache.json
python3 /home/kanmaber/scripts/veille_appels_projets.py