tls_advertise_hosts = <; !127.0.0.1 ; !::1
+# Configured TLS cipher selection.
+
+tls_require_ciphers = <%= node[:ssl][:gnutls_ciphers] %>:%SERVER_PRECEDENCE
+
# Specify the location of the Exim server's TLS certificate and private key.
# The private key must not be encrypted (password protected). You can put
# the certificate and private key in the same file, in which case you only
# need the first setting, or in separate files, in which case you need both
# options.
+<% if node[:exim][:certificate_names] -%>
+tls_certificate = /etc/ssl/certs/<%= node[:exim][:certificate_names].first %>.pem
+tls_privatekey = /etc/ssl/private/<%= node[:exim][:certificate_names].first %>.key
+<% else -%>
tls_certificate = /etc/ssl/certs/exim.pem
tls_privatekey = /etc/ssl/private/exim.key
+<% end -%>
# In order to support roaming users who wish to send email from anywhere,
# you may want to make Exim listen on other ports as well as port 25, in
deny local_parts = root:postmaster:webmaster:abuse:support
senders = :
- # Block sender of spam backscatter
+ # Block blacklisted senders
- deny senders = www-data@www.easyticket.de:*@email.realestate.co.nz:sipdentistry@mail.mediaworksonline.com:www-data@*.consoglobe.com:lina-noreply@jobstreet.com:apache@704210-web2.tristatecamera.com:webmaster@openstreetmap.org
+ deny senders = lsearch*@;/etc/exim4/blocked-senders
+ message = Rejected because $sender_address is blacklisted\nQueries to postmaster@$qualify_domain
!hosts = +relay_from_hosts
# Accept mail to postmaster in any local domain, regardless of the source,
# X-PHP-Originating-Script: <digits>:<name>.php
# X-PHP-Originating-Script: <digits>:<name>.class.php
deny condition = ${if match {$h_X-PHP-Originating-Script:}{^[0-9]+:[A-Za-z]+(\\.class)?\\.php\$}}
+ !hosts = +relay_from_hosts
message = This message failed local spam checks.
# Accept the message.
remote_smtp:
driver = smtp
+ multi_domain = false
+ tls_require_ciphers = <%= node[:ssl][:gnutls_ciphers] %>:%LATEST_RECORD_VERSION
# This transport is used for handling pipe deliveries generated by alias or
command = <%= details[:command] %>
home_directory = <%= details[:home_directory] %>
path = <%= details[:path] || "/bin:/usr/bin" %>
- return_output
+ return_fail_output
<% else -%>
driver = appendfile
<% if details[:file] -%>
# There are no rewriting specifications in this default configuration file.
begin rewrite
+*@<%= node[:fqdn] %> "${if !match {${lookup{$1}lsearch{/etc/aliases}{$value}}}{@} {$1@openstreetmap.org}fail}" Eh
<% node[:exim][:rewrites].each do |rewrite| -%>
<%= rewrite[:pattern] %> <%= rewrite[:replacement] %> <%= rewrite[:flags] %>
<% end -%>