linccce

Exim conf

Feb 27th, 2014
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.17 KB | None | 0 0
  1. # SpamBlockerTechnology* powered exim.conf, Version 4.1
  2. # 19-Apr-1011 16.14 (-0700)
  3. # Exim configuration file for DirectAdmin
  4. # Requires exim.pl as distributed by DirectAdmin here:
  5. # http://files.directadmin.com/services/exim.pl Dated 28-Mar-2008 or later
  6. # Includes SpamBlockerTechnology blocklists and optimizations:
  7. # http://www.nobaloney.net/downloads/spamblocker/
  8. # ClamAV optional
  9. # SpamAssassin optional
  10. # Dovecot/IMAP Mandatory
  11. # *SpamBlockerTechnology is a Trademark of NoBaloney Internet Services:
  12. # http://www.nobaloney.net
  13. #
  14. # WARNING! Do NOT use this exim.conf Exim configuration file unless you
  15. # make the required modifications to your Exim configuration
  16. # following the instructions in the README file included in this
  17. # distribution:
  18. # README-SpamBlockerVersion4exim.conf.txt
  19. #
  20. # The original exim.conf file distributed with Exim 4, includes the
  21. # following copyright notice:
  22. #
  23. # Copyright (C) 2002 University of Cambridge, Cambridge, UK
  24. #
  25. # Portions of the file are taken from the exim.conf file as
  26. # distributed with DirectAdmin (http://www.directadmin.com/)
  27. #
  28. # Copyright (C) 2003-2011 JBMC Software, St Albert, AB, Canada
  29. #
  30. # Portions of this file are written by NoBaloney Internet Services
  31. # and are copyright as follows:
  32. #
  33. # Copyright (C) 2004-2011 NoBaloney Internet Services, Riverside, Calif., USA
  34. #
  35. # The entire Exim 4 distribution, including the exim.conf file, is
  36. # distributed under the GNU GENERAL PUBLIC LICENSE, Version 2,
  37. # June 1991. If you do not have a copy of the GNU GENERAL PUBLIC LICENSE
  38. # you may download it, in it's entirety, from the website at:
  39. #
  40. # http://www.nobaloney.net/exim/gnu-gpl-v2.txt
  41. #
  42. # Thanks to all the members of the DirectAdmin community and of the exim
  43. # community who have given their # much needed and appreciated help.
  44. #
  45. # The most recent version of this file may always downloaded from the website
  46. # at: http://www.nobaloney.net/downloads/spamblocker
  47. #
  48. # MODIFICATION INSTRUCTIONS
  49. #
  50. # YOU MUST MAKE THE CHANGES TO THIS
  51. # SpamBlockerTechnology* powered exim.conf, Version 4.0
  52. # file as documented in the README file.
  53. #
  54. # The README file for this version is named:
  55. # README-SpamBlockerVersion4exim.conf.txt
  56.  
  57. # CONFIGURATION STARTS HERE
  58.  
  59. #EDIT#1:
  60. # primary_hostname =
  61.  
  62. #EDIT#2-CLAMAV:
  63. # av_scanner = clamd:/var/run/clamav/clamd
  64.  
  65. #EDIT#3:
  66. # qualify_domain =
  67.  
  68. #EDIT#4:
  69. perl_startup = do '/etc/exim.pl'
  70.  
  71. #EDIT#5:
  72. system_filter = /etc/system_filter.exim
  73.  
  74. #EDIT#6:
  75. untrusted_set_sender = *
  76.  
  77. #EDIT#7:
  78. daemon_smtp_ports = 25 : 587
  79.  
  80. #EDIT#8:
  81. local_from_check = false
  82.  
  83. #EDIT#9:
  84. message_size_limit = 20M
  85. smtp_receive_timeout = 5m
  86. smtp_accept_max = 100
  87. message_body_visible = 3000
  88. print_topbitchars = true
  89. smtp_accept_max_nonmail = 19
  90. smtp_accept_max_per_host = 10
  91. recipients_max = 150
  92. smtp_accept_queue_per_connection = 10
  93.  
  94. #EDIT#10:
  95. helo_allow_chars = _
  96.  
  97. #EDIT#11:
  98. log_selector = \
  99. +delivery_size \
  100. +sender_on_delivery \
  101. +received_recipients \
  102. +received_sender \
  103. +smtp_confirmation \
  104. +subject \
  105. +smtp_incomplete_transaction \
  106. -dnslist_defer \
  107. -host_lookup_failed \
  108. -queue_run \
  109. -rejected_header \
  110. -retry_defer \
  111. -skip_delivery \
  112. +arguments
  113.  
  114. #EDIT#12:
  115. syslog_duplication = false
  116.  
  117. #EDIT#13:
  118. acl_smtp_connect = acl_connect
  119. acl_smtp_helo = acl_check_helo
  120. acl_smtp_rcpt = acl_check_recipient
  121. acl_smtp_data = acl_check_message
  122.  
  123. #EDIT#14:
  124. addresslist whitelist_senders = lsearch;/etc/virtual/whitelist_senders
  125. addresslist blacklist_senders = lsearch;/etc/virtual/blacklist_senders
  126. domainlist blacklist_domains = lsearch;/etc/virtual/blacklist_domains
  127. domainlist whitelist_domains = lsearch;/etc/virtual/whitelist_domains
  128. domainlist local_domains = lsearch;/etc/virtual/domains
  129. domainlist relay_domains = lsearch;/etc/virtual/domains : localhost
  130. domainlist use_rbl_domains = lsearch;/etc/virtual/use_rbl_domains
  131. domainlist skip_rbl_domains = lsearch;/etc/virtual/skip_rbl_domains
  132. hostlist auth_relay_hosts = *
  133. hostlist bad_sender_hosts = lsearch;/etc/virtual/bad_sender_hosts
  134. hostlist bad_sender_hosts_ip = /etc/virtual/bad_sender_hosts_ip
  135. hostlist whitelist_hosts = lsearch;/etc/virtual/whitelist_hosts
  136. hostlist whitelist_hosts_ip = /etc/virtual/whitelist_hosts_ip
  137.  
  138. #EDIT#15:
  139. #domainlist skip_av_domains = lsearch;/etc/virtual/skip_av_domains
  140.  
  141. #EDIT#16:
  142. hostlist relay_hosts = net-lsearch;/etc/virtual/pophosts : 127.0.0.1
  143.  
  144. #EDIT#17:
  145. never_users = root
  146.  
  147. #EDIT#18:
  148. host_lookup = *
  149.  
  150. #EDIT#19:
  151. rfc1413_hosts = *
  152. rfc1413_query_timeout = 0s
  153.  
  154. #EDIT#20:
  155. deliver_queue_load_max = 50.0
  156. queue_only_load = 55.5
  157. queue_run_max = 65
  158.  
  159. #EDIT#21:
  160. ignore_bounce_errors_after = 2d
  161. timeout_frozen_after = 3d
  162.  
  163. #EDIT#22:
  164. trusted_users = mail:majordomo:apache:diradmin
  165.  
  166. #EDIT#23:
  167. tls_certificate = /etc/exim.cert
  168. tls_privatekey = /etc/exim.key
  169. tls_require_ciphers = ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
  170. tls_advertise_hosts = *
  171. #auth_over_tls_hosts = *
  172.  
  173.  
  174. # Access Control Lists
  175. ######################
  176. begin acl
  177.  
  178. #EDIT#24:
  179. acl_connect:
  180. accept hosts = *
  181.  
  182. #EDIT#25:
  183. acl_check_helo:
  184. # accept mail originating on this server unconditionally
  185. accept hosts = @[] : @
  186. # deny if the HELO pretends to be this host
  187. deny message = Bad HELO - Host impersonating hostname [$sender_helo_name]
  188. condition = ${if or { \
  189. {match{$sender_helo_name}{$smtp_active_hostname}} \
  190. {eq{$sender_helo_name}{[$interface_address]}} \
  191. } {true}{false} }
  192. # deny if the HELO is an IP address
  193. deny message = HELO is an IP address (See RFC2821 4.1.3)
  194. condition = ${if isip{$sender_helo_name}}
  195. # deny if the HELO pretends to be one of the domains hosted on the server
  196. deny message = Bad HELO - Host impersonating domain name [$sender_helo_name]
  197. condition = ${if match_domain{$sender_helo_name}{+local_domains}{true}{false}}
  198. hosts = ! +relay_hosts
  199. accept
  200.  
  201. #EDIT#26:
  202. acl_check_recipient:
  203. # block certain well-known exploits, Deny for local domains if
  204. # local parts begin with a dot or contain @ % ! / |
  205. deny domains = +local_domains
  206. local_parts = ^[.] : ^.*[@%!/|]
  207. # restrict port 587 to authenticated users only
  208. # see also daemon_smtp_ports above
  209. accept hosts = +auth_relay_hosts
  210. condition = ${if eq {$interface_port}{587} {yes}{no}}
  211. endpass
  212. message = relay not permitted, authentication required
  213. authenticated = *
  214. # Deny all Mailer-Daemon messages not for us:
  215. deny message = We didn't send the message
  216. senders = :
  217. domains = !+relay_domains
  218.  
  219. # Deny if the recipient doesn't exist:
  220. deny message = No such recipient here
  221. domains = +local_domains
  222. !verify = recipient
  223. # Remaining Mailer-Daemon messages must be for us
  224. accept senders = :
  225. domains = +relay_domains
  226.  
  227. #EDIT#27:
  228. # 1st deny checks if it's a hostname or IPV4 address with dots or IPV6 address
  229. deny message = R1: HELO should be a FQDN or address literal (See RFC 2821 4.1.1.1)
  230. !authenticated = *
  231. condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
  232. condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
  233. ## 2nd deny makes sure the hostname doesn't end with a dot (invalid)
  234. # deny message = R2: HELO should be a FQDN or address literal (See RFC 2821 4.1.1.1)
  235. # !authenticated = *
  236. # condition = ${if match{$sender_helo_name}{\N\.$\N}}
  237. # 3rd deny makes sure the hostname has no double-dots (invalid)
  238. deny message = R3: HELO should be a FQDN or address literal (See RFC 2821 4.1.1.1)
  239. !authenticated = *
  240. condition = ${if match{$sender_helo_name}{\N\.\.\N}}
  241. ## 4th deny make sure the hostname doesn't end in .home (invalid domain)
  242. # deny message = R4: HELO should be a FQDN or address literal (See RFC 2821 4.1.1.1)
  243. # !authenticated = *
  244. # condition = ${if match{$sender_helo_name}{\N\.home$\N}}
  245.  
  246. #EDIT#28:
  247. # warn domains = +skip_av_domains
  248. # set acl_m0 = $tod_epoch
  249.  
  250. #EDIT#29:
  251. deny domains = !+local_domains
  252. local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
  253.  
  254. #EDIT#30:
  255. accept hosts = :
  256. logwrite = Whitelisted as having local origination
  257.  
  258. #EDIT#31:
  259. accept sender_domains = +whitelist_domains
  260. logwrite = $sender_host_address whitelisted in local domains whitelist
  261. accept hosts = +whitelist_hosts
  262. logwrite = $sender_host_address whitelisted in local hosts whitelist
  263. accept hosts = +whitelist_hosts_ip
  264. logwrite = $sender_host_address whitelisted in local hosts IP# whitelist
  265. # accept if envelope sender is in whitelist
  266. accept senders = +whitelist_senders
  267. logwrite = $sender_host_address whitelisted in local sender whitelist
  268.  
  269. #EDIT#32:
  270. deny message = Email blocked by local blacklist
  271. domains = +use_rbl_domains
  272. domains = !+skip_rbl_domains
  273. senders = +blacklist_senders
  274.  
  275. #EDIT#33:
  276. deny message = Email blocked by local blacklist
  277. # only for domains that do want to be tested against RBLs
  278. domains = +use_rbl_domains
  279. domains = !+skip_rbl_domains
  280. hosts = +bad_sender_hosts
  281.  
  282. #EDIT#34:
  283. deny message = Email blocked by local blacklist
  284. hosts = +bad_sender_hosts_ip
  285.  
  286. #EDIT#35:
  287. accept domains = +local_domains
  288. dnslists = list.dnswl.org
  289. logwrite = $sender_host_address whitelisted in list.dnswl.org
  290.  
  291. #EDIT#36:
  292. # accept domains = +local_domains
  293. # dnslists = hostkarma.junkemailfilter.com=127.0.0.1
  294. # logwrite = $sender_host_address whitelisted in hostkarma.junkemailfilter.com
  295.  
  296. #EDIT#37:
  297. # accept local_parts = whitelist
  298. # domains = example.com
  299.  
  300. #EDIT#38:
  301. # require verify = sender
  302.  
  303. #EDIT#39:
  304. deny message = Email blockedby local blacklist
  305. domains = +use_rbl_domains
  306. domains = !+skip_rbl_domains
  307. sender_domains = +blacklist_domains
  308.  
  309. #EDIT#40:
  310. deny message = Forged Paypal Mail, not sent from PayPal.
  311. senders = *@paypal.com
  312. condition = ${if match {$sender_host_name}{\Npaypal.com$\N}{no}{yes}}
  313.  
  314. #EDIT#41:
  315. deny message = Email blocked by $dnslist_domain
  316. hosts = !+relay_hosts
  317. domains = +use_rbl_domains
  318. domains = !+skip_rbl_domains
  319. !authenticated = *
  320. dnslists = \
  321. cbl.abuseat.org : \
  322. dnsbl.njabl.org : \
  323. bl.spamcop.net : \
  324. dnsbl.ahbl.org : \
  325. combined.rbl.msrbl.net : \
  326. b.barracudacentral.org : \
  327. zen.spamhaus.org : \
  328. hostkarma.junkemailfilter.com=127.0.0.2
  329.  
  330. #EDIT#42:
  331. deny message = Email blocked by $dnslist_domain
  332. hosts = !+relay_hosts
  333. domains = +use_rbl_domains
  334. domains = !+skip_rbl_domains
  335. !authenticated = *
  336. dnslists = \
  337. rhsbl.ahbl.org/$sender_address_domain
  338.  
  339. #COMMENT#43:
  340. # ACCEPT EMAIL BEGINNING HERE
  341. # accept if address is in a local domain as long as recipient can be verified
  342. accept domains = +local_domains
  343. endpass
  344. message = "Unknown User"
  345. verify = recipient
  346. #COMMENT#44
  347. # accept if address is in a domain for which we relay as long as recipient
  348. # can be verified
  349. accept domains = +relay_domains
  350. endpass
  351. verify = recipient
  352.  
  353. #EDIT#45:
  354. accept hosts = +relay_hosts
  355. accept hosts = +auth_relay_hosts
  356. endpass
  357. message = authentication required
  358. authenticated = *
  359. # FINAL DENY EMAIL BEFORE DATA BEGINS HERE
  360. # default at end of acl causes a "deny", but line below will give
  361. # an explicit error message:
  362. deny message = relay not permitted
  363.  
  364. # ACL that is used after the DATA command (ClamAV)
  365. acl_check_message:
  366.  
  367. #EDIT#46:
  368. ## accept without checking if in skip_av_domains
  369. # accept condition =${if and {{def:acl_m0}{def:acl_m0}} {true}{false}}
  370.  
  371. ## deny if email contains malformed MIME header
  372. # deny message = This message contains malformed MIME (malformed_MIME:$demime_reason)
  373. # demime = *
  374. # condition = ${if >{$demime_errorlevel}{2}{1}{0}}
  375.  
  376. ## deny if email containing virus or other harmful content
  377. # deny message = This message contains a virus or other harmful content (virus_in_message:$malware_name)
  378. # demime = *
  379. # malware = *
  380.  
  381. ## deny if email contains an attachment of type we don't accept.
  382. # deny message = This message contains an attachment of a type which we do not accept (attachment_not_allow:.$found_extension)
  383. # demime = bat:com:pif:prf:scr:vbs:html
  384.  
  385. ## Accept but put warning into headers if message over 1000k
  386. # warn message = X-Antivirus-Scanner: Skipped scanning; size over 1000K. You should use an Antivirus Scanner
  387. # condition = ${if >={$message_size}{1000k} {1}{0}}
  388.  
  389. # warn message = X-Antivirus-Scanner: Seems clean. You should still use an Antivirus Scanner
  390.  
  391. ## The end of the acl_check_message acl (ClamAV)
  392. ## Do NOT comment out the line below or all messages will be denied.
  393. accept
  394.  
  395. # AUTHENTICATION CONFIGURATION
  396. ##############################
  397. begin authenticators
  398.  
  399. plain:
  400. driver = plaintext
  401. public_name = PLAIN
  402. server_prompts = :
  403. server_condition = "${perl{smtpauth}}"
  404. server_set_id = $2
  405.  
  406. login:
  407. driver = plaintext
  408. public_name = LOGIN
  409. server_prompts = "Username:: : Password::"
  410. server_condition = "${perl{smtpauth}}"
  411. server_set_id = $1
  412.  
  413. #EDIT#47:
  414. # REWRITE CONFIGURATION
  415. # There is no rewriting specification in this exim.conf file. If your
  416. # configuration requires one, it would go here
  417.  
  418. begin routers
  419. #EDIT#48:
  420.  
  421. lookuphost:
  422. driver = dnslookup
  423. domains = ! +local_domains
  424. ignore_target_hosts = 127.0.0.0/8
  425. condition = "${perl{check_limits}}"
  426. transport = remote_smtp
  427. no_more
  428.  
  429. # smarthost:
  430. # driver = manualroute
  431. # domains = ! +local_domains
  432. # ignore_target_hosts = 127.0.0.0/8
  433. # condition = "${perl{check_limits}}"
  434. # route_list = !+local_domains HOSTNAME-or-IP#
  435. # transport = remote_smtp
  436.  
  437. #COMMENT#49:
  438. #DIRECTORS CONFIGURATION
  439.  
  440. #EDIT#50:
  441. spamcheck_director:
  442. driver = accept
  443. condition = "${if and { \
  444. {!def:authenticated_id} \
  445. {!def:h_X-Spam-Flag:} \
  446. {!eq {$received_protocol}{spam-scanned}} \
  447. #zemiau esanti eilute tikrina tik isorinius laiskus
  448. # {!eq {$received_protocol}{local}} \
  449. {exists{/home/${lookup{$domain}lsearch{/etc/virtual/domainowners}{$value}}/.spamassassin/user_prefs}} \
  450. #zemiau esancioje eiluteje verte buvo 800k
  451. # {<{$message_size}{800k}} \
  452. } {1}{0}}"
  453. retry_use_local_part
  454. transport = spamcheck
  455. no_verify
  456.  
  457. majordomo_aliases:
  458. driver = redirect
  459. allow_defer
  460. allow_fail
  461. data = ${if exists{/etc/virtual/${domain}/majordomo/list.aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/majordomo/list.aliases}}}}
  462. domains = lsearch;/etc/virtual/domainowners
  463. file_transport = address_file
  464. group = daemon
  465. pipe_transport = majordomo_pipe
  466. retry_use_local_part
  467. no_rewrite
  468. user = majordomo
  469.  
  470. majordomo_private:
  471. driver = redirect
  472. allow_defer
  473. allow_fail
  474. #condition = "${if eq {$received_protocol} {local} {true} {false} }"
  475. condition = "${if or { {eq {$received_protocol} {local}} \
  476. {eq {$received_protocol} {spam-scanned}} } {true} {false} }"
  477. data = ${if exists{/etc/virtual/${domain}/majordomo/private.aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/majordomo/private.aliases}}}}
  478. domains = lsearch;/etc/virtual/domainowners
  479. file_transport = address_file
  480. group = daemon
  481. pipe_transport = majordomo_pipe
  482. retry_use_local_part
  483. user = majordomo
  484.  
  485. domain_filter:
  486. driver = redirect
  487. allow_filter
  488. no_check_local_user
  489. condition = "${if exists{/etc/virtual/${domain}/filter}{yes}{no}}"
  490. user = "${lookup{$domain}lsearch{/etc/virtual/domainowners}{$value}}"
  491. group = "mail"
  492. file = /etc/virtual/${domain}/filter
  493. directory_transport = address_file
  494. pipe_transport = virtual_address_pipe
  495. retry_use_local_part
  496. no_verify
  497.  
  498. uservacation:
  499. # uservacation reply to all except errors, bounces, lists
  500. driver = accept
  501. condition = ${lookup{$local_part} lsearch {/etc/virtual/${domain}/vacation.conf}{yes}{no}}
  502. require_files = /etc/virtual/${domain}/reply/${local_part}.msg
  503. # do not reply to errors and bounces or lists
  504. senders = " ! ^.*-request@.*:\
  505. ! ^owner-.*@.*:\
  506. ! ^postmaster@.*:\
  507. ! ^listmaster@.*:\
  508. ! ^mailer-daemon@.*\
  509. ! ^root@.*"
  510. transport = uservacation
  511. unseen
  512.  
  513. userautoreply:
  514. driver = accept
  515. condition = ${lookup{$local_part} lsearch {/etc/virtual/${domain}/autoresponder.conf}{yes}{no}}
  516. require_files = /etc/virtual/${domain}/reply/${local_part}.msg
  517. # do not reply to errors and bounces or lists
  518. senders = " ! ^.*-request@.*:\
  519. ! ^owner-.*@.*:\
  520. ! ^postmaster@.*:\
  521. ! ^listmaster@.*:\
  522. ! ^mailer-daemon@.*\
  523. ! ^root@.*"
  524. transport = userautoreply
  525. unseen
  526.  
  527. virtual_aliases_nostar:
  528. driver = redirect
  529. allow_defer
  530. allow_fail
  531. data = ${if exists{/etc/virtual/${domain}/aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/aliases}}}}
  532. file_transport = address_file
  533. group = mail
  534. pipe_transport = virtual_address_pipe
  535. retry_use_local_part
  536. unseen
  537. #include_domain = true
  538.  
  539. virtual_user:
  540. driver = accept
  541. condition = ${perl{save_virtual_user}}
  542. domains = lsearch;/etc/virtual/domainowners
  543. group = mail
  544. retry_use_local_part
  545. transport = virtual_localdelivery
  546.  
  547. # accept only if local_part is not in the aliases file
  548. # (this implements catch-all)
  549. virtual_aliases:
  550. driver = redirect
  551. allow_defer
  552. allow_fail
  553. condition = ${if eq {}{${if exists{/etc/virtual/${domain}/aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/aliases}}}}}{yes}{no}}
  554. data = ${if exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
  555. file_transport = address_file
  556. group = mail
  557. pipe_transport = virtual_address_pipe
  558. retry_use_local_part
  559. #include_domain = true
  560.  
  561. #COMMENT#51:
  562. drop_solo_alias:
  563. driver = redirect
  564. allow_defer
  565. allow_fail
  566. data = ${if exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch{/etc/virtual/$domain/aliases}}}}
  567. file_transport = devnull
  568. group = mail
  569. pipe_transport = devnull
  570. retry_use_local_part
  571. #include_domain = true
  572.  
  573. #COMMENT#52:
  574. userforward:
  575. driver = redirect
  576. allow_filter
  577. check_ancestor
  578. check_local_user
  579. no_expn
  580. file = $home/.forward
  581. file_transport = address_file
  582. pipe_transport = address_pipe
  583. reply_transport = address_reply
  584. no_verify
  585.  
  586. system_aliases:
  587. driver = redirect
  588. allow_defer
  589. allow_fail
  590. data = ${lookup{$local_part}lsearch{/etc/aliases}}
  591. file_transport = address_file
  592. pipe_transport = address_pipe
  593. retry_use_local_part
  594. # user = exim
  595.  
  596. localuser:
  597. driver = accept
  598. check_local_user
  599. condition = "${if eq {$domain} {$primary_hostname} {yes} {no}}"
  600. transport = local_delivery
  601.  
  602. #COMMENT#53:
  603. # TRANSPORTS CONFIGURATION
  604. begin transports
  605.  
  606. #COMMENT#54:
  607. spamcheck:
  608. driver = pipe
  609. batch_max = 100
  610. command = /usr/sbin/exim -oMr spam-scanned -bS
  611. current_directory = "/tmp"
  612. group = mail
  613. home_directory = "/tmp"
  614. log_output
  615. message_prefix =
  616. message_suffix =
  617. return_fail_output
  618. no_return_path_add
  619. transport_filter = /usr/bin/spamc -u ${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}
  620. use_bsmtp
  621. user = mail
  622.  
  623. #COMMENT#55:
  624. majordomo_pipe:
  625. driver = pipe
  626. group = daemon
  627. return_fail_output
  628. user = majordomo
  629.  
  630. #COMMENT#56:
  631. local_delivery:
  632. driver = appendfile
  633. delivery_date_add
  634. envelope_to_add
  635. directory = /home/$local_part/Maildir/
  636. directory_mode = 770
  637. create_directory = true
  638. maildir_format
  639. group = mail
  640. mode = 0660
  641. return_path_add
  642. user = ${local_part}
  643.  
  644. #COMMENT#57:
  645. virtual_localdelivery:
  646. driver = appendfile
  647. create_directory
  648. delivery_date_add
  649. directory_mode = 770
  650. envelope_to_add
  651. directory = /home/${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}/imap/${domain}/${local_part}/Maildir
  652. maildir_format
  653. group = mail
  654. mode = 660
  655. return_path_add
  656. user = "${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}"
  657. quota = ${if exists{/etc/virtual/${domain}/quota}{${lookup{$local_part}lsearch*{/etc/virtual/${domain}/quota}{$value}{0}}}{0}}
  658.  
  659. #EDIT#58:
  660. uservacation:
  661. driver = autoreply
  662. file = /etc/virtual/${domain}/reply/${local_part}.msg
  663. from = "${local_part}@${domain}"
  664. log = /etc/virtual/${domain}/reply/${local_part}.log
  665. no_return_message
  666. subject = "${if def:h_Subject: {Autoreply: ${quote:${escape:$h_Subject:}}} {I am on vacation}}"
  667. text = "\
  668. ------ ------\n\n\
  669. This message was automatically generated by email software\n\
  670. The delivery of your message has not been affected.\n\n\
  671. ------ ------\n\n"
  672. to = "${sender_address}"
  673. user = mail
  674. #once = /etc/virtual/${domain}/reply/${local_part}.once
  675. #COMMENT#59:
  676. userautoreply:
  677. driver = autoreply
  678. bcc = ${lookup{${local_part}} lsearch {/etc/virtual/${domain}/autoresponder.conf}{$value}}
  679. file = /etc/virtual/${domain}/reply/${local_part}.msg
  680. from = "${local_part}@${domain}"
  681. log = /etc/virtual/${domain}/reply/${local_part}.log
  682. no_return_message
  683. subject = "${if def:h_Subject: {Autoreply: ${quote:${escape:$h_Subject:}}} {Autoreply Message}}"
  684. to = "${sender_address}"
  685. user = mail
  686. #once = /etc/virtual/${domain}/reply/${local_part}.once
  687.  
  688. #COMMENT#60:
  689. devnull:
  690. driver = appendfile
  691. file = /dev/null
  692.  
  693. #COMMENT#61:
  694. remote_smtp:
  695. driver = smtp
  696.  
  697. #EDIT#62:
  698. address_pipe:
  699. driver = pipe
  700. return_output
  701.  
  702. virtual_address_pipe:
  703. driver = pipe
  704. group = nobody
  705. return_output
  706. user = "${lookup{$domain}lsearch* {/etc/virtual/domainowners}{$value}}"
  707.  
  708. #COMMENT#63:
  709. address_file:
  710. driver = appendfile
  711. delivery_date_add
  712. envelope_to_add
  713. return_path_add
  714.  
  715. #COMMENT#64:
  716. address_reply:
  717. driver = autoreply
  718.  
  719. #EDIT#65:
  720. # RETRY CONFIGURATION
  721. # Domain Error Retries
  722. # ------ ----- -------
  723. begin retry
  724. #* * F,2h,15m; G,16h,1h,1.5; F,4d,8h
  725. * * F,1h,6m; H,23h,7m,1.5; F,4d,1h
  726. # End of Exim 4 configuration
Advertisement
Add Comment
Please, Sign In to add comment