Ansible roles by Evolix
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
ansible-roles/postfix/templates/packmail_main.cf.j2

432 lines
14 KiB

## fichier principal de configuration de Postfix
## commentaires de Gregory Colpart reg AT evolix DOT fr
## version 1.0 : 1ere version publique (05.04.2010)
########################
# Section : Emplacements
########################
# Repertoire ou se trouvent les commandes de postfix [OBLIGATOIRE]
#par defaut, = $program_directory
command_directory = /usr/sbin
# Repertoire ou se trouvent les demons de postfix [OBLIGATOIRE]
#par defaut, = $program_directory
daemon_directory = /usr/lib/postfix/sbin
# Variable pour indiquer les emplacements des commandes et demons de postfix
#program_directory = /usr/lib/postfix
# Repertoire contenant les fichiers de boites aux lettres
#par defaut, = /var/mail
#mail_spool_directory =
# Repertoire de la file d'attente de postfix
#par defaut, = /var/spool/postfix
#queue_directory =
# Boites aux lettres
#par defaut, =
home_mailbox = Maildir/
# Transmettre les mails a un MDA
#par defaut, =
#mailbox_command = /usr/bin/procmail
# Separateur entre noms d'utilisateur et extensions d'adresse
# mettre + pour integration avec amavis
#par defaut, =
recipient_delimiter = +
# Controle si le repertoire existe (souvent pour les systemes de fichiers montes)
#par defaut, = no
#require_home_directory =
# Commande pour transmettre le courrier a un MDA
#par defaut, =
#mailbox_command = /usr/bin/procmail
# Banniere SMTP affichee
#par default, = $myhostname ESMTP $mail_name
smtpd_banner = $myhostname ESMTP mail server
# Groupe des commandes set-gid ayant des acces en ecriture
#par defaut, = postdrop
# setgid_group = postdrop
# Produire des "biff notifications" aux utilisateurs pour
# prevenir de l'arrivee de nouveaux mails
# par default, = yes
#biff = no
####################
# Section : domaines
####################
# Indique le nom d'hote pleinement qualifie ou se trouve postfix [OBLIGATOIRE]
#par defaut, = [retour de la commande Unix hostname]
myhostname = {{ ansible_fqdn }}
# Variable indiquant le domaine dans lequel se trouve la machine
#par defaut, = [partie domain de la variable $myhostname]
#mydomain =
# Liste des noms de domaine (ou IP) consideres comme local
#par defaut, = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname localhost.localdomain localhost
# Indique le domaine apparaissant dans le courrier envoye
#par defaut, = $myhostname
myorigin = {{ ansible_fqdn }}
# Liste de domaine fonctionnant UNIQUEMENT avec des alias virtuels
#par defaut, = $virtual_alias_maps
#virtual_alias_domains = [ domaines avec alias virtuels ]
# Liste de domaine fonctionnant avec des comptes virtuels
#par defaut, = $virtual_mailbox_maps
virtual_mailbox_domains = ldap:$config_directory/virtual_domains.cf
# Repertoire de base de l'espace de stockage
#par defaut, =
virtual_mailbox_base = /
# Ajoute $mydomain aux adresse ne compoirtant que la partie hote sans le domaine
#par defaut, = yes
#append_dot_mydomain = no
# Ajoute $myorigin aux adresses ne comportant pas de composante de domaine
#par defaut, = yes
#append_at_myorigin = no
# Liste de domaines cachant des sous-domaines internes
#par defaut, =
#masquerade_domains =
# A l'exception de certains comptes :
#par defaut, =
#masquerade_exceptions = root, admin
# Champs d'application de la reecriture des sous-domaines caches
#par defaut, = envelope_sender, header_sender, header_recipient
#masquerade_classes =
# Sites eligibles pour un vidage rapide (postqueue -s [domain.tld])
#par defaut, = $relay_domains
#fast_flush_domains =
# Interfaces sur lesquelles ecoutent postfix
#par defaut, = all
#inet_interfaces = all
# Adresse IP externe du firewall/proxy si derriere NAT ou proxy
# evite principalement les boucles si MX secondaire et MX primaire indisponible
#par defaut, =
#proxy_interfaces = [adresse IP]
# Domaines acceptes pour faire relai (MX 2aire)
#relay_domains = [domaine a relayer]
###########################
# Section : base de donnees
###########################
# Liste des bases de donnees utilisees par l'agent de distribution locale
# Pour regenerer une base de donnees : postalias /etc/aliases (par ex)
#par defaut, = hash:/etc/aliases, nis:mail.aliases
alias_maps = hash:/etc/aliases
# Liste des bases de donnees locales
# Pour regenerer avec newaliases
#par defaut, = hash:/etc/aliases
alias_database = hash:/etc/aliases
# Chemin vers la commande newaliases
#par defaut, = /usr/bin/newaliases
#newaliases_path =
# Base de donnes d'alias virtuels
# ne pas oublier : postmap /etc/postfix/virtual
#par defaut, = $virtual_maps
virtual_alias_maps = hash:$config_directory/virtual, ldap:$config_directory/virtual_aliases.cf
# Base de donners des boites virtuelles
# ne pas oublier : postmap /etc/postfix/vmailbox
#par defaut, =
virtual_mailbox_maps = ldap:$config_directory/virtual_mailboxes.cf
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
# Reecriture des adresses
#par defaut, =
#canonical_maps = hash:/etc/postfix/canonical
# Reecriture des adresses a l'arrivee (ecrase $canonical_maps)
#par defaut, =
#recipient_canonical_maps = hash:/etc/postfix/canonical
# Reecriture des adresses au depart
#par defaut, =
#sender_canonical_maps = hash:/etc/postfix/canonical
# Adresses changees
#relocated_maps = hash:/etc/postfix/relocated
# Boite pour receptionner tous les utilisateurs inconnus
#luser_relay = spam
# Liste de base de donnees contenant les adresses locales permettant de rejeter les messages aux utilisateurs inconnus
# (sera nulle pour recuperer les courriels vers les utilisateurs inconnus)
#par defaut, = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =
# MAILING-LIST nommee xx
# dans le fichier /etc/aliases :
# xx: user1@domain1 user2@domain2 etc.
# owner-xx: admin@domain
# Utiliser ou non l'alias xx-owner comme adresse d'enveloppe d'expedition
#par defaut, = yes
#owner_request_special =
# Utiliser l'adresse relle de l'admin au lieu de xx-owner
#par defaut, = no
#expand_owner_alias =
###########################################
# Section : parametres de la file d'attente
###########################################
# Lorsqu'un message n'a pas ete delivre, Postfix adjoint une marque indiquant le moment ou la prochaine tentaive pourra avoir lieu
# Delai au-dela duquel les messages non delivres seront renvoyes a l'expediteur
#par defaut, = 5d
#maximal_queue_lifetime =
# Delai au-dela duquel les *bounces* non delivres ne seront plus envoyes
#par defaut, = 5d
bounce_queue_lifetime = 1d
# Intervalle de temps ou postfix examinera la file
# Il examine notamment la file deferred pour voir si de NOUVEAUX messages sont arrives
# Il faut aussi que la marque indique qu'ils soient prets
#par defaut, = 1000s
#queue_run_delay =
# A chaque echec, le delai de la prochaine distribution double, avec les restrictions suivantes :
# Delai minimal
#par defaut, = 1000s
#minimal_backoff_time =
# Delai maximal
#par defaut, = 4000s
#maximal_backoff_time =
# Si maxproc est vide (master.cf), nombre maximal est :
#par defaut, = 100
#default_process_limit =
# Nombre maximal de destinataires stockes en memoire par qmgr pour un transport particulier
#par defaut, = 10000
#default_recipient_limit =
# Nombre limitant de messages envoyes simultanement INITIALEMENT pour une destination particuliere
# (forcement majoree par maxproc du master.cf ou $default_process_limit)
#par defaut, = 5
#initial_destination_concurrency =
# Une fois ces messages distribues, si il reste des messages dans la file d'attente pour cette destination
# particuliere, postfix augmente le nombre de tentative tant qu'il ne detecte pas de probleme avec
# la destination, avec la limite suivante :
#par defaut, = 20
#default_destination_concurrency_limit =
# Cette limite peut etre differente selon le type de transport utilise :
#par defaut, = $default_destination_concurrency_limit
#lmtp_destination_concurrency_limit =
#par defaut, = 2
#local_destination_concurrency_limit =
#par defaut, = $default_destination_concurrency_limit
#relay_destination_concurrency_limit =
#par defaut, = $default_destination_concurrency_limit
#smtp_destination_concurrency_limit =
#par defaut, = $default_destination_concurrency_limit
#virtual_destination_concurrency_limit =
# On peut aussi limiter le nombre maximum de destinataire pour un meme message
# Si le nombre de destinataire depasse la limite, postfix divise en groupe d'adresses plus petites et envoie des copies distinctes du message
#par defaut, = 10000
#default_destination_recipient_limit =
#par defaut, = $default_destination_recipient_limit
#lmtp_destination_recipient_limit =
#par defaut, = 1
#local_destination_recipient_limit =
#par defaut, = 20000
#qmgr_message_recipient_limit =
#par defaut, = $default_destination_recipient_limit
#relay_destination_recipient_limit =
#par defaut, = $default_destination_recipient_limit
#smtp_destination_recipient_limit =
#par defaut, = 1000
#smtpd_recipient_limit =
#par defaut, = $default_destination_recipient_limit
#virtual_destination_recipient_limit =
# Nombre maximum de destinataires pour un transport lorsque priorite superieure de transport
#par defaut, = 1000
#default_extra_recipient_limit =
slow_destination_rate_delay = 0
slow_destination_concurrency_limit = 1
slow_destination_recipient_limit = 25
slow_destination_concurrency_failed_cohort_limit = 100
# Types d'incidents a rapporter
# resource : message non delivre pour probleme de ressource
# software : message non delivre pour probleme de logiciels
# policy : envoie le transcription smtp d'un message rejete par restrictions
# protocol : envoie toute transcription smtp erronee
# delay : envoie les entetes de messages differes
# bounce : envoie les entetes de tous les message renvoyes
# 2bounce : envoie les entetes de tous les messages renvoyes non delivres
#par defaut, = resource, software
notify_classes = resource, software, bounce, 2bounce, delay, policy, protocol
# A qui les reporter ?
#Pour delay
#par defaut, = postmaster
delay_notice_recipient = delay
#Pour policy, protocol, resource, software
#par defaut, = postmaster
error_notice_recipient = error
#Pour bounce
#par defaut, = postmaster
bounce_notice_recipient = bounce
#Pour 2bounce
#par defaut, = postmaster
2bounce_notice_recipient = bounce
########################
# Section : restrictions
########################
# Restrictions au depart de la conversation
#par defaut, =
smtpd_client_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
cidr:$config_directory/spamd.cidr,
# Restrictions au niveau de la commande HELO/EHLO
#par defaut, =
smtpd_helo_restrictions =
reject_invalid_hostname
# Restrictions au niveau de la commande MAIL FROM
#par defaut, =
smtpd_sender_restrictions =
permit_mynetworks,
check_sender_access hash:$config_directory/sa-blacklist.access
# Restrictions au niveau de la commande MAIL FROM
#par defaut, = permit_mynetworks, reject_unauth_destination
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
check_policy_service unix:private/policyd-spf,
check_client_access hash:$config_directory/client.access_local,
check_client_access hash:$config_directory/client.access,
check_sender_access hash:$config_directory/sender.access_local,
check_sender_access hash:$config_directory/sender.access,
check_recipient_access hash:$config_directory/recipient.access_local,
check_recipient_access hash:$config_directory/recipient.access,
reject_unlisted_recipient,
reject_unknown_sender_domain,
reject_non_fqdn_sender,
reject_unauth_pipelining,
policyd-spf_time_limit = 3600
header_checks =
regexp:$config_directory/header_kill_local,
regexp:$config_directory/header_kill
transport_maps = hash:$config_directory/transport
# Attendre la commande 'RCPT TO' avant d'evaluer les restrictions ?
# (peut poser pb avec certains clients et permet d'avoir renseignements suppl)
#par defaut, = yes
#smtpd_delay_reject =
# Definition des plages IP appartenant a mynetworks
#par defaut, toutes les plages d'adresses IPv4 (et IPv6) des interfaces
mynetworks = 127.0.0.0/8,[::1]/128,10.0.0.0/16
# Exiger la commande HELO/EHLO
#par defaut, = no
smtpd_helo_required = yes
# Exiger syntaxe conforme dans les commandes MAIL FROM ou RCPT TO
#par defaut, = no
strict_rfc821_envelopes = yes
# Rejeter le courrier provenant d'une adresse inexistante ?
#par defaut, = no
#smtpd_reject_unlisted_sender =
# Rejeter le courrier a destination d'une adresse inexistante ?
#par defaut, = yes
#smtpd_reject_unlisted_recipient =
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
#######################
# Section : Chiffrement
#######################
smtpd_tls_security_level = may
smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3
smtpd_tls_protocols=!SSLv2,!SSLv3
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_loglevel = 1
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtp_tls_security_level = may
smtp_tls_mandatory_protocols=!SSLv2,!SSLv3
smtp_tls_protocols=!SSLv2,!SSLv3
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_tls_loglevel = 1
# SASL
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth-client
# Amavis and OpenDKIM
content_filter = smtp-amavis:[127.0.0.1]:10024
smtpd_milters = inet:[127.0.0.1]:8891
non_smtpd_milters = inet:[127.0.0.1]:8891
{% if postfix_slow_transport_include == True %}
# Slow transports configuration
minimal_backoff_time = 2h
maximal_backoff_time = 6h
maximal_queue_lifetime = 4d
queue_run_delay = 100s
bounce_queue_lifetime = 1d
initial_destination_concurrency = 5
default_destination_concurrency_limit = 20
slow_destination_rate_delay = 0
slow_destination_concurrency_limit = 1
slow_destination_concurrency_failed_cohort_limit = 100
slow_destination_recipient_limit = 25
transport_maps = hash:$config_directory/transport
{% endif %}