• Serveurs
  • [Discussion] Installer un serveur de mail avec Postfix et Dovecot

@LuffyyffuL : si tu as ce message d'erreur ça va dire que tu n'es pas correctement authentifié auprès du serveur mail, j'ai mis cette directive afin de bloquer les mails falsifiés, pour ne pas qu'un compte se fasse passer pour un autre (en ayant la validation DKIM...etc). Donc je te conseil de la remettre et de corriger tes paramètres rainloop. L'image docker a aussi cette directive, personne a jamais eu de soucis à ce niveau.

EDIT:

Il y a une erreur dans le tuto, remplace :
smtpd_sender_login_maps = mysql:/etc/postfix/mysql/mysql-sender-login-maps.cf
par :
smtpd_sender_login_maps = mysql:/etc/postfix/mysql-sender-login-maps.cf
Et ça devrait être bon. Petit loupé de ma part, j'avais mis tous les fichiers de conf mysql dans un répertoire mysql dans la conf docker mais pas dans ce tuto, d'où l'erreur.
Bonjour,

Merci beaucoup pour vos réponses rapides.

J'ai corrigé le chemin du fichier "mysql-sender-login-maps.cf" et, décommenté le paramètre "reject_sender_login_mismatch", mais je rencontre toujours le souci.

J'ai été voir dans le panneau d'administration de Rainloop afin de voir si je m'authentifiais bien mais, à par cocher la case "Utiliser l'authentification" dans les paramètres du domaine déclaré, je ne vois rien d'autre.

* Log *
Unauthenticated email from MON_DOMAINE is not accepted due to domain's 550-5.7.1 DMARC policy.
EDIT :

C'est tout bon, j'avais oublié d'enlever mon commentaire après la ligne "reject_sender_login_mismatch"
11 jours plus tard
Salut

Pour les personnes intéressé moi j’utilise ce code, car j'ai plusieurs domaines et utilisateurs

# Mise à jour des règles de spamassassin
20 02 * * * /usr/bin/sa-update

# Auto-apprentissage de spam assassin
*/10 * * * * /usr/bin/sa-learn --ham /var/mail/vhosts/*/*/mail/cur/*
*/10 * * * * /usr/bin/sa-learn --spam /var/mail/vhosts/*/*/mail/.Junk/cur/*
Attention */10 scan mes mails tous les 10 min
Bon, j'ai fais un Ctrl+F sur chaque page (38) au cas où parce que vu la masse à lire.

