dudedude
Newbie | Ðåäàêòèðîâàòü | Ïðîôèëü | Ñîîáùåíèå | Öèòèðîâàòü | Ñîîáùèòü ìîäåðàòîðó SPAMCBIN=__ISP_SPAMCBIN__ EXIMBIN=/usr/sbin/exim4 log_selector = \ +all_parents \ +lost_incoming_connection \ +received_sender \ +received_recipients \ +tls_cipher +tls_peerdn \ +smtp_confirmation \ +smtp_syntax_error \ +smtp_protocol_error # CONFDIR=__ISP_CONFDIR__ # daemon_smtp_port = 25:465 # tls_certificate = CONFDIR/certificate.crt # tls_privatekey = CONFDIR/certificate.key # tls_on_connect_ports = 465 .ifdef MAILMAN_ENABLE MAILMAN_HOME=__MAILMAN_HOME__ MAILMAN_WRAP=__MAILMAN_WRAP__ MAILMAN_USER=__MAILMAN_USER__ MAILMAN_GROUP=__MAILMAN_GROUP__ .endif trusted_groups = mgrsecure trusted_users = www-data domainlist local_domains = lsearch;/etc/exim4/domains domainlist dummy_domains = hostlist relay_from_hosts = 127.0.0.1 : 78.46.103.170 domainlist relay_to_domains = lsearch;/etc/exim4/domains exim_user = Debian-exim exim_group = Debian-exim never_users = root host_lookup = * rfc1413_hosts = * rfc1413_query_timeout = 0s ignore_bounce_errors_after = 2d timeout_frozen_after = 7d acl_smtp_rcpt = acl_check_rcpt acl_smtp_data = acl_check_data acl_smtp_vrfy = accept smtp_banner = "$primary_hostname, ESMTP EXIM $version_number" smtp_accept_max = 20 smtp_accept_max_per_connection = 1000 remote_max_parallel = 2 split_spool_directory = true message_size_limit = 32M helo_allow_chars = _ smtp_enforce_sync = true syslog_timestamp = no smtp_return_error_details = true bounce_return_body = true bounce_return_message = true warn_message_file = /etc/exim4/warn_message_file bounce_message_file = /etc/exim4/bounce_message_file ##DKIM DKIM_DOMAIN = ${lc:${domain:$h_from:}} DKIM_FILE = /usr/local/etc/exim/dkim/${lc:${domain:$h_from:}}.key DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}} begin acl acl_check_rcpt: accept hosts = net-lsearch;/etc/exim4/whitelist deny hosts = net-lsearch;/etc/exim4/blacklist message = $host_data deny message = Restricted characters in address domains = +local_domains local_parts = ^[.] : ^.*[@%!/|] deny message = Restricted characters in address domains = !+local_domains local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ accept local_parts = postmaster verify = recipient domains = +local_domains require verify = sender accept hosts = +relay_from_hosts control = submission accept authenticated = * condition = ${if eq{${extract{5}{:}{${lookup{$authenticated_id}lsearch{/etc/exim4/passwd}}}}}{no} {yes}{no}} condition = ${if eq{${extract{3}{:}{${lookup{${domain:$authenticated_id}}lsearch{/etc/exim4/domains}}}}}{no} {yes}{no}} control = submission/domain= deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text dnslists = ${readfile {/etc/exim4/dnsblists}{:}} require message = relay not permitted domains = +local_domains : +relay_to_domains require verify = recipient .ifdef POSTGREY_SOCKET defer log_message = greylisted host $sender_host_address set acl_m0 = request=smtpd_access_policy\nprotocol_state=RCPT\nprotocol_name=${uc:$received_protocol}\nhelo_name=$sender_helo_name\nclient_address=$sender_host_address\nclient_name=$sender_host_name\nsender=$sender_address\nrecipient=$local_part@$domain\ninstance=$sender_host_address/$sender_address/$local_part@$domain\n\n set acl_m0 = ${sg{${readsocket{POSTGREY_SOCKET}{$acl_m0}{5s}{}{action=DUNNO}}}{action=}{}} message = ${sg{$acl_m0}{^\\w+\\s*}{}} condition = ${if eq{${uc:${substr{0}{5}{$acl_m0}}}}{DEFER}{true}{false}} .endif accept acl_check_data: accept begin routers dnslookup: driver = dnslookup domains = !+dummy_domains transport = remote_smtp ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 self = pass no_more disabled_domains: driver = redirect condition = ${extract{3}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} allow_fail = yes data = :fail: Domain disabled no_more disabled_users: driver = redirect condition = ${extract{5}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}} allow_fail = yes data = :fail: User disabled no_more local_domains: driver = redirect data = ${quote_local_part:$local_part}@${extract{1}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} cannot_route_message = Unknown user no_more .ifdef SA_ENABLE spamcheck_router: no_verify condition = "${if and { {!def:h_X-Spam-Flag:} {!eq {$received_protocol}{spam-scanned}}} {1}{0}}" driver = accept transport = spamcheck .endif group_aliases: driver = redirect data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/aliases}}}} condition = ${if and{\ {exists{/etc/exim4/aliases}}\ {eq {${extract{2}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/aliases}}}}} {group} }\ } {yes} {no} } redirect_router = a_dnslookup aliases: driver = redirect data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/aliases}}}} condition = ${if exists{/etc/exim4/aliases} {yes} {no} } aliases_pipe: driver = redirect pipe_transport = address_pipe data = ${lookup {$local_part@$domain} lsearch{/etc/exim4/pipe-aliases}} condition =${lookup {$local_part@$domain} lsearch{/etc/exim4/pipe-aliases} {yes} {no} } local_users: driver = redirect condition = ${lookup {$local_part@$domain} lsearch {/etc/exim4/passwd} {yes} {no} } data = $local_part@$domain redirect_router = autoreplay .ifdef MAILMAN_ENABLE mailman: driver = accept require_files = MAILMAN_HOME/lists/$local_part/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : -confirm+* : -join : -leave : -owner : -request : -admin : -subscribe : -unsubscribe transport = mailman mailman_isp: driver = accept require_files = MAILMAN_HOME/lists/$local_part-$domain/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : -confirm+* : -join : -leave : -owner : -request : -admin : -subscribe : -unsubscribe transport = mailman_isp .endif catchall_for_domains: driver = redirect headers_add = X-redirected: yes data = ${extract{2}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} file_transport = local_delivery unknown_users: driver = redirect allow_fail = yes data = :fail: Unknown user no_more autoreplay: driver = accept condition = ${if exists{${extract{4}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}}/message.txt} {yes} {no}} retry_use_local_part transport = address_reply unseen localuser: driver = accept transport = local_delivery # Same routers without autoreplay a_dnslookup: driver = dnslookup domains = !+dummy_domains transport = remote_smtp ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 self = pass no_more a_disabled_domains: driver = redirect condition = ${extract{3}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} allow_fail = yes data = :fail: Domain disabled no_more a_disabled_users: driver = redirect condition = ${extract{5}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}} allow_fail = yes data = :fail: User disabled no_more a_local_domains: driver = redirect data = ${quote_local_part:$local_part}@${extract{1}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} cannot_route_message = Unknown user redirect_router = a_dnslookup no_more a_aliases: driver = redirect data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/aliases}}}} condition = ${if exists{/etc/exim4/aliases} {yes} {no} } redirect_router = a_dnslookup a_aliases_pipe: driver = accept transport = aliases_pipe condition = ${lookup {$local_part@$domain} lsearch {/etc/exim4/pipe-aliases} {yes} {no} } a_local_users: driver = accept transport = local_delivery condition = ${lookup {$local_part@$domain} lsearch {/etc/exim4/passwd} {yes} {no} } .ifdef MAILMAN_ENABLE a_mailman: driver = accept require_files = MAILMAN_HOME/lists/$local_part/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : -confirm+* : -join : -leave : -owner : -request : -admin : -subscribe : -unsubscribe transport = mailman a_mailman_isp: driver = accept require_files = MAILMAN_HOME/lists/$local_part-$domain/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : -confirm+* : -join : -leave : -owner : -request : -admin : -subscribe : -unsubscribe transport = mailman_isp .endif a_catchall_for_domains: driver = redirect headers_add = X-redirected: yes data = ${extract{2}{:}{${lookup{$domain}lsearch{/etc/exim4/domains}}}} file_transport = local_delivery redirect_router = a_dnslookup begin transports remote_smtp: driver = smtp interface = ${if exists {/etc/exim4/mail_ips}{${lookup{$sender_address_domain}lsearch{/etc/exim4/mail_ips}{$value}{}}}{}} helo_data = ${lookup dnsdb{ptr=$sending_ip_address}{$value}{$primary_hostname}} dkim_domain = DKIM_DOMAIN dkim_selector = dkim dkim_private_key = DKIM_PRIVATE_KEY local_delivery: driver = appendfile file = ${extract{4}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}}/mbox delivery_date_add envelope_to_add return_path_add mode = 0660 quota = ${extract{3}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}}M quota_warn_threshold = 75% use_lockfile = no no_mode_fail_narrower user = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}} group = ${extract{2}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}} address_pipe: driver = pipe return_output aliases_pipe: driver = pipe command = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/pipe-aliases}}}} use_shell address_reply: driver = autoreply headers = ${readfile{${extract{4}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim4/passwd}}}}/message.txt}} to = $sender_address .ifdef MAILMAN_ENABLE mailman_isp: driver = pipe command = MAILMAN_WRAP '${if def:local_part_suffix {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} {post}}' $local_part-$domain current_directory = MAILMAN_HOME home_directory = MAILMAN_HOME user = MAILMAN_USER group = MAILMAN_GROUP mailman: driver = pipe command = MAILMAN_WRAP '${if def:local_part_suffix {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} {post}}' $local_part current_directory = MAILMAN_HOME home_directory = MAILMAN_HOME user = MAILMAN_USER group = MAILMAN_GROUP .endif .ifdef SA_ENABLE spamcheck: debug_print = "T: spamassassin_pipe for $local_part@$domain" driver = pipe command = EXIMBIN -oMr spam-scanned -bS use_bsmtp transport_filter = SPAMCBIN home_directory = "/tmp" current_directory = "/tmp" user = Debian-exim group = Debian-exim return_fail_output message_prefix = message_suffix = .endif begin retry * * F,2h,15m; G,16h,1h,1.5; F,4d,6h begin rewrite .ifdef MAILMAN_ENABLE \N^(.*<)?([^<]*)@([^>]*).*$\N "${if exists{MAILMAN_HOME/lists/${sg{$2}{-$3.*}{-$3}}/config.pck} {${sg{$0} {-$3} {}}} {$0} }" S \N^(.*<)?([^<]*)@([^>]*).*$\N "${if exists{MAILMAN_HOME/lists/${sg{$2}{-$3.*}{-$3}}/config.pck} {${sg{$0} {-$3} {}}} {$0} }" .endif begin authenticators cram: driver = cram_md5 public_name = CRAM-MD5 server_secret = ${extract {6} {:} {${lookup{$1}lsearch{/etc/exim4/passwd}}}} server_set_id = $1 plain: driver = plaintext public_name = PLAIN server_prompts = : server_condition = ${if and{{!eq{$3}{}} {eq {$3} {${extract {6} {:} {${lookup{$2}lsearch{/etc/exim4/passwd}}}}}}} {yes} {no} } server_set_id = $2 login: driver = plaintext public_name = LOGIN server_prompts = "Username:: : Password::" server_condition = ${if and{{!eq{$2}{}} {eq {$2} {${extract {6} {:} {${lookup{$1}lsearch{/etc/exim4/passwd}}}}}}} {yes} {no} } server_set_id = $1 |