SwordArMor

Pas de ssl en localhost avec spampd et postfix

J’utilise postfix comme serveur mail et spampd pour filtrer les spams. Il y a peu j’ai eu envie de me mettre au TLS/SSL. J’ai alors rencontré un problème de timeout sur localhost:10025, les logs disaient « Cannot start TLS: handshake failure » et « SSL_connect error to 127.0.0.1[127.0.0.1]:10025: Connection timed out » à chaque fois qu’un mail devait passer par l’anti-spam.
Le problème est dû à postfix qui veut absolument faire du SSL/TLS et spampd qui ne sait pas le faire. Ma conf avant était :
# TLS parameters
smtpd_tls_cert_file =	/etc/ssl/certs/smtp.swordarmor.fr.crt
smtpd_tls_key_file =	/etc/ssl/private/smtp.swordarmor.fr.key
smtpd_tls_CAfile =	/etc/ssl/certs/cacert.org.pem
smtpd_tls_CApath =	/etc/ssl/certs

smtpd_tls_security_level =	may
smtpd_tls_auth_only =		no

smtpd_tls_session_cache_database =	btree:${data_directory}/smtpd_scache
smtpd_tls_session_cache_timeout =	3600s
tls_random_source =			dev:/dev/urandom

smtpd_tls_received_header =	yes
smtpd_tls_loglevel =		1

smtp_tls_session_cache_database =	btree:${data_directory}/smtp_scache
smtp_tls_security_level =		may
smtp_tls_loglevel =			1

# Content filtering
content_filter = smtp:127.0.0.1:10025
La solution vient avec le paramètre smtp_tls_policy_maps. Il faut ajouter
smtp_tls_policy_maps =			hash:/etc/postfix/tls_policy
Dans /etc/postfix/tls_policy je mets
localhost:10025	none
127.0.0.1:10025	none
::1:10025	none
Attention, il faut penser à mettre le port sur lequel tourne l’anti-spam. Au début je m’étais fait avoir en ne mettant que localhost. Aussi, il ne faut pas oublier de hasher le fichier avec postmap.