X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fexim%2Ftemplates%2Feximconf.erb;h=131550e771d3343121ec85956ea016de1117eb86;hb=a3cb066139d0248b252a880ce7518ef3ca05bcf1;hp=0f1f55c7c8e1b146be82b2cfdc4821ca61253fe6;hpb=a6e532fc8a68bba88b6ab13dce2d902d73c049d8;p=mirror%2Fdsa-puppet.git diff --git a/modules/exim/templates/eximconf.erb b/modules/exim/templates/eximconf.erb index 0f1f55c7c..131550e77 100644 --- a/modules/exim/templates/eximconf.erb +++ b/modules/exim/templates/eximconf.erb @@ -76,7 +76,7 @@ # MAIN CONFIGURATION SETTINGS # ###################################################################### -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> perl_startup = do '/etc/exim4/exim_surbl.pl' <%- end -%> @@ -87,7 +87,7 @@ perl_startup = do '/etc/exim4/exim_surbl.pl' acl_smtp_helo = check_helo acl_smtp_rcpt = ${if ={$interface_port}{587} {check_submission}{check_recipient}} acl_smtp_data = check_message -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> acl_smtp_mime = acl_check_mime <%- end -%> acl_smtp_predata = acl_check_predata @@ -119,7 +119,7 @@ localpartlist local_only_users = lsearch;/etc/exim4/localusers localpartlist postmasterish = postmaster : abuse : hostmaster -hostlist debianhosts = : 127.0.0.1 : /var/lib/misc/thishost/debianhosts +hostlist debianhosts = <; ; 127.0.0.1 ; ::1 ; /var/lib/misc/thishost/debianhosts hostlist reservedaddrs = <%= nodeinfo['reservedaddrs'] %> @@ -169,7 +169,7 @@ timeout_frozen_after=14d message_size_limit = 100M message_logs = false smtp_accept_max_per_host = ${if match_ip {$sender_host_address}{+debianhosts}{0}{7}} -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> smtp_accept_max = 300 smtp_accept_queue = 200 smtp_accept_queue_per_connection = 50 @@ -188,7 +188,7 @@ check_spool_space = 20M delay_warning = -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> message_body_visible = 5000 queue_run_max = 50 deliver_queue_load_max = 50 @@ -526,6 +526,7 @@ check_recipient: set acl_m_prf = $acl_m_rprf defer condition = ${if eq{$acl_m_prf}{$acl_m_rprf}{no}{yes}} + message = Different profile, please retry log_message = Only one profile at a time, please # Defer after too many bad RCPT TO's. Legit MTAs will retry later. @@ -628,12 +629,6 @@ check_recipient: warn condition = ${if eq{$acl_m_prf}{localonly}} set acl_m_lrc = ${if eq{$acl_m_lrc}{}{$local_part@$domain}{$acl_m_lrc, $local_part@$domain}} -<%- if 0 == 1 -%> - deny message = address $sender_host_address is listed in $dnslist_domain; $dnslist_text - hosts = !+debianhosts - dnslists = rbl.debian.net : rbl.debian.net/$sender_address_domain - -<%- end -%> <%- if nodeinfo['packagesmaster'] -%> warn condition = ${if eq {$acl_m_prf}{PackagesMail}} condition = ${if eq {$sender_address}{$local_part@$domain}} @@ -847,7 +842,7 @@ check_recipient: deny message = relay not permitted -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> acl_check_mime: discard condition = ${if <{$message_size}{256000}} @@ -947,7 +942,7 @@ check_message: message = X-malware detected: $malware_name <%- end -%> -<%- if nodeinfo.has_key?('heavy_exim') and not nodeinfo['heavy_exim'].empty? -%> +<%- if nodeinfo.has_key?('heavy_exim') and nodeinfo['heavy_exim'] -%> discard condition = ${if <{$message_size}{256000}} condition = ${if eq {$acl_m_prf}{blackhole}} set acl_m_srb = ${perl{surblspamcheck}} @@ -1133,7 +1128,7 @@ userforward_verify: user = Debian-exim no_check_local_user directory_transport = address_directory -<%- if hostname == "master.debian.org" -%> +<%- if fqdn == "master.debian.org" -%> domains = +local_domains : debian.org <%- else -%> domains = +local_domains @@ -1161,13 +1156,37 @@ userforward_verify: router_home_directory = ${lookup passwd{$local_part}{${extract{5}{:}{$value}}}fail} verify_only +# This is a senmailesque alias file lookup +virt_aliases: + debug_print = "R: virt_aliases for $local_part@$domain" + driver = redirect + allow_defer + allow_fail + data = ${if exists{\ + ${extract{directory}{VDOMAINDATA}{${value}/aliases}}}\ + {${lookup{$local_part}lsearch*{\ + ${extract{directory}{VDOMAINDATA}{$value/aliases}}\ + }}}} + directory_transport = address_directory + domains = +virtual_domains + file_transport = ${if eq {${extract{group_writable}{VDOMAINDATA}}}{true}{address_file_group}{address_file}} + cannot_route_message = Unknown user + group = ${extract{group}{VDOMAINDATA}} + headers_add = "Delivered-To: ${local_part}${local_part_suffix}@${domain}" + pipe_transport = address_pipe + qualify_preserve_domain + retry_use_local_part + transport_current_directory = ${extract{directory}{VDOMAINDATA}} + transport_home_directory = ${extract{directory}{VDOMAINDATA}} + user = ${extract{user}{VDOMAINDATA}} + userforward: debug_print = "R: userforward for $local_part${local_part_suffix}@$domain" driver = redirect check_ancestor check_local_user directory_transport = address_directory -<%- if hostname == "master.debian.org" -%> +<%- if fqdn == "master.debian.org" -%> domains = +local_domains : debian.org <%- else -%> domains = +local_domains @@ -1199,7 +1218,7 @@ procmail: debug_print = "R: procmail for $local_part@$domain" driver = accept check_local_user -<%- if hostname == "master.debian.org" -%> +<%- if fqdn == "master.debian.org" -%> domains = +local_domains : debian.org <%- else -%> domains = +local_domains @@ -1335,30 +1354,6 @@ virt_direct_verify: transport_current_directory = ${extract{directory}{VDOMAINDATA}} verify_only -# This is a senmailesque alias file lookup -virt_aliases: - debug_print = "R: virt_aliases for $local_part@$domain" - driver = redirect - allow_defer - allow_fail - data = ${if exists{\ - ${extract{directory}{VDOMAINDATA}{${value}/aliases}}}\ - {${lookup{$local_part}lsearch*{\ - ${extract{directory}{VDOMAINDATA}{$value/aliases}}\ - }}}} - directory_transport = address_directory - domains = +virtual_domains - file_transport = ${if eq {${extract{group_writable}{VDOMAINDATA}}}{true}{address_file_group}{address_file}} - cannot_route_message = Unknown user - group = ${extract{group}{VDOMAINDATA}} - headers_add = "Delivered-To: ${local_part}${local_part_suffix}@${domain}" - pipe_transport = address_pipe - qualify_preserve_domain - retry_use_local_part - transport_current_directory = ${extract{directory}{VDOMAINDATA}} - transport_home_directory = ${extract{directory}{VDOMAINDATA}} - user = ${extract{user}{VDOMAINDATA}} - # This is a qmailesque deliver into a directory of .forward files virt_direct: debug_print = "R: virt_direct for $local_part@$domain"