feat: métadonnées étendues (author, revisions), migration BDD → fichiers

This commit is contained in:
Cedric Abonnel
2026-05-08 22:49:51 +02:00
parent fd3fced0d8
commit a36d7ede76
111 changed files with 4860 additions and 70 deletions
@@ -0,0 +1,39 @@
Pour rejeter les mails en fonction des erreurs SPF, tu peux te baser sur les mots-clés dans l'en-tête `Received-SPF`. Voici les **valeurs possibles** et **leurs significations**, ainsi que les **mots-clés à filtrer pour rejet** :
---
### SPF Return Codes dans `Received-SPF` :
| Code SPF | Signification | Rejet conseillé ? |
| ----------- | -------------------------------------------------------------------------------- | ----------------- |
| `Pass` | Le domaine autorise cette IP à envoyer des mails | ❌ Ne pas rejeter |
| `Fail` | L'IP nest **pas autorisée** par le domaine | ✅ Oui |
| `Softfail` | L'IP **nest probablement pas autorisée** | ⚠️ Optionnel |
| `Neutral` | Aucune politique définie | ❌ Non |
| `None` | Pas denregistrement SPF trouvé | ⚠️ Optionnel |
| `Permerror` | Erreur **permanente** dans l'enregistrement SPF (ex. : boucle, mauvaise syntaxe) | ✅ Oui |
| `Temperror` | Erreur **temporaire** (serveur DNS inaccessible, timeout) | ⚠️ Optionnel |
---
### Mots-clés à filtrer pour **rejet automatique** :
```text
Received-SPF: Fail
Received-SPF: Permerror
```
Tu peux aussi inclure `Softfail` si tu veux durcir le filtrage, mais attention aux faux positifs.
---
### Exemple de règle dans Postfix (avec `header_checks`) :
```text
/^Received-SPF: Fail/ REJECT SPF Fail - IP non autorisée
/^Received-SPF: Permerror/ REJECT SPF Permerror - SPF malformé
```
Ou via **SpamAssassin** :
* Rejeter les mails avec score élevé si `SPF_FAIL` ou `SPF_PERMERROR` est détecté.
@@ -0,0 +1,11 @@
{
"uuid": "83cabd62-617e-418c-a890-76e205bf5551",
"slug": "rejet-des-mails-avec-l-en-tete-received-spf",
"title": "Rejet des mails avec l'en-tête Received-SPF",
"author": "",
"published": false,
"published_at": "2025-05-20 16:46:00",
"created_at": "2025-05-20 16:46:00",
"updated_at": "2025-05-20 14:49:47",
"revisions": []
}