Rev 6 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6 | Rev 13 | ||
---|---|---|---|
1 | # Options for spamassassin running in exim's local_scan (SA Exim) |
1 | # Options for spamassassin running in exim's local_scan (SA Exim) |
2 | # By Marc MERLIN <marc_soft@merlins.org> - Initial version: April 2002 |
2 | # By Marc MERLIN <marc_soft@merlins.org> - Initial version: April 2002 |
3 | # Sander Smeenk <ssmeenk@freshdot.net> - Improvements: March 2004 |
3 | # Sander Smeenk <ssmeenk@freshdot.net> - Improvements: March 2004 |
4 | # |
4 | # |
5 | # Sample file version 1.16 for SA-Exim 4.1 - 2005/01/10 |
5 | # Sample file version 1.16 for SA-Exim 4.1 - 2005/01/10 |
6 | # |
6 | # |
7 | # The parse routine is minimalistic. It expects "option: value" (exactly |
7 | # The parse routine is minimalistic. It expects "option: value" (exactly |
8 | # one space after the colon, and none before). You should put long lines |
8 | # one space after the colon, and none before). You should put long lines |
9 | # on one line. The parser isn't capable of parsing multiline values. |
9 | # on one line. The parser isn't capable of parsing multiline values. |
10 | # |
10 | # |
11 | # SA threshold values are parsed as floats and other numerical options |
11 | # SA threshold values are parsed as floats and other numerical options |
12 | # are ints. String options have to be set. To unset them, comment out the |
12 | # are ints. String options have to be set. To unset them, comment out the |
13 | # variable, don't set it to nothing. |
13 | # variable, don't set it to nothing. |
14 | # |
14 | # |
15 | # READ THIS: |
15 | # READ THIS: |
16 | # --------- |
16 | # --------- |
17 | # Watch your logs, you will get errors and your messages will get |
17 | # Watch your logs, you will get errors and your messages will get |
18 | # temporarily bounced if expansions fail. Watch your logs! |
18 | # temporarily bounced if expansions fail. Watch your logs! |
19 | # |
19 | # |
20 | # If you are afraid that spammers might use a header that is used here |
20 | # If you are afraid that spammers might use a header that is used here |
21 | # as a default, have exim set it to another value than 'Yes' and check |
21 | # as a default, have exim set it to another value than 'Yes' and check |
22 | # here for that other value. |
22 | # here for that other value. |
23 | # |
23 | # |
24 | # For every expansion, anything that doesn't expand to "" or "0" |
24 | # For every expansion, anything that doesn't expand to "" or "0" |
25 | # (without quotes) will be considered true. If you set the string to 1, |
25 | # (without quotes) will be considered true. If you set the string to 1, |
26 | # it will be true without going through exim's condition evaluator (and |
26 | # it will be true without going through exim's condition evaluator (and |
27 | # if you leave it unset, it will default to 0) |
27 | # if you leave it unset, it will default to 0) |
28 | # |
28 | # |
29 | # You should not put double quotes around expressions! |
29 | # You should not put double quotes around expressions! |
30 | # --- snip --- |
30 | # --- snip --- |
31 | 31 | ||
32 | # Enable basic verbose output by default. Watch your logs! |
32 | # Enable basic verbose output by default. Watch your logs! |
33 | SAEximDebug: 1 |
33 | SAEximDebug: 1 |
34 | 34 | ||
35 | 35 | ||
36 | # Default path is /usr/bin/spamc, but you can change it here |
36 | # Default path is /usr/bin/spamc, but you can change it here |
37 | SAspamcpath: /usr/bin/spamc |
37 | SAspamcpath: /usr/bin/spamc |
38 | 38 | ||
39 | # Which characters are retained from a Message-Id header (for safety, we |
39 | # Which characters are retained from a Message-Id header (for safety, we |
40 | # remove characters that might cause problems with shell parsing) |
40 | # remove characters that might cause problems with shell parsing) |
41 | # Change the default at your own risk (you also have to change this in |
41 | # Change the default at your own risk (you also have to change this in |
42 | # the SA greylisting patch if you use that) |
42 | # the SA greylisting patch if you use that) |
43 | #SAsafemesgidchars: !#%( )*+,-.0123456789:<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_abcdefghijklmnopqrstuvwxyz{|}~ |
43 | #SAsafemesgidchars: !#%( )*+,-.0123456789:<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_abcdefghijklmnopqrstuvwxyz{|}~ |
44 | 44 | ||
45 | # If SAspamcSockPath is set spamc uses socket to connect to spamd, |
45 | # If SAspamcSockPath is set spamc uses socket to connect to spamd, |
46 | # use --socketpath pathname as argument to spamd (new in SA 2.60). |
46 | # use --socketpath pathname as argument to spamd (new in SA 2.60). |
47 | # Leave it unset if you want spamc to connect(AF_INET) to spamd at |
47 | # Leave it unset if you want spamc to connect(AF_INET) to spamd at |
48 | # 127.0.0.1 (this is the default shown in the options below), but if |
48 | # 127.0.0.1 (this is the default shown in the options below), but if |
49 | # you set it, it will override the two TCP connect options below |
49 | # you set it, it will override the two TCP connect options below |
50 | #SAspamcSockPath: /var/run/spamd.sock |
50 | #SAspamcSockPath: /var/run/spamd.sock |
51 | 51 | ||
52 | # SAspamcHost / SAspamcPort: TCP socket where your spamd is listening |
52 | # SAspamcHost / SAspamcPort: TCP socket where your spamd is listening |
53 | # Shown below are the defaults: |
53 | # Shown below are the defaults: |
54 | SAspamcHost: 127.0.0.1 |
54 | SAspamcHost: 127.0.0.1 |
55 | SAspamcPort: 783 |
55 | SAspamcPort: 783 |
56 | 56 | ||
- | 57 | # SAspamcUser: The username passed to spamc. Some tricks are needed to |
|
- | 58 | # decide on one user when there are many recipients. This string is of |
|
- | 59 | # course expanded. If unset or empty, spamc will use the user Exim |
|
- | 60 | # runs as. We suggest that you decide what username to use in the ACLs |
|
- | 61 | # and set an ACL variable. |
|
- | 62 | #SAspamcUser: $acl_m2 |
|
57 | 63 | ||
58 | # Exim configuration string to run before running SA against the message |
64 | # Exim configuration string to run before running SA against the message |
59 | # This decides whether SA gets run against the message or not. This |
65 | # This decides whether SA gets run against the message or not. This |
60 | # default will not reject messages if the message had SA headers but |
66 | # default will not reject messages if the message had SA headers but |
61 | # they weren't added by us. |
67 | # they weren't added by us. |
62 | SAEximRunCond: ${if and {{def:sender_host_address} {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{::1}}}} |
68 | SAEximRunCond: ${if and {{def:sender_host_address} {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{::1}}}} |
63 | # If you want more detailed control over when to run SA, it's recommended |
69 | # If you want more detailed control over when to run SA, it's recommended |
64 | # that you set an ACL variable indicating this from the acl section of |
70 | # that you set an ACL variable indicating this from the acl section of |
65 | # your Exim configuration file. The current maintainer sets acl_m0 to |
71 | # your Exim configuration file. The current maintainer sets acl_m0 to |
66 | # "noscan" if the sending host is localhost or has authenticated. |
72 | # "noscan" if the sending host is localhost or has authenticated. |
67 | #SAEximRunCond: ${if !eq{$acl_m0}{noscan}} |
73 | #SAEximRunCond: ${if !eq{$acl_m0}{noscan}} |
68 | # (This means exactly the same as ${if !eq{$acl_m0}{noscan} {true}{}}, |
74 | # (This means exactly the same as ${if !eq{$acl_m0}{noscan} {true}{}}, |
69 | # where the empty string is considered false.) |
75 | # where the empty string is considered false.) |
70 | 76 | ||
71 | #---------------------------------------------------------------------- |
77 | #---------------------------------------------------------------------- |
72 | # Remove or comment out the following line to enable sa-exim |
78 | # Remove or comment out the following line to enable sa-exim |
73 | SAEximRunCond: 0 |
79 | SAEximRunCond: 0 |
74 | #---------------------------------------------------------------------- |
80 | #---------------------------------------------------------------------- |
75 | 81 | ||
76 | # If and only if SAEximRunCond was true, and we did run SA, this |
82 | # If and only if SAEximRunCond was true, and we did run SA, this |
77 | # expression decides whether we actually consider acting upon SAdevnull, |
83 | # expression decides whether we actually consider acting upon SAdevnull, |
78 | # SApermreject, and SAtempreject if you have them set. |
84 | # SApermreject, and SAtempreject if you have them set. |
79 | # |
85 | # |
80 | # Use this to tag messages that you shouldn't reject (messages sent to |
86 | # Use this to tag messages that you shouldn't reject (messages sent to |
81 | # abuse or postmaster for instance). |
87 | # abuse or postmaster for instance). |
82 | # |
88 | # |
83 | # As an example, set acl_m0 to "canreject" if a recipient other than |
89 | # As an example, set acl_m0 to "canreject" if a recipient other than |
84 | # postmaster or abuse is encountered (and the sender isn't local). That |
90 | # postmaster or abuse is encountered (and the sender isn't local). That |
85 | # way, spammers can't circumvent blocking by sending to postmaster and |
91 | # way, spammers can't circumvent blocking by sending to postmaster and |
86 | # 99 other recipients. (If acl_m0 is taken, you'll of course have to use |
92 | # 99 other recipients. (If acl_m0 is taken, you'll of course have to use |
87 | # a different variable. |
93 | # a different variable. |
88 | #SAEximRejCond: ${if eq{$acl_m0}{canreject}} |
94 | #SAEximRejCond: ${if eq{$acl_m0}{canreject}} |
89 | 95 | ||
90 | 96 | ||
91 | # How much of the body we feed to spamassassin (in bytes) |
97 | # How much of the body we feed to spamassassin (in bytes) |
92 | # Default is 250KB |
98 | # Default is 250KB |
93 | SAmaxbody: 256000 |
99 | SAmaxbody: 256000 |
94 | 100 | ||
95 | # Do you want to feed SAmaxbody's worth of the message body if it is too big? |
101 | # Do you want to feed SAmaxbody's worth of the message body if it is too big? |
96 | # Either, you skip messages that are too big and not scan them, or you can |
102 | # Either, you skip messages that are too big and not scan them, or you can |
97 | # truncate the body and feed that to SA. |
103 | # truncate the body and feed that to SA. |
98 | # Note that SA will sometimes raise the spam score if it can't parse |
104 | # Note that SA will sometimes raise the spam score if it can't parse |
99 | # the message correctly (since the end is missing, decoding will fail) |
105 | # the message correctly (since the end is missing, decoding will fail) |
100 | # Default is 0: do not scan messages that are too big |
106 | # Default is 0: do not scan messages that are too big |
101 | # (note that this is parsed as a condition) |
107 | # (note that this is parsed as a condition) |
102 | SATruncBodyCond: 0 |
108 | SATruncBodyCond: 0 |
103 | 109 | ||
104 | # If you want SA to report_safe you need sa-exim to rewrite the body of |
110 | # If you want SA to report_safe you need sa-exim to rewrite the body of |
105 | # the message since SA encapsulates the spam as a mime attachment. |
111 | # the message since SA encapsulates the spam as a mime attachment. |
106 | # You probably want SATruncBodyCond to be 0 or else you'll end up with a |
112 | # You probably want SATruncBodyCond to be 0 or else you'll end up with a |
107 | # partial message if it's larger than SAmaxbody and it's spam |
113 | # partial message if it's larger than SAmaxbody and it's spam |
108 | # |
114 | # |
109 | # Also note that if you enable this option, any saved message will be saved |
115 | # Also note that if you enable this option, any saved message will be saved |
110 | # after the body has been modified by SA. |
116 | # after the body has been modified by SA. |
111 | # (this is not a condition as SA's report_safe is not conditional) |
117 | # (this is not a condition as SA's report_safe is not conditional) |
112 | SARewriteBody: 0 |
118 | SARewriteBody: 0 |
113 | 119 | ||
114 | # Prepend saved messages with an fake From-header to make the file look like a |
120 | # Prepend saved messages with an fake From-header to make the file look like a |
115 | # valid mbox file |
121 | # valid mbox file |
116 | SAPrependArchiveWithFrom: 1 |
122 | SAPrependArchiveWithFrom: 1 |
117 | 123 | ||
118 | # If you are archiving messages that are rejected, how much do you want |
124 | # If you are archiving messages that are rejected, how much do you want |
119 | # to archive? Default is 20MB. |
125 | # to archive? Default is 20MB. |
120 | SAmaxarchivebody: 20971520 |
126 | SAmaxarchivebody: 20971520 |
121 | 127 | ||
122 | # On errors, if you are saving messages, you probably want the entire message |
128 | # On errors, if you are saving messages, you probably want the entire message |
123 | # Default size saved (if you are saving errors) is 1GB |
129 | # Default size saved (if you are saving errors) is 1GB |
124 | SAerrmaxarchivebody: 1073741824 |
130 | SAerrmaxarchivebody: 1073741824 |
125 | 131 | ||
126 | # You can have SA-Exim add a X-SA-Exim-Rcpt-To header, which will list all |
132 | # You can have SA-Exim add a X-SA-Exim-Rcpt-To header, which will list all |
127 | # the recipients for the Email, unless the list gets bigger than |
133 | # the recipients for the Email, unless the list gets bigger than |
128 | # SAmaxrcptlistlength bytes. |
134 | # SAmaxrcptlistlength bytes. |
129 | # The default value of 0 disables the header for privacy reasons (the header |
135 | # The default value of 0 disables the header for privacy reasons (the header |
130 | # exposes Bcced recipients) |
136 | # exposes Bcced recipients) |
131 | # Any value bigger than 8000 will be ignored because there is a limit on the |
137 | # Any value bigger than 8000 will be ignored because there is a limit on the |
132 | # size of headers that you can have and exim's string_sprintf |
138 | # size of headers that you can have and exim's string_sprintf |
133 | # Note that if you are planning to use greylisting, you should set this |
139 | # Note that if you are planning to use greylisting, you should set this |
134 | # value to 8000 since SA's greylisting code needs the recipients. |
140 | # value to 8000 since SA's greylisting code needs the recipients. |
135 | SAmaxrcptlistlength: 0 |
141 | SAmaxrcptlistlength: 0 |
136 | 142 | ||
137 | # Add X-SA-Exim-Rcpt-To and X-SA-Exim-Mail-From headers before SA scans |
143 | # Add X-SA-Exim-Rcpt-To and X-SA-Exim-Mail-From headers before SA scans |
138 | # the message. |
144 | # the message. |
139 | # If this option is enabled, SARewiteBody is true, and safe_mode is |
145 | # If this option is enabled, SARewiteBody is true, and safe_mode is |
140 | # enabled in SA, you end up with the X-SA-Exim-Rcpt-To/X-SA-Exim-Mail-From in |
146 | # enabled in SA, you end up with the X-SA-Exim-Rcpt-To/X-SA-Exim-Mail-From in |
141 | # the attatched message as well without the ability to remove them later in an |
147 | # the attatched message as well without the ability to remove them later in an |
142 | # exim transport (think privacy). |
148 | # exim transport (think privacy). |
143 | # In real life this is usually not a problem because the message is spam anyway, |
149 | # In real life this is usually not a problem because the message is spam anyway, |
144 | # and if you turn this off, you lose the option to use those headers to score |
150 | # and if you turn this off, you lose the option to use those headers to score |
145 | # the message with SA. |
151 | # the message with SA. |
146 | SAaddSAEheaderBeforeSA: 1 |
152 | SAaddSAEheaderBeforeSA: 1 |
147 | 153 | ||
148 | # How many seconds you want to allow spamc to run. Exim 4.04 and better will |
154 | # How many seconds you want to allow spamc to run. Exim 4.04 and better will |
149 | # kill us after a default of 5 minutes. This however is not great, because the |
155 | # kill us after a default of 5 minutes. This however is not great, because the |
150 | # mail gets temporarily rejected |
156 | # mail gets temporarily rejected |
151 | # You should set this and have SA Exim handle the timeout itself and accept the |
157 | # You should set this and have SA Exim handle the timeout itself and accept the |
152 | # message if spamc takes too long (instead of timing out) |
158 | # message if spamc takes too long (instead of timing out) |
153 | # A value of 0 means no timeout, and we run until exim stops us. |
159 | # A value of 0 means no timeout, and we run until exim stops us. |
154 | # I know of at least one mail server (nanog's merit.edu) that will not |
160 | # I know of at least one mail server (nanog's merit.edu) that will not |
155 | # wait a full 5mn (which causes tempreject and resends), so the default is 4mn |
161 | # wait a full 5mn (which causes tempreject and resends), so the default is 4mn |
156 | #SAtimeout: 240 |
162 | #SAtimeout: 240 |
157 | 163 | ||
158 | # Do you want to save mails that were accepted because spamc timed out? |
164 | # Do you want to save mails that were accepted because spamc timed out? |
159 | # Specify a directory to enable the feature. |
165 | # Specify a directory to enable the feature. |
160 | # SA-Exim will try to create the directory if it has the permissions to do so, |
166 | # SA-Exim will try to create the directory if it has the permissions to do so, |
161 | # check your maillog for failures (or create the directory yourself and make it |
167 | # check your maillog for failures (or create the directory yourself and make it |
162 | # writeable by exim) |
168 | # writeable by exim) |
163 | SAtimeoutsave: /var/spool/exim/SAtimeoutsave |
169 | SAtimeoutsave: /var/spool/exim/SAtimeoutsave |
164 | 170 | ||
165 | # You can optionally save or not save messages that matched the above rule |
171 | # You can optionally save or not save messages that matched the above rule |
166 | SAtimeoutSavCond: 1 |
172 | SAtimeoutSavCond: 1 |
167 | 173 | ||
168 | 174 | ||
169 | # You should really create this directory for local_scan to save messages that |
175 | # You should really create this directory for local_scan to save messages that |
170 | # created an error. If you don't want this, comment out this variable |
176 | # created an error. If you don't want this, comment out this variable |
171 | # Make sure all these directories are owned by the exim user |
177 | # Make sure all these directories are owned by the exim user |
172 | # SA-Exim will try to create the directory if it has the permissions to do |
178 | # SA-Exim will try to create the directory if it has the permissions to do |
173 | # so, check your maillog for failures (or create the directory yourself and |
179 | # so, check your maillog for failures (or create the directory yourself and |
174 | # make it writeable by exim) |
180 | # make it writeable by exim) |
175 | SAerrorsave: /var/spool/exim/SAerrorsave |
181 | SAerrorsave: /var/spool/exim/SAerrorsave |
176 | 182 | ||
177 | # You can optionally save or not save messages that matched the above rule |
183 | # You can optionally save or not save messages that matched the above rule |
178 | # You should not put double quotes around the expression |
184 | # You should not put double quotes around the expression |
179 | SAerrorSavCond: 1 |
185 | SAerrorSavCond: 1 |
180 | 186 | ||
181 | # If you set to 1, SA will temporarily reject messages that generated an error |
187 | # If you set to 1, SA will temporarily reject messages that generated an error |
182 | # while they were processed (they'll still be saved if SAerrorsave is set). |
188 | # while they were processed (they'll still be saved if SAerrorsave is set). |
183 | # Otherwise (0 = false), the messages are just accepted, which seems like a |
189 | # Otherwise (0 = false), the messages are just accepted, which seems like a |
184 | # more sensible default |
190 | # more sensible default |
185 | SAtemprejectonerror: 0 |
191 | SAtemprejectonerror: 0 |
186 | 192 | ||
187 | 193 | ||
188 | ############################################################################### |
194 | ############################################################################### |
189 | # NOTE: Spamd needs to tell sa-exim that the message SA-Exim gave spamd |
195 | # NOTE: Spamd needs to tell sa-exim that the message SA-Exim gave spamd |
190 | # is spam before sa-exim will consider the SA tresholds. |
196 | # is spam before sa-exim will consider the SA tresholds. |
191 | # In other words, you cannot reject mails on SA scores if you set that |
197 | # In other words, you cannot reject mails on SA scores if you set that |
192 | # threshold to a lower threshold than SA's required_hits value. |
198 | # threshold to a lower threshold than SA's required_hits value. |
193 | # The one exception to this rule is SAtempreject (in order to let you |
199 | # The one exception to this rule is SAtempreject (in order to let you |
194 | # temporarily reject mail when you are doing greylisting, see |
200 | # temporarily reject mail when you are doing greylisting, see |
195 | # README.greylisting in the documentation for details) |
201 | # README.greylisting in the documentation for details) |
196 | ############################################################################### |
202 | ############################################################################### |
197 | 203 | ||
198 | # SA score when you start stalling the sender by sending many continuation |
204 | # SA score when you start stalling the sender by sending many continuation |
199 | # lines for up to SAteergrubetime |
205 | # lines for up to SAteergrubetime |
200 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
206 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
201 | # but you can still assign a simple float value to it |
207 | # but you can still assign a simple float value to it |
202 | # Note that this is an obvious abuse of SMTP, but eh, they started it :-) |
208 | # Note that this is an obvious abuse of SMTP, but eh, they started it :-) |
203 | # Of course, this means that each incoming spam with the right score threshold |
209 | # Of course, this means that each incoming spam with the right score threshold |
204 | # will keep an exim process busy on your machine. Make sure you can afford it. |
210 | # will keep an exim process busy on your machine. Make sure you can afford it. |
205 | # Default value is 2^20, which should disable the behavior |
211 | # Default value is 2^20, which should disable the behavior |
206 | 212 | ||
207 | # Please, don't teergrube people who relay for you or your own MXes :-) |
213 | # Please, don't teergrube people who relay for you or your own MXes :-) |
208 | # This option is left behind for backward compatibility, but you can now |
214 | # This option is left behind for backward compatibility, but you can now |
209 | # get the same result by putting a condition string in SAteergrube |
215 | # get the same result by putting a condition string in SAteergrube |
210 | # The trick is to list your score if the condition succeeds, and a really |
216 | # The trick is to list your score if the condition succeeds, and a really |
211 | # high score otherwise. |
217 | # high score otherwise. |
212 | #SAteergrube: ${if and { {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{127.0.0.2}} } {25}{1048576}} |
218 | #SAteergrube: ${if and { {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{127.0.0.2}} } {25}{1048576}} |
213 | 219 | ||
214 | # SAteergrubecond is deprecated (replaced by SAteergrube) |
220 | # SAteergrubecond is deprecated (replaced by SAteergrube) |
215 | # You used to be say whether you would apply the teergrubing score with this |
221 | # You used to be say whether you would apply the teergrubing score with this |
216 | # condition, but now that scores are conditions, it is obsolete |
222 | # condition, but now that scores are conditions, it is obsolete |
217 | #SAteergrubecond: ${if and { {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{127.0.0.2}} } {1}{0}} |
223 | #SAteergrubecond: ${if and { {!eq {$sender_host_address}{127.0.0.1}} {!eq {$sender_host_address}{127.0.0.2}} } {1}{0}} |
218 | 224 | ||
219 | # How long do you want to stall the sender (in seconds) |
225 | # How long do you want to stall the sender (in seconds) |
220 | # If you set the value too high, you might get too many exim processes running |
226 | # If you set the value too high, you might get too many exim processes running |
221 | # and run out of process slots |
227 | # and run out of process slots |
222 | # Remember, don't come crying if playing with this "feature" causes your mail |
228 | # Remember, don't come crying if playing with this "feature" causes your mail |
223 | # server to catch fire :-) |
229 | # server to catch fire :-) |
224 | SAteergrubetime: 900 |
230 | SAteergrubetime: 900 |
225 | 231 | ||
226 | # You can optionally save or not save messages that matched the above rule |
232 | # You can optionally save or not save messages that matched the above rule |
227 | SAteergrubeSavCond: 1 |
233 | SAteergrubeSavCond: 1 |
228 | 234 | ||
229 | # Do you want to save mails that you stalled for later analysis? |
235 | # Do you want to save mails that you stalled for later analysis? |
230 | # Specify a directory to enable the feature. |
236 | # Specify a directory to enable the feature. |
231 | # SA-Exim will try to create the directory if it has the permissions to do so, |
237 | # SA-Exim will try to create the directory if it has the permissions to do so, |
232 | # check your maillog for failures (or create the directory yourself and make it |
238 | # check your maillog for failures (or create the directory yourself and make it |
233 | # writeable by exim) |
239 | # writeable by exim) |
234 | SAteergrubesave: /var/spool/exim/SAteergrube |
240 | SAteergrubesave: /var/spool/exim/SAteergrube |
235 | 241 | ||
236 | # When you stall the sender, you will probably get the mail again. |
242 | # When you stall the sender, you will probably get the mail again. |
237 | # By default, we'll only save messages by message ID so that we don't save |
243 | # By default, we'll only save messages by message ID so that we don't save |
238 | # multiple copies every time the sender tries again. |
244 | # multiple copies every time the sender tries again. |
239 | # Of course, this means someone could fake someone else's message ID to |
245 | # Of course, this means someone could fake someone else's message ID to |
240 | # overwrite the saved copy of another spam. Such is life :-) |
246 | # overwrite the saved copy of another spam. Such is life :-) |
241 | SAteergrubeoverwrite: 1 |
247 | SAteergrubeoverwrite: 1 |
242 | 248 | ||
243 | 249 | ||
244 | 250 | ||
245 | # If you reach this score, the mail is accepted and tossed (/dev/nulled). |
251 | # If you reach this score, the mail is accepted and tossed (/dev/nulled). |
246 | # The default value is 2^20 which should ensure this never happens. |
252 | # The default value is 2^20 which should ensure this never happens. |
247 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
253 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
248 | # but you can still assign a simple float value to it |
254 | # but you can still assign a simple float value to it |
249 | # You should be really sure that the message is spam because the sender will |
255 | # You should be really sure that the message is spam because the sender will |
250 | # get no notification |
256 | # get no notification |
251 | #SAdevnull: 20.0 |
257 | #SAdevnull: 20.0 |
252 | 258 | ||
253 | # You can optionally save or not save messages that matched the above rule |
259 | # You can optionally save or not save messages that matched the above rule |
254 | SAdevnullSavCond: 1 |
260 | SAdevnullSavCond: 1 |
255 | 261 | ||
256 | # Do you want to save mails that are tossed? |
262 | # Do you want to save mails that are tossed? |
257 | # Specify a directory to enable the feature. |
263 | # Specify a directory to enable the feature. |
258 | # This is just in case you do want to keep a copy of the alledge spams somewhere |
264 | # This is just in case you do want to keep a copy of the alledge spams somewhere |
259 | # Messages are saved by unixdate_Message-Id or just unix date if there is no |
265 | # Messages are saved by unixdate_Message-Id or just unix date if there is no |
260 | # Message-Id. |
266 | # Message-Id. |
261 | # SA-Exim will try to create the directory if it has the permissions to do so, |
267 | # SA-Exim will try to create the directory if it has the permissions to do so, |
262 | # check your maillog for failures (or create the directory yourself and make it |
268 | # check your maillog for failures (or create the directory yourself and make it |
263 | # writeable by exim) |
269 | # writeable by exim) |
264 | SAdevnullsave: /var/spool/exim/SAdevnull |
270 | SAdevnullsave: /var/spool/exim/SAdevnull |
265 | 271 | ||
266 | 272 | ||
267 | 273 | ||
268 | # SA score when you start rejecting Emails (this is better than the above as |
274 | # SA score when you start rejecting Emails (this is better than the above as |
269 | # it can notify the sender in case you reject non-spam by mistake) |
275 | # it can notify the sender in case you reject non-spam by mistake) |
270 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
276 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
271 | # but you can still assign a simple float value to it |
277 | # but you can still assign a simple float value to it |
272 | # Default value is 2^20, which should disable the behavior if you comment out |
278 | # Default value is 2^20, which should disable the behavior if you comment out |
273 | # the line below |
279 | # the line below |
274 | SApermreject: 12.0 |
280 | SApermreject: 12.0 |
275 | 281 | ||
276 | # You can optionally save or not save messages that matched the above rule |
282 | # You can optionally save or not save messages that matched the above rule |
277 | SApermrejectSavCond: 1 |
283 | SApermrejectSavCond: 1 |
278 | 284 | ||
279 | # Do you want to save mails that are rejected? |
285 | # Do you want to save mails that are rejected? |
280 | # Specify a directory to enable the feature. |
286 | # Specify a directory to enable the feature. |
281 | # SA-Exim will try to create the directory if it has the permissions to do so, |
287 | # SA-Exim will try to create the directory if it has the permissions to do so, |
282 | # check your maillog for failures (or create the directory yourself and make it |
288 | # check your maillog for failures (or create the directory yourself and make it |
283 | # writeable by exim) |
289 | # writeable by exim) |
284 | SApermrejectsave: /var/spool/exim/SApermreject |
290 | SApermrejectsave: /var/spool/exim/SApermreject |
285 | 291 | ||
286 | 292 | ||
287 | 293 | ||
288 | # SA score when you start returning a temporary reject. |
294 | # SA score when you start returning a temporary reject. |
289 | # There are few reasons to use this, except if you're reading your tempreject |
295 | # There are few reasons to use this, except if you're reading your tempreject |
290 | # save folder (see below) and ajusting scores on the fly, or if you are using |
296 | # save folder (see below) and ajusting scores on the fly, or if you are using |
291 | # greylisting |
297 | # greylisting |
292 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
298 | # This is now a string (without quotes) that gets evaluated at runtime by exim |
293 | # but you can still assign a simple float value to it |
299 | # but you can still assign a simple float value to it |
294 | # Default value is 2^20, which should disable the behavior |
300 | # Default value is 2^20, which should disable the behavior |
295 | #SAtempreject: 9.0 |
301 | #SAtempreject: 9.0 |
296 | 302 | ||
297 | # You can optionally save or not save messages that matched the above rule |
303 | # You can optionally save or not save messages that matched the above rule |
298 | SAtemprejectSavCond: 1 |
304 | SAtemprejectSavCond: 1 |
299 | 305 | ||
300 | # Do you want to save mails that are temporarily rejected? |
306 | # Do you want to save mails that are temporarily rejected? |
301 | # Specify a directory to enable the feature. |
307 | # Specify a directory to enable the feature. |
302 | # You could use this to analyse what SA is bouncing and adding an allow rule |
308 | # You could use this to analyse what SA is bouncing and adding an allow rule |
303 | # to accept the mail next time it is sent back to you |
309 | # to accept the mail next time it is sent back to you |
304 | # SA-Exim will try to create the directory if it has the permissions to do so, |
310 | # SA-Exim will try to create the directory if it has the permissions to do so, |
305 | # check your maillog for failures (or create the directory yourself and make it |
311 | # check your maillog for failures (or create the directory yourself and make it |
306 | # writeable by exim) |
312 | # writeable by exim) |
307 | SAtemprejectsave: /var/spool/exim/SAtempreject |
313 | SAtemprejectsave: /var/spool/exim/SAtempreject |
308 | 314 | ||
309 | # When you send back a temp reject code, you will get the mail again. |
315 | # When you send back a temp reject code, you will get the mail again. |
310 | # By default, we'll only save messages by message ID so that we don't save |
316 | # By default, we'll only save messages by message ID so that we don't save |
311 | # multiple copies every time the sender tries again. |
317 | # multiple copies every time the sender tries again. |
312 | # Of course, this means someone could fake someone else's message ID to |
318 | # Of course, this means someone could fake someone else's message ID to |
313 | # overwrite the saved copy of another spam. Such is life :-) |
319 | # overwrite the saved copy of another spam. Such is life :-) |
314 | SAtemprejectoverwrite: 1 |
320 | SAtemprejectoverwrite: 1 |
315 | 321 | ||
316 | # See README.greylisting in the documentation for the following options |
322 | # See README.greylisting in the documentation for the following options |
317 | # This is the string that SpamAssassin adds if the message is whitelisted |
323 | # This is the string that SpamAssassin adds if the message is whitelisted |
318 | # We use this to optionally increase the score needed for a tempreject |
324 | # We use this to optionally increase the score needed for a tempreject |
319 | # (in order to let a message through when it would otherwise have been |
325 | # (in order to let a message through when it would otherwise have been |
320 | # temprejected) |
326 | # temprejected) |
321 | # Default value is "GREYLIST_ISWHITE" (as used in the patch provided by SA-Exim) |
327 | # Default value is "GREYLIST_ISWHITE" (as used in the patch provided by SA-Exim) |
322 | SAgreylistiswhitestr: GREYLIST_ISWHITE |
328 | SAgreylistiswhitestr: GREYLIST_ISWHITE |
323 | 329 | ||
324 | # By how much do we temporarly raise tempreject to allow a mail in when it |
330 | # By how much do we temporarly raise tempreject to allow a mail in when it |
325 | # would otherwise have been temp rejected (because SA flagged it was whitelisted |
331 | # would otherwise have been temp rejected (because SA flagged it was whitelisted |
326 | # by the greylisting code provided as a patch to SA in the SA-Exim distro) |
332 | # by the greylisting code provided as a patch to SA in the SA-Exim distro) |
327 | # Note that greylisting will not work in until you patch SA with the greylist |
333 | # Note that greylisting will not work in until you patch SA with the greylist |
328 | # function |
334 | # function |
329 | # Note that you most likely want |
335 | # Note that you most likely want |
330 | # SAtempreject + SAgreylistraisetempreject <= SApermreject |
336 | # SAtempreject + SAgreylistraisetempreject <= SApermreject |
331 | # Default value is 3.0 but you'd probably to lower the tempreject score and |
337 | # Default value is 3.0 but you'd probably to lower the tempreject score and |
332 | # increase this one (see README.greylisting) |
338 | # increase this one (see README.greylisting) |
333 | SAgreylistraisetempreject: 3.0 |
339 | SAgreylistraisetempreject: 3.0 |
334 | 340 | ||
335 | 341 | ||
336 | # Do you want to save mails that are flagged as spam by SA, but not rejected by |
342 | # Do you want to save mails that are flagged as spam by SA, but not rejected by |
337 | # any of the above thresholds? Specify a directory to enable the feature. |
343 | # any of the above thresholds? Specify a directory to enable the feature. |
338 | # That's one way to track mails thare are going through even though they were |
344 | # That's one way to track mails thare are going through even though they were |
339 | # flagged by SA (note that you could also save them in exim's system_filter, |
345 | # flagged by SA (note that you could also save them in exim's system_filter, |
340 | # although copies saved here happen before exim makes modification to the |
346 | # although copies saved here happen before exim makes modification to the |
341 | # message like rewriting) |
347 | # message like rewriting) |
342 | # SA-Exim will try to create the directory if it has the permissions to do so, |
348 | # SA-Exim will try to create the directory if it has the permissions to do so, |
343 | # check your maillog for failures (or create the directory yourself and make it |
349 | # check your maillog for failures (or create the directory yourself and make it |
344 | # writeable by exim) |
350 | # writeable by exim) |
345 | SAspamacceptsave: /var/spool/exim/SAspamaccept |
351 | SAspamacceptsave: /var/spool/exim/SAspamaccept |
346 | 352 | ||
347 | # You can control which messages you want saved if you only want a subset |
353 | # You can control which messages you want saved if you only want a subset |
348 | SAspamacceptSavCond: 0 |
354 | SAspamacceptSavCond: 0 |
349 | 355 | ||
350 | 356 | ||
351 | # Do you want to save mails that are not flagged as spam by SA |
357 | # Do you want to save mails that are not flagged as spam by SA |
352 | # Specify a directory to enable the feature. |
358 | # Specify a directory to enable the feature. |
353 | # This is only here for completeness, if you want to save all messages not |
359 | # This is only here for completeness, if you want to save all messages not |
354 | # flagged as spam by SA (you could also do this in system_filter) |
360 | # flagged as spam by SA (you could also do this in system_filter) |
355 | # SA-Exim will try to create the directory if it has the permissions to do so, |
361 | # SA-Exim will try to create the directory if it has the permissions to do so, |
356 | # check your maillog for failures (or create the directory yourself and make it |
362 | # check your maillog for failures (or create the directory yourself and make it |
357 | # writeable by exim) |
363 | # writeable by exim) |
358 | SAnotspamsave: /var/spool/exim/SAnotspam |
364 | SAnotspamsave: /var/spool/exim/SAnotspam |
359 | 365 | ||
360 | # You can control which messages you want saved if you only want a subset |
366 | # You can control which messages you want saved if you only want a subset |
361 | SAnotspamSavCond: 0 |
367 | SAnotspamSavCond: 0 |
362 | 368 | ||
363 | # All the following strings can take one '%s' which will be replaced by |
369 | # All the following strings can take one '%s' which will be replaced by |
364 | # spamstatus: "SA score, trigger score" |
370 | # spamstatus: "SA score, trigger score" |
365 | SAmsgteergrubewait: Wait for more output |
371 | SAmsgteergrubewait: Wait for more output |
366 | SAmsgteergruberej: Please try again later |
372 | SAmsgteergruberej: Please try again later |
367 | SAmsgpermrej: Rejected |
373 | SAmsgpermrej: Rejected |
368 | SAmsgtemprej: Please try again later |
374 | SAmsgtemprej: Please try again later |
369 | # This string is a static string, do not include "%s" |
375 | # This string is a static string, do not include "%s" |
370 | SAmsgerror: Temporary local error while processing message, please contact postmaster. |
376 | SAmsgerror: Temporary local error while processing message, please contact postmaster. |