[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: avis sur mon main.cf



Tekpi wrote:
Bonjour à tous,

voici mon main.cf de postfix, j'ai tenté de mettre une solution très
restrictive pour éviter de recevoir trop de spam, pouvez-vous me donner
votre avis :
mydestination = $myhostname, localhost.localdomain, localhost.localdomain,
localhost

pour éviter les surprises, il vaut mieux définir myhostname et mydomain explicitement. ça évite les problèmes quand on joue avec le hostname de la machine.

relayhost = smtp.demonprovider.com

relayhost = [smtp.demonprovider.com]

avec des crochets pour éviter un requête MX.

mynetworks = 127.0.0.0/8 192.168.0.0/24
recipient_delimiter = +
inet_interfaces = $myhostname, localhost

inet_interfaces = all
est conseillé. et comme c'est la valeur par défaut, autant virer toute la ligne.

jouer avec inet_interfaces cause des ennuis.

transport_maps = hash:/etc/postfix/transport
virtual_alias_maps = hash:/etc/postfix/virtual
smtp_banner = $myhostname ESMTP $mail_name

tu peux virer cette ligne. c'est la valeur par défaut. En général, il ne faut pas remettre les valeurs par défaut. comme ça, à la mise à jour, tu auras la nouvelle valeur par défaut (qui sera mieux, sinon elle n'aura pas été choisie dans la mise à jour!).

mail_name = temp

ça sert à rien de cacher que c'est un postfix. ça prend 3 secondes de s'en rendre compte. essaye:
# telnet serveur 25
GET / HTTP/1.0

essaye la même chose sur des serveurs différents, et tu verras qu'on voit vite un postfix.

Mieux vaut laisser la valeur par défaut.

maximal_queue_lifetime = 4d
smtp_helo_timeout = 60s
smtpd_recipients_limit = 16
smtpd_soft_error_limit = 3
smtpd_hard_error_limit = 12

pas de commentaire sur ces valeurs. si tu n'as pas de raison vraiment spéciale, il ne faut pas changer les valeurs.

smtpd_helo_restrictions = permit_mynetworks

ça ne sert à rien. par défaut, c'est "permit". donc ajouter un permit_mynetworks ne change rien au résultat.
tu peux virer la ligne.

smtpd_delay_reject = yes
disable_vrfy_command = yes
content_filter = smtp-amavis:[127.0.0.1]:10024
mailbox_command = procmail -a "$EXTENSION"
strict_rfc821_envelopes = yes
mailbox_size_limit = 0
virtual_mailbox_limit = 52428800
bounce_queue_lifetime = 2h
smtpd_client_restrictions = permit_mynetworks, reject_unknown_client

La, ça dépend du site. si c'est perso, je ne vois pas de problème. si c'est professionnel, ça va faire des dégats. Tout d'abord, plusieurs sites ont une mauvaise config DNS. Mais même en décidant qu'ils n'ont qu'à se démerder, il reste le cas des problèmes DNS (telmps de réponse causant un timeout, ...) qui vont faire des erreurs temporaires et donc retarder le mail.


smtpd_data_restrictions = reject_unauth_pipelining

# Rejeter tout mail mal formaté
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, reject_non_fqdn_hostname

ah. tu répetes smtpd_helo_restrictions. il faut virer la première.
tu peux ajouter
	reject_invalid_hostname
(je ne vois pas pourquoi t'accepterais "j?^<f" et pas "popo").

cela dit, tu peux tout mettre dans smtpd_recipient_restrictions, histoire de pouvoir choisir l'ordre d'execution.


#smtpd_sender_restrictions =

ça a deja été dit. attention au '#'...

        reject_non_fqdn_sender,

ça, tu l'as déjà dans smtpd_recipient_restrictions. pas la peine de le répeter. finalement tu peux virer smtpd_sender_restrictions completement.

        reject_unknown_address

c'est quoi reject_unknown_address? ne serait-ce pas
	reject_unknown_sender_domain
plutot?


        reject_maps_rbl

et ça?




#notify_classes = resource,software,bounce,policy,protocol,delay
#error_notice_recipient = postmaster
# Règles RBL + Tri sur le format du mail
smtpd_recipient_restrictions =
       permit_mynetworks,

mets
	reject_unauth_destination
ici. sinon, gare au "relai ouvert"...

       check_sender_access hash:/etc/postfix/sender_ok,

il ne faut pas faire confiance à l'adresse de l'expéditeur pour faire du relai. ça peut rester "caché" pendant quelques jours (voire plus), mais ce sera découvert et là, ça fera mal. donc après reject_unauth_destination...

       reject_non_fqdn_sender,
       reject_non_fqdn_recipient,

ici tu peux ajouter
	reject_invalid_hostname
	reject_non_fqdn_hostname

tu peux aussi ajoter
	reject_unlisted_sender
	reject_unlisted_recipient

histoire d'éviter des appels DNS quand les adresses sont fausses.

       reject_unknown_sender_domain,
       reject_unknown_recipient_domain,
       reject_unauth_destination,

c'est plus haut qu'il faut le mettre. ne jamais mettre un permit ou un ok avant reject_unauth_destination, sauf si on est sûr du coup. en gros, on peut mettre permit_mynetworks (whitelist par IP), permit_sasl_authenticated (whitelist par authentification), mais pas un check_sender_access, qui est facilement falsifié...

       reject_unauth_pipelining,

ça sert à rien ici. RCPT TO est une commande "asynchrone". le standard autorise donc de faire du pipelining ici.

       reject_invalid_hostname,
comme il coute pas grand chose, mieux vaut le mettre plus haut.

       reject_rbl_client relays.ordb.org,

t'es sûr qu'elle existe encore cette liste? ;-p
avant d'utiliser une DNSBL, il faut visiter son site, lire son fonctionnement, ... etc.

       reject_rbl_client sbl-xbl.spamhaus.org,

regarde si t'as pas envie d'utiliser zen.spamhaus.org. ça contient sbl-xbl mais aussi pbl.spamhaus.org, qui detecte beaucoup de "zombies" (machines possédées).

il y aussi korea.services.net.

       reject_rbl_client bl.spamcop.net,
       check_policy_service inet:127.0.0.1:60000,
       permit

Le dernier permit est inutile, mais c'est une question de gout...


Reply to: