Mon serveur mail est un kimsufi d’entrée de gamme (intel atom, un disque) que j’ai depuis 2013. Il y a déjà eu un crash disque, et une ou plusieurs réinstallations.
Pour le moment il est sous debian 10, et les mises à jour de Yunohost se sont arrêtées (avant le passage du user ‘admin’ à un groupe ‘admins’)
J’ai un autre serveur beaucoup plus couillu et qui est à jour, mais je garde le petit comme mail-relay à cause de son adresse IP qui a acquis une bonne réputation notamment chez les gafam.
Depuis le début, et fort de mon expérience passée, je me suis éloigné du postfix/mail.cf de stock de Yunohost, tout en apportant mes modifications sur le modèle original de Yuno.
J’ai retrouvé le main.cf actuel ici: https://github.com/YunoHost/yunohost/blob/dev/conf/postfix/main.cf
et je vais commenter mes ajouts et modifications:
Ajout de:
delay_warning_time = 4h
bounce_queue_lifetime = 1d
maximal_queue_lifetime = 1d
A l’opposé, je n’ai pas ces lignes-ci qui semblent plus récentes:
smtpd_tls_chain_files =
/etc/yunohost/certs/{{ main_domain }}/key.pem,
/etc/yunohost/certs/{{ main_domain }}/crt.pem
tls_server_sni_maps = hash:/etc/postfix/sni
{% if compatibility == "intermediate" %}
# generated 2020-08-18, Mozilla Guideline v5.6, Postfix 3.4.14, OpenSSL 1.1.1d, intermediate configuration
# https://ssl-config.mozilla.org/#server=postfix&version=3.4.14&config=intermediate&openssl=1.1.1d&guideline=5.6
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_mandatory_ciphers = medium
# curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam.pem
# not actually 1024 bits, this applies to all DHE >= 1024 bits
smtpd_tls_dh1024_param_file = /usr/share/yunohost/ffdhe2048.pem
tls_medium_cipherlist = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES25
6-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
{% else %}
# generated 2020-08-18, Mozilla Guideline v5.6, Postfix 3.4.14, OpenSSL 1.1.1d, modern configuration
# https://ssl-config.mozilla.org/#server=postfix&version=3.4.14&config=modern&openssl=1.1.1d&guideline=5.6
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1, !TLSv1.2
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1, !TLSv1.2
{% endif %}
tls_preempt_cipherlist = no
###############################################################################
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
J’ai une ligne qui doit être incompatible avec Yuno version 11:
chez moi: virtual_alias_maps = ldap:/etc/postfix/ldap-aliases.cf
stock: virtual_alias_maps = ldap:/etc/postfix/ldap-aliases.cf,ldap:/etc/postfix/ldap-groups.cf
Il y a un ajout qui manque chez moi:
smtpd_sender_login_maps=
# ...
# Extra maps for app system users who need to send emails
hash:/etc/postfix/app_senders_login_maps
J’ai ajouté une ligne client.cidr ici:
# Requirements for the connecting server
smtpd_client_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
cidr:/etc/postfix/client.cidr,
reject_rbl_client bl.spamcop.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client zen.spamhaus.org,
permit
Explication: ce fichier permet de bannir une plage d’adresses IP , quand des spammeurs louent des dizaines de VPS avec des adresses IP contigues chez un hébergeur, pour harceler certains de mes utilisateurs.
Extrait de ce fichier client.cidr (j’ai remplacé un octet valide par X) :
104.140.X.0/23 550 Blacklisted. Too many spam incidents and repeated abuse (Eonix)
140.X.0.0/16 550 Blacklisted. Too many spam incidents and repeated abuse (Epicup)
202.138.X.0/24 450 Your e-mails will stay in your queue....
Ensuite j’ai ajouté 2 phrases check_sender_access dans ce paragraphe:
# Requirements for the sender address
smtpd_sender_restrictions =
# reject_sender_login_mismatch,
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
check_sender_access pcre:/etc/postfix/sender_access_pcre,
check_sender_access hash:/etc/postfix/sender_access_hash,
permit
Voici un exemple du fichier pcre:
/amphiprioninae.be$/ 554 SPAM detected
/wcm-msa.com$/ 554 Sender blacklisted
/\.icu$/ 554 Bad TLD. Too much spam from this address.
et du fichier hash:
aw-confirm@ebay.com 550 This sender is not authorized to send mail.
ebay@message.com 550 This sender is not authorized to send mail.
service@security.com 550 This sender is not authorized to send mail.
Voilà… si ça peut donner des idées à d’autres…
N’oubliez la commande postmap et postfix reload quand vous touchez à ces fichiers…
Notez qu’il faudra peut-être aussi installer un package debian (postfix-pcre ? Je ne me rappelle plus)