Configurer un relais SMTP sécurisé et efficace sous Linux est une tâche importante qui demande une attention particulière à la sécurité, à la performance et à la simplicité d'administration. Voici des éléments clés pour vous aider à faire un choix et configurer votre serveur.
---
Serveurs SMTP recommandés sous Linux
1. Postfix :
- Avantages :
- Connu pour sa sécurité robuste grâce à une conception modulaire.
- Performance élevée, capable de gérer un grand volume d'emails.
- Documentation abondante et communauté active.
- Facile à configurer pour des cas d'usage courants, comme un relais SMTP.
- Cas d'usage :
- Idéal pour des environnements nécessitant **fiabilité et performance**.
- Recommandé pour les débutants grâce à une syntaxe de configuration relativement simple.
2. Exim :
- Avantage :
- Très flexible et hautement configurable.
- Convient aux configurations complexes grâce à une riche capacité de personnalisation.
- Inconvénients :
- Configuration plus complexe, ce qui peut le rendre moins adapté aux débutants.
- Cas d'usage :
- Idéal si vous avez besoin d'une configuration très spécifique ou complexe.
Recommandation : Pour un relais SMTP sécurisé et efficace en production, Postfix est généralement le meilleur choix en raison de sa simplicité et de sa sécurité.
---
Bonnes pratiques pour configurer un relais SMTP sécurisé
1. Authentification et chiffrement
- Activer l'authentification SMTP :
- Configurez le serveur pour exiger une authentification avant d'envoyer des emails.
- Utilisez SASL (Simple Authentication and Security Layer) avec des comptes utilisateur pour l'authentification.
- Configurer TLS (Transport Layer Security) :
- Assurez-vous que toutes les connexions SMTP utilisent le chiffrement TLS pour protéger les données en transit.
- Utilisez des certificats valides (ex. : Let’s Encrypt).
2. Protection contre les abus
- Restreindre l'accès au relais :
- Limitez l'accès en configurant une liste blanche (adresses IP autorisées) si possible.
- Utilisez des règles d'accès dans Postfix via `smtpd_recipient_restrictions`.
- Limiter le trafic sortant :
- Configurez des quotas pour éviter que votre serveur soit utilisé pour envoyer des spams.
- Activer SPF, DKIM et DMARC :
- Configurez ces mécanismes pour réduire le risque que vos emails soient marqués comme spam.
3. Surveillance et journalisation
- Activez une journalisation détaillée des emails envoyés et reçus.
- Configurez des outils comme Fail2Ban pour surveiller les tentatives de connexions non autorisées.
4. Tests et maintenance
- Testez votre configuration avec des outils comme mail-tester.com pour vérifier la délivrabilité et la configuration DNS (SPF/DKIM/DMARC).
- Mettez à jour régulièrement votre serveur et vos logiciels pour inclure les derniers correctifs de sécurité.
---
Exemple de configuration avec Postfix
Voici un aperçu des fichiers à configurer :
1. `/etc/postfix/main.cf` :
```plaintext
myhostname = smtp.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all
mydestination = localhost
relayhost = [smtp-relay.example.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = encrypt
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
```
2. Créer le fichier `/etc/postfix/sasl_passwd`(contenu) :
```plaintext
[smtp-relay.example.com]:587 username:password
```
Puis générez une base de données avec :
```bash
postmap /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd*
```
3. Redémarrer Postfix :
```bash
systemctl restart postfix
```
---
Outils complémentaires
- Rspamd : Une solution anti-spam légère pour Postfix.
- Mailhog ou Postfix relay via SES : Si vous testez ou envoyez en grand volume via un fournisseur comme AWS.
N'hésitez pas à partager vos besoins spécifiques pour affiner davantage la configuration