Alors pour le serveur mail en lui-même, j'ai rien à redire, le tuto est propre, bien présenté et clair. L'imbrication des différents "briques" logicielle (dovecot, clawAV, postfix etc) fait sens et les annexes sont très utiles (certificat let's encrypts etc) ainsi que les maintenances "automatiques".

J'ai cependant un problème sur certains mails (à la vue des logs) et je pense que le serveur est un peu trop restrictif, ce qui me dérangeait pas avant, mais comme la CAF se fait bounce, j'me dis qu'il faudrait régler ça

Donc, mes logs :
Oct  2 06:40:00 mail postfix/smtpd[28095]: NOQUEUE: reject: RCPT from e143.emailing.caf.fr[185.12.205.172]: 450 4.7.1 Session encryption is required; from=<contact@emailing.caf.fr> to=<mon@adresse.com> proto=ESMTP helo=<e143.emailing.caf.fr
Après je pense que le serveur qui m’envoie un mail doit respecter une certaine compatibilité et n'encrypte pas la session correctement. Parce que quand je reçois des mails de "grand prestataire mail" aka Google ou Hotmail (ou même numéricable ou autre) ça passe sans problème, je reçois ^^

Donc voilà, si il existe une solution qui ne baisse pas la "sécurité" (serveur mail c'est sensible et tu es vite blacklist).

Au passage, j'ai aussi du parasite :
Oct  2 07:04:54 mail postfix/smtpd[29203]: NOQUEUE: reject: RCPT from unknown[117.3.65.25]: 450 4.7.1 Session encryption is required; from=<mertz.marcel@mhXXXXXXer.de> to=<elopez@alfaXXXXXXXia.com> proto=ESMTP helo=<[117.3.65.25]>
Dans mes logs.

Bon après j'suis autodidacte et je m'intéresse pas mal à l'auto-hébergeur, mais ça veut pas dire que mes compétences sont très élevé dans le domaine du mailing ou autre, donc après quelques recherche non-fructueuse sur le web, j'viens quémander de l'aide
Hum normalement je force les connexions sécurisées uniquement pour la récupération des emails (IMAP), pour tout ce qui est échange de MTA à MTA par SMTP, normalement il y a un fallback en clair dans le cas où le serveur n'a pas pu établir de connexion sécurisée avec l'autre serveur de mail. Je vais rejeter un oeil à la conf du tuto au cas où.

EDIT:

Je confirme, pas de forcing en SMTP, vérifie que tes directives sont bien définies sur may :
smtp_tls_security_level = may
smtpd_tls_security_level = may
Je vais regarder la doc de postfix par rapport à ton soucis tout de même.
Merci pour cette réponse rapide.

Alors pour le main.cf, les deux sont effectivement à =may

Par contre sur le master.cf, j'ai uniquement une occurrence :
  -o smtpd_tls_security_level=encrypt
Cela provient de là ?
Normalement non puisque le serveur de la CAF devrait passer par le port 25, pas 587 mais essaye tout de même. Si ça vient de là leur serveur est carrément mal configuré Si déjà il communique pas de manière sécurisée et qu'en plus il passe par le port submission... c'est la totale.
Bon, j'essaye avec :
  -o smtpd_tls_security_level=may
  -o smtp_tls_security_level=may
sur le master.cf avec un restart postfix (et dovecot dans le doute).

Par contre c'est pas le seul où j'ai cette erreur. Généralement c'est des mails parasites, mais j'ai deux adresses (caf et une autre) que je sais legit, donc m'étonne que ça passe pas

Au vu des logs, ça retry dans la 10 mn (j'ai les logs qui pleure de bounce de mail de la caf).

Après, si Gmail passe sans problème, je pense que j'ai quand même bien config le truc, mais évitons les doutes !

EDIT : toujours l'erreur :
Oct  4 00:00:09 mail postfix/smtpd[28666]: NOQUEUE: reject: RCPT from mail156.atl121.mcsv.net[198.2.131.156]: 450 4.7.1 Session encryption is required; from=<bounce-mc.us8_31985511.204
-o smtp_tls_security_level=may
n'est pas utile dans le master.cf, le port submission est utilisé en écoute smtp[d]_tls_security_level (d comme daemon), mais pas en sortie.
Hardware wrote:
-o smtp_tls_security_level=may
n'est pas utile dans le master.cf, le port submission est utilisé en écoute smtp[d]_tls_security_level (d comme daemon), mais pas en sortie.
J'ai essayé quand même, dans le doute, normalement j'ai bien suivi le tuto, mais là je sèche et sur le net je trouve pas grand chose.
De toute façon ça peut pas venir de là puisque c'est pas submission (587) qui est utilisé, sinon tu aurais du avoir postfix/submission à place de postfix/smtpd au niveau de l'erreur dans les logs. ça vient forcément de SMTP (25), c'est vraiment bizarre, ça te le fait avec quel autres serveurs externes ?
Hardware wrote:De toute façon ça peut pas venir de là puisque c'est pas submission (587) qui est utilisé, sinon tu aurais du avoir postfix/submission à place de postfix/smtpd au niveau de l'erreur dans les logs. ça vient forcément de SMTP (25), c'est vraiment bizarre, ça te le fait avec quel autres serveurs externes ?
Alors déjà les deux en exemple (CAF, et le prestataire mcsv.net), mais aussi smartophone (mais comme c'est un importeur chinois, je pense que là ça vient d'eux).

Sinon pas de problème avec Numericable (étrangement), google, hotmail, amazon
Oct  4 00:06:15 mail postfix/smtpd[29289]: NOQUEUE: reject: RCPT from m50211.mail.qiye.163.com[123.125.50.211]: 450 4.7.1 Session encryption is required; from=<service@smartophone.com>
Oct  4 00:06:15 mail postfix/smtpd[29289]: NOQUEUE: reject: RCPT from mail61.atl161.mcsv.net[198.2.138.61]: 450 4.7.1 Session encryption is required; from=<bounce-mc.us3_25822007.765945-
Oct  4 00:07:58 mail postfix/smtpd[29338]: NOQUEUE: reject: RCPT from e143.emailing.caf.fr[185.12.205.172]: 450 4.7.1 Session encryption is required; from=<contact@emailing.caf.fr> 
Oct  4 00:08:36 mail postfix/smtpd[29338]: NOQUEUE: reject: RCPT from e64.emailing.caf.fr[185.12.205.93]: 450 4.7.1 Session encryption is required; from=<contact@emailing.caf.fr> 

La CAF insiste
Qu'est-ce que te renvoie la commande :
postconf -n | grep smtpd_tls_security_level
postconf -n | grep smtpd_tls_security_level
smtpd_tls_security_level = may
J'verrais la suite demain après le boulot, je sens le problème totalement random à trouver
J'ai plus trop d'idées.. essaye en commentant temporairement les directives *_restrictions dans main.cf... pour que le serveur prenne les valeurs par défaut. Tu peux aussi faire le test avec une adresse mail orange, il me semble que Orange ne chiffre pas non plus... (enfin c'était le cas il y a plus d'1 an).
Hardware wrote:J'ai plus trop d'idées.. essaye en commentant temporairement les directives *_restrictions dans main.cf... pour que le serveur prenne les valeurs par défaut. Tu peux aussi faire le test avec une adresse mail orange, il me semble que Orange ne chiffre pas non plus... (enfin c'était le cas il y a plus d'1 an).
La dernière idée est sans doute la bonne, j'ai reçu les mails de la CAF déjà

Alors mes restrictions :
#smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_recipient reject_unauth_destination reject_unknown_recipient_domain reject_rbl_client zen.spamhaus.org
#smtpd_helo_restrictions = permit_mynetworks permit_sasl_authenticated reject_invalid_helo_hostname reject_non_fqdn_helo_hostname reject_unknown_helo_hostname
#smtpd_client_restrictions = permit_mynetworks permit_inet_interfaces permit_sasl_authenticated reject_plaintext_session reject_unauth_pipelining
#smtpd_sender_restrictions = reject_non_fqdn_sender reject_unknown_sender_domain reject_sender_login_mismatch
Peut être un peu trop violent pour certains expéditeurs ?

Le plus drôle, c'est que les mails arrivent quand même à la bonne date, et pas tous à aujourd'hui !
Ok donc je te propose d'utiliser les règles que j'avais faites pour mon image docker, elles sont un poil moins restrictives mais plus cohérentes :
smtpd_relay_restrictions=
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination

smtpd_sender_restrictions=
    reject_non_fqdn_sender,
    reject_unknown_sender_domain,
    reject_sender_login_mismatch,
    reject_rhsbl_sender dbl.spamhaus.org

smtpd_recipient_restrictions=
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unknown_recipient_domain,
    reject_non_fqdn_recipient,
    reject_unlisted_recipient,
    reject_rbl_client zen.spamhaus.org

smtpd_helo_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_invalid_helo_hostname,
    reject_non_fqdn_helo_hostname

smtpd_helo_required = yes
Si c'est bon pour toi, je mettrai à jour le tuto. En tout cas c'est important de mettre un minimum de restrictions sinon c'est la porte ouverte à quelques dérives... On va dire que c'est surtout pour lutter contre le spam et les serveurs envoyant des mails malformés (en majorité les spammeurs dis donc).
Salut à tous,

Petite question, je viens de relancer mon mailserver dockerisé après avoir changé l'emplacement par défaut du téléchargement des images.

Depuis j'ai mon rainloop et mon postfix qui ne répondant plus sur les interfaces web alors que l'ensemble des autres "services" rutorrent, couchpotato et sickrage entre autres répondent sans soucis.

Quand je fais un
docker logs nginx
ou un
docker logs mailserver
Tout semble rouler.
Il y a eu un changement de port pour rainloop et postfixadmin maintenant le reverse est sur le port 8888 (regarde le readme du github)