main.cf 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. # --------------------------------------------------------------------------
  2. # Please create a file "extra.cf" for persistent overrides to main.cf
  3. # --------------------------------------------------------------------------
  4. biff = no
  5. append_dot_mydomain = no
  6. smtpd_tls_cert_file = /etc/ssl/mail/cert.pem
  7. smtpd_tls_key_file = /etc/ssl/mail/key.pem
  8. tls_server_sni_maps = hash:/opt/postfix/conf/sni.map
  9. smtpd_tls_received_header = yes
  10. smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
  11. smtpd_relay_restrictions = permit_mynetworks,
  12. permit_sasl_authenticated,
  13. defer_unauth_destination
  14. # alias maps are auto-generated in postfix.sh on startup
  15. alias_maps = hash:/etc/aliases
  16. alias_database = hash:/etc/aliases
  17. relayhost =
  18. mynetworks_style = subnet
  19. mailbox_size_limit = 0
  20. recipient_delimiter = +
  21. inet_interfaces = all
  22. inet_protocols = all
  23. bounce_queue_lifetime = 1d
  24. broken_sasl_auth_clients = yes
  25. disable_vrfy_command = yes
  26. maximal_backoff_time = 1800s
  27. maximal_queue_lifetime = 5d
  28. delay_warning_time = 4h
  29. message_size_limit = 104857600
  30. milter_default_action = accept
  31. milter_protocol = 6
  32. minimal_backoff_time = 300s
  33. plaintext_reject_code = 550
  34. postscreen_access_list = permit_mynetworks,
  35. cidr:/opt/postfix/conf/custom_postscreen_whitelist.cidr,
  36. cidr:/opt/postfix/conf/postscreen_access.cidr,
  37. tcp:127.0.0.1:10027
  38. postscreen_bare_newline_enable = no
  39. postscreen_blacklist_action = drop
  40. postscreen_cache_cleanup_interval = 24h
  41. postscreen_cache_map = proxy:btree:$data_directory/postscreen_cache
  42. postscreen_dnsbl_action = enforce
  43. postscreen_dnsbl_sites = wl.mailspike.net=127.0.0.[18;19;20]*-2
  44. hostkarma.junkemailfilter.com=127.0.0.1*-2
  45. list.dnswl.org=127.0.[0..255].0*-2
  46. list.dnswl.org=127.0.[0..255].1*-4
  47. list.dnswl.org=127.0.[0..255].2*-6
  48. list.dnswl.org=127.0.[0..255].3*-8
  49. ix.dnsbl.manitu.net*2
  50. bl.spamcop.net*2
  51. bl.suomispam.net*2
  52. hostkarma.junkemailfilter.com=127.0.0.2*3
  53. hostkarma.junkemailfilter.com=127.0.0.4*2
  54. hostkarma.junkemailfilter.com=127.0.1.2*1
  55. backscatter.spameatingmonkey.net*2
  56. bl.ipv6.spameatingmonkey.net*2
  57. bl.spameatingmonkey.net*2
  58. b.barracudacentral.org=127.0.0.2*7
  59. bl.mailspike.net=127.0.0.2*5
  60. bl.mailspike.net=127.0.0.[10;11;12]*4
  61. dnsbl.sorbs.net=127.0.0.10*8
  62. dnsbl.sorbs.net=127.0.0.5*6
  63. dnsbl.sorbs.net=127.0.0.7*3
  64. dnsbl.sorbs.net=127.0.0.8*2
  65. dnsbl.sorbs.net=127.0.0.6*2
  66. dnsbl.sorbs.net=127.0.0.9*2
  67. zen.spamhaus.org=127.0.0.[10;11]*8
  68. zen.spamhaus.org=127.0.0.[4..7]*6
  69. zen.spamhaus.org=127.0.0.3*4
  70. zen.spamhaus.org=127.0.0.2*3
  71. postscreen_dnsbl_threshold = 6
  72. postscreen_dnsbl_ttl = 5m
  73. postscreen_greet_action = enforce
  74. postscreen_greet_banner = $smtpd_banner
  75. postscreen_greet_ttl = 2d
  76. postscreen_greet_wait = 3s
  77. postscreen_non_smtp_command_enable = no
  78. postscreen_pipelining_enable = no
  79. proxy_read_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_sasl_passwd_maps_transport_maps.cf,
  80. proxy:mysql:/opt/postfix/conf/sql/mysql_sasl_access_maps.cf,
  81. proxy:mysql:/opt/postfix/conf/sql/mysql_mbr_access_maps.cf,
  82. proxy:mysql:/opt/postfix/conf/sql/mysql_tls_enforce_in_policy.cf,
  83. $sender_dependent_default_transport_maps,
  84. $smtp_tls_policy_maps,
  85. $local_recipient_maps,
  86. $mydestination,
  87. $virtual_alias_maps,
  88. $virtual_alias_domains,
  89. $virtual_mailbox_maps,
  90. $virtual_mailbox_domains,
  91. $relay_recipient_maps,
  92. $relay_domains,
  93. $canonical_maps,
  94. $sender_canonical_maps,
  95. $sender_bcc_maps,
  96. $recipient_bcc_maps,
  97. $recipient_canonical_maps,
  98. $relocated_maps,
  99. $transport_maps,
  100. $mynetworks,
  101. $smtpd_sender_login_maps,
  102. $smtp_sasl_password_maps
  103. queue_run_delay = 300s
  104. relay_domains = proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_relay_domain_maps.cf
  105. relay_recipient_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_relay_recipient_maps.cf
  106. sender_dependent_default_transport_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_sender_dependent_default_transport_maps.cf
  107. smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
  108. smtp_tls_cert_file = /etc/ssl/mail/cert.pem
  109. smtp_tls_key_file = /etc/ssl/mail/key.pem
  110. smtp_tls_loglevel = 1
  111. smtp_dns_support_level = dnssec
  112. smtp_tls_security_level = dane
  113. smtpd_data_restrictions = reject_unauth_pipelining, permit
  114. smtpd_delay_reject = yes
  115. smtpd_error_sleep_time = 10s
  116. smtpd_hard_error_limit = ${stress?1}${stress:5}
  117. smtpd_helo_required = yes
  118. smtpd_proxy_timeout = 600s
  119. smtpd_recipient_restrictions = check_sasl_access proxy:mysql:/opt/postfix/conf/sql/mysql_sasl_access_maps.cf,
  120. check_recipient_mx_access proxy:mysql:/opt/postfix/conf/sql/mysql_mbr_access_maps.cf,
  121. permit_sasl_authenticated,
  122. permit_mynetworks,
  123. check_recipient_access proxy:mysql:/opt/postfix/conf/sql/mysql_tls_enforce_in_policy.cf,
  124. reject_invalid_helo_hostname,
  125. reject_unauth_destination
  126. smtpd_sasl_auth_enable = yes
  127. smtpd_sasl_authenticated_header = yes
  128. smtpd_sasl_path = inet:dovecot:10001
  129. smtpd_sasl_type = dovecot
  130. smtpd_sender_login_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_sender_acl.cf
  131. smtpd_sender_restrictions = reject_authenticated_sender_login_mismatch,
  132. permit_mynetworks,
  133. permit_sasl_authenticated,
  134. reject_unlisted_sender,
  135. reject_unknown_sender_domain
  136. smtpd_soft_error_limit = 3
  137. smtpd_tls_auth_only = yes
  138. smtpd_tls_dh1024_param_file = /etc/ssl/mail/dhparams.pem
  139. smtpd_tls_eecdh_grade = auto
  140. smtpd_tls_exclude_ciphers = ECDHE-RSA-RC4-SHA, RC4, aNULL, DES-CBC3-SHA, ECDHE-RSA-DES-CBC3-SHA, EDH-RSA-DES-CBC3-SHA
  141. smtpd_tls_loglevel = 1
  142. # Mandatory protocols and ciphers are used when a connections is enforced to use TLS
  143. # Does _not_ apply to enforced incoming TLS settings per mailbox
  144. smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  145. lmtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  146. smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  147. smtpd_tls_mandatory_ciphers = high
  148. smtp_tls_protocols = !SSLv2, !SSLv3
  149. lmtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  150. smtpd_tls_protocols = !SSLv2, !SSLv3
  151. smtpd_tls_security_level = may
  152. tls_preempt_cipherlist = yes
  153. tls_ssl_options = NO_COMPRESSION, NO_RENEGOTIATION
  154. virtual_alias_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_alias_maps.cf,
  155. proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_resource_maps.cf,
  156. proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_spamalias_maps.cf,
  157. proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_alias_domain_maps.cf
  158. virtual_gid_maps = static:5000
  159. virtual_mailbox_base = /var/vmail/
  160. virtual_mailbox_domains = proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_domains_maps.cf
  161. # -- moved to rspamd on 2021-06-01
  162. #recipient_bcc_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_recipient_bcc_maps.cf
  163. #sender_bcc_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_sender_bcc_maps.cf
  164. recipient_canonical_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_recipient_canonical_maps.cf
  165. recipient_canonical_classes = envelope_recipient
  166. virtual_mailbox_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_virtual_mailbox_maps.cf
  167. virtual_minimum_uid = 104
  168. virtual_transport = lmtp:inet:dovecot:24
  169. virtual_uid_maps = static:5000
  170. smtpd_milters = inet:rspamd:9900
  171. non_smtpd_milters = inet:rspamd:9900
  172. milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}
  173. mydestination = localhost.localdomain, localhost
  174. smtp_address_preference = any
  175. smtp_sender_dependent_authentication = yes
  176. smtp_sasl_auth_enable = yes
  177. smtp_sasl_password_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_sasl_passwd_maps_sender_dependent.cf
  178. smtp_sasl_security_options =
  179. smtp_sasl_mechanism_filter = plain, login
  180. smtp_tls_policy_maps = proxy:mysql:/opt/postfix/conf/sql/mysql_tls_policy_override_maps.cf
  181. smtp_header_checks = pcre:/opt/postfix/conf/anonymize_headers.pcre
  182. mail_name = Postcow
  183. # local_transport map catches local destinations and prevents routing local dests when the next map would route "*"
  184. # Use custom_transport.pcre for custom transports
  185. transport_maps = pcre:/opt/postfix/conf/custom_transport.pcre,
  186. pcre:/opt/postfix/conf/local_transport,
  187. proxy:mysql:/opt/postfix/conf/sql/mysql_relay_ne.cf,
  188. proxy:mysql:/opt/postfix/conf/sql/mysql_transport_maps.cf
  189. smtp_sasl_auth_soft_bounce = no
  190. postscreen_discard_ehlo_keywords = silent-discard, dsn
  191. compatibility_level = 2
  192. smtputf8_enable = no
  193. # Define protocols for SMTPS and submission service
  194. submission_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  195. smtps_smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
  196. parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains,mynetworks,qmqpd_authorized_clients
  197. # DO NOT EDIT ANYTHING BELOW #
  198. # User overrides #