[c5c522c] | 1 | ## $Id: dspam.conf.in,v 1.103 2011/11/10 00:27:34 tomhendr Exp $ |
---|
| 2 | ## dspam.conf -- DSPAM configuration file |
---|
| 3 | ## |
---|
| 4 | |
---|
| 5 | # |
---|
| 6 | # DSPAM Home: Specifies the base directory to be used for DSPAM storage |
---|
| 7 | # |
---|
| 8 | Home @dspam_home@ |
---|
| 9 | |
---|
| 10 | # |
---|
| 11 | # StorageDriver: Specifies the storage driver backend (library) to use. |
---|
| 12 | # You'll only need to set this if you are using dynamic storage driver plugins |
---|
| 13 | # from a binary distribution. The default build statically links the storage |
---|
| 14 | # driver (when only one is specified at configure time), overriding this |
---|
| 15 | # setting, which only comes into play if multiple storage drivers are specified |
---|
| 16 | # at configure time. When using dynamic linking, be sure to include the path |
---|
| 17 | # to the library if necessary, and some systems may use an extension other |
---|
| 18 | # than .so (e.g. OSX uses .dylib). |
---|
| 19 | # |
---|
| 20 | # Options include: |
---|
| 21 | # |
---|
| 22 | # libmysql_drv.so libpgsql_drv.so libsqlite_drv.so |
---|
| 23 | # libsqlite3_drv.so libhash_drv.so |
---|
| 24 | # |
---|
| 25 | # IMPORTANT: Switching storage drivers requires more than merely changing |
---|
| 26 | # this option. If you do not wish to lose all of your data, you will need to |
---|
| 27 | # migrate it to the new backend before making this change. |
---|
| 28 | # |
---|
| 29 | StorageDriver @libdir@/dspam/@storage_driver@ |
---|
| 30 | |
---|
| 31 | # |
---|
| 32 | # Trusted Delivery Agent: Specifies the local delivery agent DSPAM should call |
---|
| 33 | # when delivering mail as a trusted user. Use %u to specify the user DSPAM is |
---|
| 34 | # processing mail for. It is generally a good idea to allow the MTA to specify |
---|
| 35 | # the pass-through arguments at run-time, but they may also be specified here. |
---|
| 36 | # |
---|
| 37 | # Most operating system defaults: |
---|
| 38 | #TrustedDeliveryAgent "/usr/bin/procmail" # Linux |
---|
| 39 | #TrustedDeliveryAgent "/usr/bin/mail" # Solaris |
---|
| 40 | #TrustedDeliveryAgent "/usr/libexec/mail.local" # FreeBSD |
---|
| 41 | #TrustedDeliveryAgent "/usr/bin/procmail" # Cygwin |
---|
| 42 | # |
---|
| 43 | # Other popular configurations: |
---|
| 44 | #TrustedDeliveryAgent "/usr/cyrus/bin/deliver" # Cyrus |
---|
| 45 | #TrustedDeliveryAgent "/bin/maildrop" # Maildrop |
---|
| 46 | #TrustedDeliveryAgent "/usr/local/sbin/exim -oMr spam-scanned" # Exim |
---|
| 47 | # |
---|
| 48 | TrustedDeliveryAgent "@delivery_agent@" |
---|
| 49 | |
---|
| 50 | # |
---|
| 51 | # Untrusted Delivery Agent: Specifies the local delivery agent and arguments |
---|
| 52 | # DSPAM should use when delivering mail and running in untrusted user mode. |
---|
| 53 | # Because DSPAM will not allow pass-through arguments to be specified to |
---|
| 54 | # untrusted users, all arguments should be specified here. Use %u to specify |
---|
| 55 | # the user DSPAM is processing mail for. This configuration parameter is only |
---|
| 56 | # necessary if you plan on allowing untrusted processing. |
---|
| 57 | # |
---|
| 58 | #UntrustedDeliveryAgent "/usr/bin/procmail -d %u" |
---|
| 59 | |
---|
| 60 | # |
---|
| 61 | # SMTP or LMTP Delivery: Alternatively, you may wish to use SMTP or LMTP |
---|
| 62 | # delivery to deliver your message to the mail server instead of using a |
---|
| 63 | # delivery agent. You will need to configure with --enable-daemon to use host |
---|
| 64 | # delivery, however you do not need to operate in daemon mode. Specify an IP |
---|
| 65 | # address or UNIX path to a domain socket below as a host. |
---|
| 66 | # |
---|
| 67 | # If you would like to set up DeliveryHost's on a per-domain basis, use |
---|
| 68 | # the syntax: DeliveryHost.example.org 1.2.3.4 |
---|
| 69 | # |
---|
| 70 | #DeliveryHost 127.0.0.1 |
---|
| 71 | #DeliveryPort 24 |
---|
| 72 | #DeliveryIdent localhost |
---|
| 73 | #DeliveryProto LMTP |
---|
| 74 | |
---|
| 75 | # |
---|
| 76 | # FallbackDomains: If you want to specify certain domains as fallback domains, |
---|
| 77 | # enable this option. For example, you could create a user @example.org, and |
---|
| 78 | # if bob@example.org does not resolve to a known user on the system, the user |
---|
| 79 | # could default to your @example.org user. NOTE: This also requires designating |
---|
| 80 | # fallbackDomain for the domain name; |
---|
| 81 | # e.g. dspam_admin ch pref example.org fallbackDomain on |
---|
| 82 | # |
---|
| 83 | #FallbackDomains on |
---|
| 84 | |
---|
| 85 | # |
---|
| 86 | # Quarantine Agent: DSPAM's default behavior is to quarantine all mail it |
---|
| 87 | # thinks is spam. If you wish to override this behavior, you may specify |
---|
| 88 | # a quarantine agent which will be called with all messages DSPAM thinks is |
---|
| 89 | # spam. Use %u to specify the user DSPAM is processing mail for. |
---|
| 90 | # |
---|
| 91 | #QuarantineAgent "/usr/bin/procmail -d spam" |
---|
| 92 | |
---|
| 93 | # |
---|
| 94 | # DSPAM can optionally process "plused users" (addresses in the user+detail |
---|
| 95 | # form) by truncating the username just before the "+", so all internal |
---|
| 96 | # processing occurs for "user", but delivery will be performed for |
---|
| 97 | # "user+detail". This is only useful if the LDA can handle "plused users" |
---|
| 98 | # (for example Cyrus IMAP) and when configured for LMTP delivery above |
---|
| 99 | # |
---|
| 100 | #EnablePlusedDetail on |
---|
| 101 | |
---|
| 102 | # |
---|
| 103 | # Character to use as seperator between user names and address extensions. |
---|
| 104 | # If you change this value then please adjust QuarantineMailbox to use the |
---|
| 105 | # new specified character. The default is '+'. |
---|
| 106 | # |
---|
| 107 | #PlusedCharacter + |
---|
| 108 | |
---|
| 109 | # |
---|
| 110 | # Turn this feature on if you want to force DSPAM to lowercase the "plused |
---|
| 111 | # users" username. |
---|
| 112 | # |
---|
| 113 | #PlusedUserLowercase on |
---|
| 114 | |
---|
| 115 | # |
---|
| 116 | # Quarantine Mailbox: DSPAM's LMTP code can send spam mail using LMTP to a |
---|
| 117 | # "plused" mailbox (such as user+quarantine) leaving quarantine processing |
---|
| 118 | # for retraining or deletion to be performed by the LDA and the mail client. |
---|
| 119 | # "plused" mailboxes are supported by Cyrus IMAP and possibly other LDAs. If |
---|
| 120 | # you don't set/change PlusedCharacter then the mailbox name must have the + |
---|
| 121 | # since the + is the default used character. |
---|
| 122 | # |
---|
| 123 | #QuarantineMailbox +quarantine |
---|
| 124 | |
---|
| 125 | # |
---|
| 126 | # OnFail: What to do if local delivery or quarantine should fail. If set |
---|
| 127 | # to "unlearn", DSPAM will unlearn the message prior to exiting with an |
---|
| 128 | # un successful return code. The default option, "error" will not unlearn |
---|
| 129 | # the message but return the appropriate error code. The unlearn option |
---|
| 130 | # is use-ful on some systems where local delivery failures will cause the |
---|
| 131 | # message to be requeued for delivery, and could result in the message |
---|
| 132 | # being processed multiple times. During a very large failure, however, |
---|
| 133 | # this could cause a significant load increase. |
---|
| 134 | # |
---|
| 135 | OnFail error |
---|
| 136 | |
---|
| 137 | # |
---|
| 138 | # Trusted Users: Only the users specified below will be allowed to perform |
---|
| 139 | # administrative functions in DSPAM such as setting the active user and |
---|
| 140 | # accessing tools. All other users attempting to run DSPAM will be restricted; |
---|
| 141 | # their uids will be forced to match the active username and they will not be |
---|
| 142 | # able to specify delivery agent privileges or use tools. |
---|
| 143 | # |
---|
| 144 | Trust root |
---|
| 145 | Trust dspam |
---|
| 146 | Trust apache |
---|
| 147 | Trust mail |
---|
| 148 | Trust mailnull |
---|
| 149 | Trust smmsp |
---|
| 150 | Trust daemon |
---|
| 151 | #Trust nobody |
---|
| 152 | #Trust majordomo |
---|
| 153 | |
---|
| 154 | # |
---|
| 155 | # Debugging: Enables debugging for some or all users. IMPORTANT: DSPAM must |
---|
| 156 | # be compiled with debug support in order to use this option. DSPAM should |
---|
| 157 | # never be running in production with debug active unless you are |
---|
| 158 | # troubleshooting problems. |
---|
| 159 | # |
---|
| 160 | # DebugOpt: One or more of: process, classify, spam, fp, inoculation, corpus |
---|
| 161 | # process standard message processing |
---|
| 162 | # classify message classification using --classify |
---|
| 163 | # spam error correction of missed spam |
---|
| 164 | # fp error correction of false positives |
---|
| 165 | # inoculation message inoculations (source=inoculation) |
---|
| 166 | # corpus corpusfed messages (source=corpus) |
---|
| 167 | # |
---|
| 168 | #Debug * |
---|
| 169 | #Debug bob bill |
---|
| 170 | # |
---|
| 171 | #DebugOpt process spam fp |
---|
| 172 | |
---|
| 173 | # |
---|
| 174 | # ClassAlias: Alias a particular class to spam/nonspam. This is useful if |
---|
| 175 | # classifying things other than spam. |
---|
| 176 | # |
---|
| 177 | #ClassAliasSpam badstuff |
---|
| 178 | #ClassAliasNonspam goodstuff |
---|
| 179 | |
---|
| 180 | # |
---|
| 181 | # Training Mode: The default training mode to use for all operations, when |
---|
| 182 | # one has not been specified on the commandline or in the user's preferences. |
---|
| 183 | # Acceptable values are: |
---|
| 184 | # toe Train on Error (Only) |
---|
| 185 | # teft Train Everything (Trains on every message) |
---|
| 186 | # tum Train Until Mature (Train only tokens without enough data) |
---|
| 187 | # notrain Do not train or store signatures (large ISP systems, post-train) |
---|
| 188 | # |
---|
| 189 | TrainingMode teft |
---|
| 190 | |
---|
| 191 | # |
---|
| 192 | # TestConditionalTraining: By default, dspam will retrain certain errors |
---|
| 193 | # until the condition is no longer met. This usually accelerates learning. |
---|
| 194 | # Some people argue that this can increase the risk of errors, however. |
---|
| 195 | # |
---|
| 196 | TestConditionalTraining on |
---|
| 197 | |
---|
| 198 | # |
---|
| 199 | # Features: Specify features to activate by default; can also be specified |
---|
| 200 | # on the commandline. See the documentation for a list of available features. |
---|
| 201 | # If _any_ features are specified on the commandline, these are ignored. |
---|
| 202 | # |
---|
| 203 | #Feature noise |
---|
| 204 | Feature whitelist |
---|
| 205 | |
---|
| 206 | # Training Buffer: The training buffer waters down statistics during training. |
---|
| 207 | # It is designed to prevent false positives, but can also dramatically reduce |
---|
| 208 | # dspam's catch rate during initial training. This can be a number from 0 |
---|
| 209 | # (no buffering) to 10 (maximum buffering). If you are paranoid about false |
---|
| 210 | # positives, you should probably enable this option. |
---|
| 211 | # |
---|
| 212 | #Feature tb=5 |
---|
| 213 | |
---|
| 214 | # |
---|
| 215 | # Algorithms: Specify the statistical algorithms to use, overriding any |
---|
| 216 | # defaults configured in the build. The options are: |
---|
| 217 | # naive Naive-Bayesian (All Tokens) |
---|
| 218 | # graham Graham-Bayesian ("A Plan for Spam") |
---|
| 219 | # burton Burton-Bayesian (SpamProbe) |
---|
| 220 | # robinson Robinson's Geometric Mean Test (Obsolete) |
---|
| 221 | # chi-square Fisher-Robinson's Chi-Square Algorithm |
---|
| 222 | # |
---|
| 223 | # You may have multiple algorithms active simultaneously, but it is strongly |
---|
| 224 | # recommended that you group Bayesian algorithms with other Bayesian |
---|
| 225 | # algorithms, and any use of Chi-Square remain exclusive. |
---|
| 226 | # |
---|
| 227 | # NOTE: For standard "CRM114" Markovian weighting, use 'naive', or consider |
---|
| 228 | # using 'burton' for slightly better accuracy |
---|
| 229 | # |
---|
| 230 | # Don't mess with this unless you know what you're doing |
---|
| 231 | # |
---|
| 232 | #Algorithm chi-square |
---|
| 233 | #Algorithm naive |
---|
| 234 | Algorithm graham burton |
---|
| 235 | |
---|
| 236 | # |
---|
| 237 | # Tokenizer: Specify the tokenizer to use. The tokenizer is the piece |
---|
| 238 | # responsible for parsing the message into individual tokens. Depending on |
---|
| 239 | # how many resources you are willing to trade off vs. accuracy, you may |
---|
| 240 | # choose to use a less or more detailed tokenizer: |
---|
| 241 | # word uniGram (single word) tokenizer |
---|
| 242 | # Tokenizes message into single individual words/tokens |
---|
| 243 | # example: "free" and "viagra" |
---|
| 244 | # chain biGram (chained tokens) tokenizer (default) |
---|
| 245 | # Single words + chains adjacent tokens together |
---|
| 246 | # example: "free" and "viagra" and "free viagra" |
---|
| 247 | # sbph Sparse Binary Polynomial Hashing tokenizer |
---|
| 248 | # Creates sparse token patterns across sliding window of 5-tokens |
---|
| 249 | # example: "the quick * fox jumped" and "the * * fox jumped" |
---|
| 250 | # osb Orthogonal Sparse biGram tokenizer |
---|
| 251 | # Similar to SBPH, but only uses the biGrams |
---|
| 252 | # example: "the * * fox" and "the * * * jumped" |
---|
| 253 | # |
---|
| 254 | # In general the reccomendation is to use 'osb' for new installations. |
---|
| 255 | # The default value of 'chain' remains here as not to surprise anyone upgrading |
---|
| 256 | # that has not changed from the default value. |
---|
| 257 | # |
---|
| 258 | Tokenizer chain |
---|
| 259 | |
---|
| 260 | # |
---|
| 261 | # PValue: Specify the technique used for calculating Probability Values, |
---|
| 262 | # overriding any defaults configured in the build. These options are: |
---|
| 263 | # bcr Bayesian Chain Rule (Graham's Technique - "A Plan for Spam") |
---|
| 264 | # robinson Robinson's Technique (used in Chi-Square) |
---|
| 265 | # markov Markovian Weighted Technique (for Markovian discrimination) |
---|
| 266 | # |
---|
| 267 | # Unlike the "Algorithms" property, you may only have one of these defined. |
---|
| 268 | # Use of the chi-square algorithm automatically changes this to robinson. |
---|
| 269 | # |
---|
| 270 | # Don't mess with this unless you know what you're doing. |
---|
| 271 | # |
---|
| 272 | #PValue robinson |
---|
| 273 | #PValue markov |
---|
| 274 | PValue bcr |
---|
| 275 | |
---|
| 276 | # |
---|
| 277 | # WebStats: Enable this if you are using the CGI, which writes .stats files |
---|
| 278 | WebStats on |
---|
| 279 | |
---|
| 280 | # |
---|
| 281 | # ImprobabilityDrive: Calculate odds-ratios for ham/spam, and add to |
---|
| 282 | # X-DSPAM-Improbability headers |
---|
| 283 | # |
---|
| 284 | #ImprobabilityDrive on |
---|
| 285 | |
---|
| 286 | # |
---|
| 287 | # Preferences: Specify any preferences to set by default, unless otherwise |
---|
| 288 | # overridden by the user (see next section) or a default.prefs file. |
---|
| 289 | # If user or default.prefs are found, the user's preferences will override any |
---|
| 290 | # defaults. |
---|
| 291 | # |
---|
| 292 | Preference "trainingMode=TEFT" # { TOE | TUM | TEFT | NOTRAIN } -> default:teft |
---|
| 293 | Preference "spamAction=quarantine" # { quarantine | tag | deliver } -> default:quarantine |
---|
| 294 | Preference "spamSubject=[SPAM]" # { string } -> default:[SPAM] |
---|
| 295 | Preference "statisticalSedation=5" # { 0 - 10 } -> default:0 |
---|
| 296 | Preference "enableBNR=on" # { on | off } -> default:off |
---|
| 297 | Preference "enableWhitelist=on" # { on | off } -> default:on |
---|
| 298 | Preference "signatureLocation=message" # { message | headers } -> default:message |
---|
| 299 | Preference "tagSpam=off" # { on | off } |
---|
| 300 | Preference "tagNonspam=off" # { on | off } |
---|
| 301 | Preference "showFactors=off" # { on | off } -> default:off |
---|
| 302 | Preference "optIn=off" # { on | off } |
---|
| 303 | Preference "optOut=off" # { on | off } |
---|
| 304 | Preference "whitelistThreshold=10" # { Integer } -> default:10 |
---|
| 305 | Preference "makeCorpus=off" # { on | off } -> default:off |
---|
| 306 | Preference "storeFragments=off" # { on | off } -> default:off |
---|
| 307 | Preference "localStore=" # { on | off } -> default:username |
---|
| 308 | Preference "processorBias=on" # { on | off } -> default:on |
---|
| 309 | Preference "fallbackDomain=off" # { on | off } -> default:off |
---|
| 310 | Preference "trainPristine=off" # { on | off } -> default:off |
---|
| 311 | Preference "optOutClamAV=off" # { on | off } -> default:off |
---|
| 312 | Preference "ignoreRBLLookups=off" # { on | off } -> default:off |
---|
| 313 | Preference "RBLInoculate=off" # { on | off } -> default:off |
---|
| 314 | Preference "notifications=off" # { on | off } -> default:off |
---|
| 315 | |
---|
| 316 | # |
---|
| 317 | # Overrides: Specifies the user preferences which may override configuration |
---|
| 318 | # and commandline defaults. Any other preferences supplied by an untrusted user |
---|
| 319 | # will be ignored. |
---|
| 320 | # |
---|
| 321 | AllowOverride enableBNR |
---|
| 322 | AllowOverride enableWhitelist |
---|
| 323 | AllowOverride fallbackDomain |
---|
| 324 | AllowOverride ignoreGroups |
---|
| 325 | AllowOverride ignoreRBLLookups |
---|
| 326 | AllowOverride localStore |
---|
| 327 | AllowOverride makeCorpus |
---|
| 328 | AllowOverride optIn |
---|
| 329 | AllowOverride optOut |
---|
| 330 | AllowOverride optOutClamAV |
---|
| 331 | AllowOverride processorBias |
---|
| 332 | AllowOverride RBLInoculate |
---|
| 333 | AllowOverride showFactors |
---|
| 334 | AllowOverride signatureLocation |
---|
| 335 | AllowOverride spamAction |
---|
| 336 | AllowOverride spamSubject |
---|
| 337 | AllowOverride statisticalSedation |
---|
| 338 | AllowOverride storeFragments |
---|
| 339 | AllowOverride tagNonspam |
---|
| 340 | AllowOverride tagSpam |
---|
| 341 | AllowOverride trainPristine |
---|
| 342 | AllowOverride trainingMode |
---|
| 343 | AllowOverride whitelistThreshold |
---|
| 344 | AllowOverride dailyQuarantineSummary |
---|
| 345 | AllowOverride notifications |
---|
| 346 | |
---|
| 347 | # --- MySQL --- |
---|
| 348 | |
---|
| 349 | # |
---|
| 350 | # Storage driver settings: Specific to a particular storage driver. Uncomment |
---|
| 351 | # the configuration specific to your installation, if applicable. |
---|
| 352 | # |
---|
| 353 | #MySQLServer /var/lib/mysql/mysql.sock |
---|
| 354 | #MySQLPort |
---|
| 355 | #MySQLUser dspam |
---|
| 356 | #MySQLPass changeme |
---|
| 357 | #MySQLDb dspam |
---|
| 358 | #MySQLCompress true |
---|
| 359 | #MySQLReconnect true |
---|
| 360 | |
---|
| 361 | # If you are using replication for clustering, you can also specify a separate |
---|
| 362 | # server to perform all writes to. |
---|
| 363 | # |
---|
| 364 | #MySQLWriteServer /var/lib/mysql/mysql.sock |
---|
| 365 | #MySQLWritePort |
---|
| 366 | #MySQLWriteUser dspam |
---|
| 367 | #MySQLWritePass changeme |
---|
| 368 | #MySQLWriteDb dspam_write |
---|
| 369 | #MySQLCompress true |
---|
| 370 | #MySQLReconnect true |
---|
| 371 | |
---|
| 372 | # If your replication isn't close to real-time, your retraining might fail if |
---|
| 373 | # the signature isn't found. One workaround for this is to use the write |
---|
| 374 | # database for all signature reads: |
---|
| 375 | # |
---|
| 376 | #MySQLReadSignaturesFromWriteDb on |
---|
| 377 | |
---|
| 378 | # If you're running DSPAM in client/server (daemon) mode, uncomment the |
---|
| 379 | # setting below to override the default connection cache size (the number |
---|
| 380 | # of connections the server pools between all clients). The connection cache |
---|
| 381 | # represents the maximum number of database connections *available* and should |
---|
| 382 | # be set based on the maximum number of concurrent connections you're likely |
---|
| 383 | # to have. Each connection may be used by only one thread at a time, so all |
---|
| 384 | # other threads _will block_ until another connection becomes available. |
---|
| 385 | # |
---|
| 386 | #MySQLConnectionCache 10 |
---|
| 387 | |
---|
| 388 | # If you're using vpopmail or some other type of virtual setup and wish to |
---|
| 389 | # change the table dspam uses to perform username/uid lookups, you can over- |
---|
| 390 | # ride it below |
---|
| 391 | |
---|
| 392 | #MySQLVirtualTable dspam_virtual_uids |
---|
| 393 | #MySQLVirtualUIDField uid |
---|
| 394 | #MySQLVirtualUsernameField username |
---|
| 395 | |
---|
| 396 | # UIDInSignature: MySQL supports the insertion of the user id into the DSPAM |
---|
| 397 | # signature. This allows you to create one single spam or fp alias |
---|
| 398 | # (pointing to some arbitrary user), and the uid in the signature will |
---|
| 399 | # switch to the correct user. Result: you need only one spam alias |
---|
| 400 | |
---|
| 401 | #MySQLUIDInSignature on |
---|
| 402 | |
---|
| 403 | # --- PostgreSQL --- |
---|
| 404 | |
---|
| 405 | # For PgSQLServer you can Use a TCP/IP address or a socket. If your socket is |
---|
| 406 | # in /var/run/postgresql/.s.PGSQL.5432 specify just the path where the socket |
---|
| 407 | # resits (without .s.PGSQL.5432). |
---|
| 408 | |
---|
| 409 | #PgSQLServer /var/run/postgresql/ |
---|
| 410 | #PgSQLPort |
---|
| 411 | #PgSQLUser dspam |
---|
| 412 | #PgSQLPass changeme |
---|
| 413 | #PgSQLDb dspam |
---|
| 414 | |
---|
| 415 | # If you're running DSPAM in client/server (daemon) mode, uncomment the |
---|
| 416 | # setting below to override the default connection cache size (the number |
---|
| 417 | # of connections the server pools between all clients). |
---|
| 418 | # |
---|
| 419 | #PgSQLConnectionCache 3 |
---|
| 420 | |
---|
| 421 | # UIDInSignature: PgSQL supports the insertion of the user id into the DSPAM |
---|
| 422 | # signature. This allows you to create one single spam or fp alias |
---|
| 423 | # (pointing to some arbitrary user), and the uid in the signature will |
---|
| 424 | # switch to the correct user. Result: you need only one spam alias |
---|
| 425 | |
---|
| 426 | #PgSQLUIDInSignature on |
---|
| 427 | |
---|
| 428 | # If you're using vpopmail or some other type of virtual setup and wish to |
---|
| 429 | # change the table dspam uses to perform username/uid lookups, you can over- |
---|
| 430 | # ride it below |
---|
| 431 | |
---|
| 432 | #PgSQLVirtualTable dspam_virtual_uids |
---|
| 433 | #PgSQLVirtualUIDField uid |
---|
| 434 | #PgSQLVirtualUsernameField username |
---|
| 435 | |
---|
| 436 | # --- SQLite --- |
---|
| 437 | |
---|
| 438 | #SQLitePragma "synchronous = OFF" |
---|
| 439 | |
---|
| 440 | # --- Hash --- |
---|
| 441 | |
---|
| 442 | # |
---|
| 443 | # HashRecMax: Default number of records to create in the initial segment when |
---|
| 444 | # building hash files. 100,000 yields files 1.6MB in size, but can fill up |
---|
| 445 | # fast, so be sure to increase this (to a million or more) if you're not using |
---|
| 446 | # autoextend. |
---|
| 447 | # |
---|
| 448 | # NOTE: If you're using a heavy-weight tokenizer, such as SBPH, you should be |
---|
| 449 | # looking for settings in the 'millions' of records. |
---|
| 450 | # |
---|
| 451 | # Primes List: |
---|
| 452 | # 53, 97, 193, 389, 769, 1543, 3079, 6151, 12289, 24593, 49157, 98317, 196613, |
---|
| 453 | # 393241, 786433, 1572869, 3145739, 6291469, 12582917, 25165843, 50331653, |
---|
| 454 | # 100663319, 201326611, 402653189, 805306457, 1610612741, 3221225473, |
---|
| 455 | # 4294967291 |
---|
| 456 | # |
---|
| 457 | HashRecMax 98317 |
---|
| 458 | |
---|
| 459 | # |
---|
| 460 | # HashAutoExtend: Autoextend hash databases when they fill up. This allows |
---|
| 461 | # them to continue to train by adding extents (extensions) to the file. There |
---|
| 462 | # will be a small delay during the growth process, as everything needs to be |
---|
| 463 | # closed and remapped. |
---|
| 464 | # |
---|
| 465 | HashAutoExtend on |
---|
| 466 | |
---|
| 467 | # |
---|
| 468 | # HashMaxExtents: The maximum number of extents that may be created in a single |
---|
| 469 | # hash file. Set this to zero for unlimited |
---|
| 470 | # |
---|
| 471 | HashMaxExtents 0 |
---|
| 472 | |
---|
| 473 | # |
---|
| 474 | # HashExtentSize: The initial record size for newly created extents. Creating |
---|
| 475 | # this too small could result in many extents being created. Creating this too |
---|
| 476 | # large could result in excessive disk space usage. Typically, a value close |
---|
| 477 | # to half of the HashRecMax size is good. |
---|
| 478 | # |
---|
| 479 | HashExtentSize 49157 |
---|
| 480 | |
---|
| 481 | # |
---|
| 482 | # HashPctIncrease: Increase the next extent size by n% from the size of the |
---|
| 483 | # last extent. This is useful in accommodating systems where the default |
---|
| 484 | # HashExtentSize can be too small for certain high-volume users, and can also |
---|
| 485 | # help keep seeks nice and speedy and/or prevent too many unnecessary extents |
---|
| 486 | # from being created when using a low HashMaxSeek. The default behavior, when |
---|
| 487 | # HashPctIncrease is not used, is to always use # HashExtentSize with no |
---|
| 488 | # increase. |
---|
| 489 | # |
---|
| 490 | HashPctIncrease 10 |
---|
| 491 | |
---|
| 492 | # |
---|
| 493 | # HashMaxSeek: The maximum number of record seeks when inserting a new record |
---|
| 494 | # before failing or adding a new extent. This ultimately translates into the |
---|
| 495 | # max # of acceptable seeks per segment. Setting this too high will exhaustively |
---|
| 496 | # scan each segment and hurt performance. Typically, a low value is acceptable |
---|
| 497 | # as even older extents will continue to fill as training progresses. |
---|
| 498 | # |
---|
| 499 | HashMaxSeek 10 |
---|
| 500 | |
---|
| 501 | # |
---|
| 502 | # HashConcurrentUser: If you are using a single, stateful hash database in |
---|
| 503 | # daemon mode, specifying a concurrent user below will cause the user to be |
---|
| 504 | # permanently mapped into memory and shared via rwlocks. This is very fast and |
---|
| 505 | # very cool if you are running a "userless" relay appliance. |
---|
| 506 | # |
---|
| 507 | #HashConcurrentUser user |
---|
| 508 | |
---|
| 509 | # |
---|
| 510 | # HashConnectionCache: If running in daemon mode, this is the max # of |
---|
| 511 | # concurrent connections that will be supported. NOTE: If you are using |
---|
| 512 | # HashConcurrentUser, this option is ignored, as all connections are read- |
---|
| 513 | # write locked instead of mutex locked. |
---|
| 514 | # |
---|
| 515 | HashConnectionCache 10 |
---|
| 516 | |
---|
| 517 | |
---|
| 518 | # --- ExtLookup --- |
---|
| 519 | |
---|
| 520 | # ExtLookup: Perform various external lookup functions depending on user- |
---|
| 521 | # defined variables. ExtLookup can either be set to 'on' or 'off'. The |
---|
| 522 | # behavior of such lookups are defined by the use of ExtLookupMode, which |
---|
| 523 | # can be set to 'verify', 'map' and 'strict'. |
---|
| 524 | # |
---|
| 525 | # verify Will cause dspam to validate the user, prior to |
---|
| 526 | # creating the user entry in the system. |
---|
| 527 | # |
---|
| 528 | # map Will cause dspam to try to map the user address |
---|
| 529 | # to a certain unique identifier. |
---|
| 530 | # |
---|
| 531 | # strict Will cause dspam to enforce both 'verify' and 'map'. |
---|
| 532 | # |
---|
| 533 | # ExtLookupDriver will set the engine behind the lookups. For now the only |
---|
| 534 | # supported mechanisms are 'ldap' and 'program'. The first will make dspam |
---|
| 535 | # talk directly to the configured LDAP server. The second will prefrom the |
---|
| 536 | # various lookup functions by running a certain binary program or executable |
---|
| 537 | # script. The program MUST be a binary executable or a script with a well |
---|
| 538 | # defined interpreter in its first line ( #!/path/to/interpreter ). There |
---|
| 539 | # are plans to support TLS/SSL connections to backend databases. |
---|
| 540 | # |
---|
| 541 | #ExtLookup on # Turns on/off external lookup |
---|
| 542 | #ExtLookupMode strict # available modes are 'verify', 'map' and 'strict'. |
---|
| 543 | # 'strict' enforces both verify and map |
---|
| 544 | #ExtLookupDriver ldap # Currently only ldap and program are supported. |
---|
| 545 | # There are plans to support both MySQL and Postgres. |
---|
| 546 | #ExtLookupServer ldap.example.org # Can either be a database hostname or the full path to |
---|
| 547 | # an executable lookup program and its arguments. |
---|
| 548 | #ExtLookupPort 389 # Desired port when connecting to the lookup database. |
---|
| 549 | #ExtLookupDB "ou=Users,dc=domain,dc=com" # Can either be an LDAP search base or a database name (TODO). |
---|
| 550 | #ExtLookupQuery "(&(objectClass=qmailUser)(|(mail=%u)(mailAlternateAddress=%u)))" # Can either be an LDAP search filter or an SQL query (TODO) |
---|
| 551 | #ExtLookupLDAPAttribute "mail" # Attribute to be used when ExtLookupDriver is 'ldap' |
---|
| 552 | # and ExtLookupMode 'map' or 'strict' |
---|
| 553 | #ExtLookupLDAPScope sub # Can be set to 'base', 'sub' or 'one'. Only used when ExtLookupDriver is 'ldap'. |
---|
| 554 | #ExtLookupLDAPVersion 3 # Sets the LDAP protocol version (1, 2 or 3) |
---|
| 555 | #ExtLookupLogin "cn=admin,dc=domain,dc=com" # Login to be used when connecting to any direct database backend. |
---|
| 556 | #ExtLookupPassword itsasecret # Password to use with ExtLookupLogin. |
---|
| 557 | #ExtLookupCrypto tls # Sets the use of TLS on backend communication (only compatible with LDAPv3) |
---|
| 558 | |
---|
| 559 | |
---|
| 560 | # --- Profiles --- |
---|
| 561 | |
---|
| 562 | # |
---|
| 563 | # You can specify multiple storage profiles, and specify the server to |
---|
| 564 | # use on the commandline with --profile. For example: |
---|
| 565 | # |
---|
| 566 | #Profile DECAlpha |
---|
| 567 | #MySQLServer.DECAlpha 10.0.0.1 |
---|
| 568 | #MySQLPort.DECAlpha 3306 |
---|
| 569 | #MySQLUser.DECAlpha dspam |
---|
| 570 | #MySQLPass.DECAlpha changeme |
---|
| 571 | #MySQLDb.DECAlpha dspam |
---|
| 572 | #MySQLCompress.DECAlpha true |
---|
| 573 | #MySQLReconnect.DECAlpha true |
---|
| 574 | # |
---|
| 575 | #Profile Sun420R |
---|
| 576 | #MySQLServer.Sun420R 10.0.0.2 |
---|
| 577 | #MySQLPort.Sun420R 3306 |
---|
| 578 | #MySQLUser.Sun420R dspam |
---|
| 579 | #MySQLPass.Sun420R changeme |
---|
| 580 | #MySQLDb.Sun420R dspam |
---|
| 581 | #MySQLCompress.Sun420R false |
---|
| 582 | #MySQLReconnect.Sun420R true |
---|
| 583 | # |
---|
| 584 | #DefaultProfile DECAlpha |
---|
| 585 | |
---|
| 586 | # |
---|
| 587 | # If you're using storage profiles, you can set failovers for each profile. |
---|
| 588 | # Of course, if you'll be failing over to another database, that database |
---|
| 589 | # must have the same information as the first. If you're using a global |
---|
| 590 | # database with no training, this should be relatively simple. If you're |
---|
| 591 | # configuring per-user data, however, you'll need to set up some type of |
---|
| 592 | # replication between databases. |
---|
| 593 | # |
---|
| 594 | #Failover.DECAlpha SUN420R |
---|
| 595 | #Failover.Sun420R DECAlpha |
---|
| 596 | |
---|
| 597 | # If the storage fails, the agent will follow each profile's failover up to |
---|
| 598 | # a maximum number of failover attempts. This should be set to a maximum of |
---|
| 599 | # the number of profiles you have, otherwise the agent could loop and try |
---|
| 600 | # the same profile multiple times (unless this is your desired behavior). |
---|
| 601 | # |
---|
| 602 | #FailoverAttempts 1 |
---|
| 603 | |
---|
| 604 | # |
---|
| 605 | # Ignored headers: If DSPAM is behind other tools which may add a header to |
---|
| 606 | # incoming emails, it may be beneficial to ignore these headers - especially |
---|
| 607 | # if they are coming from another spam filter. If you are _not_ using one of |
---|
| 608 | # these tools, however, leaving the appropriate headers commented out will |
---|
| 609 | # allow DSPAM to use them as telltale signs of forged email. |
---|
| 610 | # |
---|
| 611 | #IgnoreHeader X-Spam-Status |
---|
| 612 | #IgnoreHeader X-Spam-Scanned |
---|
| 613 | #IgnoreHeader X-Virus-Scanner-Result |
---|
| 614 | |
---|
| 615 | # |
---|
| 616 | # Lookup: Perform lookups on streamlined blackhole list servers (see |
---|
| 617 | # http://www.nuclearelephant.com/projects/sbl/). The streamlined blacklist |
---|
| 618 | # server is machine-automated, unsupervised blacklisting system designed to |
---|
| 619 | # provide real-time and highly accurate blacklisting based on network spread. |
---|
| 620 | # When performing a lookup, DSPAM will automatically learn the inbound message |
---|
| 621 | # as spam if the source IP is listed. Until an official public RABL server is |
---|
| 622 | # available, this feature is only useful if you are running your own |
---|
| 623 | # streamlined blackhole list server for internal reporting among multiple mail |
---|
| 624 | # servers. Provide the name of the lookup zone below to use. |
---|
| 625 | # |
---|
| 626 | # This function performs standard reverse-octet.domain lookups, and while it |
---|
| 627 | # will function with many RBLs, it's strongly discouraged to use those |
---|
| 628 | # maintained by humans as they're often inaccurate and could hurt filter |
---|
| 629 | # learning and accuracy. |
---|
| 630 | # |
---|
| 631 | #Lookup "sbl.example.org" |
---|
| 632 | |
---|
| 633 | # |
---|
| 634 | # RBLInoculate: If you want to inoculate the user from RBL'd messages it would |
---|
| 635 | # have otherwise missed, set this to on. |
---|
| 636 | # |
---|
| 637 | #RBLInoculate off |
---|
| 638 | |
---|
| 639 | # |
---|
| 640 | # Notifications: Enable the sending of notification emails to users (first |
---|
| 641 | # message, quarantine full, etc.) |
---|
| 642 | # |
---|
| 643 | Notifications off |
---|
| 644 | |
---|
| 645 | # TxtDirectory: the directory that holds the templates for notification |
---|
| 646 | # messages (see Notifications) and tagging (see tagSpam/tagNonspam). |
---|
| 647 | # |
---|
| 648 | #TxtDirectory @dspam_home@/txt |
---|
| 649 | |
---|
| 650 | # |
---|
| 651 | # QuarantineWarnSize: You may specify a size when DSPAM should send a "Quarantine |
---|
| 652 | # Full" message to each user. This is only working if you enable notifications |
---|
| 653 | # (see above). Value is in bytes. Default is 2097152 -> 2MB. |
---|
| 654 | # |
---|
| 655 | #QuarantineWarnSize 2097152 |
---|
| 656 | |
---|
| 657 | # |
---|
| 658 | # Purge configuration: Set dspam_clean purge default options, if not otherwise |
---|
| 659 | # specified on the commandline |
---|
| 660 | # |
---|
| 661 | PurgeSignatures 14 # Stale signatures |
---|
| 662 | PurgeNeutral 90 # Tokens with neutralish probabilities |
---|
| 663 | PurgeUnused 90 # Unused tokens |
---|
| 664 | PurgeHapaxes 30 # Tokens with less than 5 hits (hapaxes) |
---|
| 665 | PurgeHits1S 15 # Tokens with only 1 spam hit |
---|
| 666 | PurgeHits1I 15 # Tokens with only 1 innocent hit |
---|
| 667 | |
---|
| 668 | # |
---|
| 669 | # Purge configuration for SQL-based installations using purge.sql |
---|
| 670 | # |
---|
| 671 | #PurgeSignature off # Specified in purge.sql |
---|
| 672 | #PurgeNeutral 90 |
---|
| 673 | #PurgeUnused off # Specified in purge.sql |
---|
| 674 | #PurgeHapaxes off # Specified in purge.sql |
---|
| 675 | #PurgeHits1S off # Specified in purge.sql |
---|
| 676 | #PurgeHits1I off # Specified in purge.sql |
---|
| 677 | |
---|
| 678 | # |
---|
| 679 | # Local Mail Exchangers: Used for source address tracking, tells DSPAM which |
---|
| 680 | # mail exchangers are local and therefore should be ignored in the Received: |
---|
| 681 | # header when tracking the source of an email. Note: you should use the address |
---|
| 682 | # of the host as appears between brackets [ ] in the Received header. |
---|
| 683 | # By default DSPAM is considering the following IPs always as LocalMX: |
---|
| 684 | # 10.0.0.0/8 - Private IP addresses (RFC 1918) |
---|
| 685 | # 127.0.0.0/8 - Localhost Loopback Address (RFC 1700) |
---|
| 686 | # 169.254.0.0/16 - Zeroconf / APIPA (RFC 3330) |
---|
| 687 | # 172.16.0.0/12 - Private IP addresses (RFC 1918) |
---|
| 688 | # 192.168.0.0/16 - Private IP addresses (RFC 1918) |
---|
| 689 | # |
---|
| 690 | LocalMX 127.0.0.1 |
---|
| 691 | |
---|
| 692 | # |
---|
| 693 | # Logging: Disabling logging for users will make usage graphs unavailable to |
---|
| 694 | # them. Disabling system logging will make admin graphs unavailable. |
---|
| 695 | # |
---|
| 696 | SystemLog on |
---|
| 697 | UserLog on |
---|
| 698 | |
---|
| 699 | # |
---|
| 700 | # TrainPristine: for systems where the original message remains server side |
---|
| 701 | # and can therefore be presented in pristine format for retraining. This option |
---|
| 702 | # will cause DSPAM to cease all writing of signatures and DSPAM headers to the |
---|
| 703 | # message, and deliver the message in as pristine format as possible. This mode |
---|
| 704 | # REQUIRES that the original message in its pristine format (as of delivery) |
---|
| 705 | # be presented for retraining, as in the case of webmail, imap, or other |
---|
| 706 | # applications where the message is actually kept server-side during reading, |
---|
| 707 | # and is preserved. DO NOT use this switch unless the original message can be |
---|
| 708 | # presented for retraining with the ORIGINAL HEADERS and NO MODIFICATIONS. |
---|
| 709 | # |
---|
| 710 | # NOTE: You can't use this setting with dspam_trian; if you're going to use it, |
---|
| 711 | # wait until after you train any corpora. |
---|
| 712 | # |
---|
| 713 | #TrainPristine on |
---|
| 714 | |
---|
| 715 | # |
---|
| 716 | # Opt: in or out; determines DSPAM's default filtering behavior. If this value |
---|
| 717 | # is set to in, users must opt-in to filtering by dropping a .dspam file in |
---|
| 718 | # /var/dspam/opt-in/user.dspam (or if you have homedirs configured, a .dspam |
---|
| 719 | # folder in their home directory). The default is opt-out, which means all |
---|
| 720 | # users will be filtered unless a .nodspam file is dropped in |
---|
| 721 | # /var/dspam/opt-out/user.nodspam |
---|
| 722 | # |
---|
| 723 | Opt out |
---|
| 724 | |
---|
| 725 | # |
---|
| 726 | # TrackSources: specify which (if any) source addresses to track and report |
---|
| 727 | # them to syslog (mail.info). This is useful if you're running a firewall or |
---|
| 728 | # blacklist and would like to use this information. Spam reporting also drops |
---|
| 729 | # RABL blacklist files (see http://www.nuclearelephant.com/projects/rabl/). |
---|
| 730 | # |
---|
| 731 | #TrackSources spam nonspam virus |
---|
| 732 | |
---|
| 733 | # |
---|
| 734 | # ParseToHeaders: In lieu of setting up individual aliases for each user, |
---|
| 735 | # DSPAM can be configured to automatically parse the To: address for spam and |
---|
| 736 | # false positive forwards. From there, it can be configured to either set the |
---|
| 737 | # DSPAM user based on the username specified in the header and/or change the |
---|
| 738 | # training class and source accordingly. The options below can be used to |
---|
| 739 | # customize most common types of header parsing behavior to avoid the need for |
---|
| 740 | # multiple aliases, or if using LMTP, aliases entirely.. |
---|
| 741 | # |
---|
| 742 | # ParseToHeader: Parse the To: headers of an incoming message. This must be |
---|
| 743 | # set to 'on' to use either of the following features. |
---|
| 744 | # |
---|
| 745 | # ChangeModeOnParse: Automatically change the class (to spam or innocent) |
---|
| 746 | # depending on whether spam- or notspam- was specified, and change the source |
---|
| 747 | # to 'error'. This is convenient if you're not using aliases at all, but |
---|
| 748 | # are delivering via LMTP. |
---|
| 749 | # |
---|
| 750 | # ChangeUserOnParse: Automatically change the username to match that specified |
---|
| 751 | # in the To: header. For example, spam-bob@example.org will set the username |
---|
| 752 | # to bob, ignoring any --user passed in. This may not always be desirable if |
---|
| 753 | # you are using virtual email addresses as usernames. Options: |
---|
| 754 | # on or user take the portion before the @ sign only |
---|
| 755 | # full take everything after the initial {spam,notspam}-. |
---|
| 756 | # |
---|
| 757 | #ParseToHeaders on |
---|
| 758 | #ChangeModeOnParse on |
---|
| 759 | #ChangeUserOnParse on |
---|
| 760 | |
---|
| 761 | # |
---|
| 762 | # Broken MTA Options: Some MTAs don't support the proper functionality |
---|
| 763 | # necessary. In these cases you can activate certain features in DSPAM to |
---|
| 764 | # compensate. 'returnCodes' causes DSPAM to return an exit code of 99 if |
---|
| 765 | # the message is spam, 0 if not, or a negative code if an error has occured. |
---|
| 766 | # Specifying 'case' causes DSPAM to force the input usernames to lowercase. |
---|
| 767 | # Specifying 'lineStripping' causes DSPAM to strip ^M's from messages passed |
---|
| 768 | # in. |
---|
| 769 | # |
---|
| 770 | #Broken returnCodes |
---|
| 771 | #Broken case |
---|
| 772 | #Broken lineStripping |
---|
| 773 | |
---|
| 774 | # |
---|
| 775 | # MaxMessageSize: You may specify a maximum message size for DSPAM to process. |
---|
| 776 | # If the message is larger than the maximum size, it will be delivered |
---|
| 777 | # without processing. Value is in bytes. |
---|
| 778 | # |
---|
| 779 | #MaxMessageSize 4194304 |
---|
| 780 | |
---|
| 781 | # --- ClamAV --- |
---|
| 782 | |
---|
| 783 | # |
---|
| 784 | # Virus Checking: If you are running clamd, DSPAM can perform stream-based |
---|
| 785 | # virus checking using TCP. Uncomment the values below to enable virus |
---|
| 786 | # checking. |
---|
| 787 | # |
---|
| 788 | # ClamAVResponse: reject (reject or drop the message with a permanent failure) |
---|
| 789 | # accept (accept the message and quietly drop the message) |
---|
| 790 | # spam (treat as spam and quarantine/tag/whatever) |
---|
| 791 | # |
---|
| 792 | #ClamAVPort 3310 |
---|
| 793 | #ClamAVHost 127.0.0.1 |
---|
| 794 | #ClamAVResponse accept |
---|
| 795 | |
---|
| 796 | # --- CLIENT / SERVER --- |
---|
| 797 | |
---|
| 798 | # |
---|
| 799 | # Daemonized Server: If you are running DSPAM as a daemonized server using |
---|
| 800 | # --daemon, the following parameters will override the default. Use the |
---|
| 801 | # ServerPass option to set up accounts for each client machine. The DSPAM |
---|
| 802 | # server will process and deliver the message based on the parameters |
---|
| 803 | # specified. If you want the client machine to perform delivery, use |
---|
| 804 | # the --stdout option in conjunction with a local setup. |
---|
| 805 | # |
---|
| 806 | # ServerHost: Not enabling ServerHost will bind DSPAM server to all available |
---|
| 807 | # interfaces. |
---|
| 808 | # |
---|
| 809 | #ServerHost 127.0.0.1 |
---|
| 810 | #ServerPort 24 |
---|
| 811 | #ServerQueueSize 32 |
---|
| 812 | #ServerPID /var/run/dspam.pid |
---|
| 813 | |
---|
| 814 | # |
---|
| 815 | # ServerMode specifies the type of LMTP server to start. This can be one of: |
---|
| 816 | # dspam: DSPAM-proprietary DLMTP server, for communicating with dspamc |
---|
| 817 | # standard: Standard LMTP server, for communicating with Postfix or other MTA |
---|
| 818 | # auto: Speak both DLMTP and LMTP; auto-detect by ServerPass.IDENT |
---|
| 819 | # |
---|
| 820 | #ServerMode dspam |
---|
| 821 | |
---|
| 822 | # If supporting DLMTP (dspam) mode, dspam clients will require authentication |
---|
| 823 | # as they will be passing in parameters. The idents below will be used to |
---|
| 824 | # determine which clients will be speaking DLMTP, so if you will be using |
---|
| 825 | # both LMTP and DLMTP from the same host, be sure to use something other |
---|
| 826 | # than the server's hostname below (which will be sent by the MTA during a |
---|
| 827 | # standard LMTP LHLO). |
---|
| 828 | # |
---|
| 829 | #ServerPass.Relay1 "secret" |
---|
| 830 | #ServerPass.Relay2 "password" |
---|
| 831 | |
---|
| 832 | # If supporting standard LMTP mode, server parameters will need to be specified |
---|
| 833 | # here, as they will not be passed in by the mail server. The ServerIdent |
---|
| 834 | # specifies the 250 response code ident sent back to connecting clients and |
---|
| 835 | # should be set to the hostname of your server, or an alias. |
---|
| 836 | # |
---|
| 837 | # NOTE: If you specify --user in ServerParameters, the RCPT TO will be |
---|
| 838 | # used only for delivery, and not set as the active user for processing. |
---|
| 839 | # |
---|
| 840 | #ServerParameters "--deliver=innocent -d %u" |
---|
| 841 | #ServerIdent "localhost.localdomain" |
---|
| 842 | |
---|
| 843 | # If you wish to use a local domain socket instead of a TCP socket, uncomment |
---|
| 844 | # the following. It is strongly recommended you use local domain sockets if |
---|
| 845 | # you are running the client and server on the same machine, as it eliminates |
---|
| 846 | # much of the bandwidth overhead. |
---|
| 847 | # |
---|
| 848 | #ServerDomainSocketPath "/tmp/dspam.sock" |
---|
| 849 | |
---|
| 850 | # |
---|
| 851 | # Client Mode: If you are running DSPAM in client/server mode, uncomment and |
---|
| 852 | # set these variables. A ClientHost beginning with a / will be treated as |
---|
| 853 | # a domain socket. |
---|
| 854 | # |
---|
| 855 | #ClientHost /tmp/dspam.sock |
---|
| 856 | #ClientIdent "secret@Relay1" |
---|
| 857 | # |
---|
| 858 | #ClientHost 127.0.0.1 |
---|
| 859 | #ClientPort 24 |
---|
| 860 | #ClientIdent "secret@Relay1" |
---|
| 861 | |
---|
| 862 | # --- RABL --- |
---|
| 863 | |
---|
| 864 | # RABLQueue: Touch files in the RABL queue |
---|
| 865 | # If you are a reporting streamlined blackhole list participant, you can |
---|
| 866 | # touch ip addresses within the directory the rabl_client process is watching. |
---|
| 867 | # |
---|
| 868 | #RABLQueue /var/spool/rabl |
---|
| 869 | |
---|
| 870 | # --- --- |
---|
| 871 | |
---|
| 872 | # DataSource: If you are using any type of data source that does not include |
---|
| 873 | # email-like headers (such as documents), uncomment the line below. This |
---|
| 874 | # will cause the entire input to be treated like a message "body" |
---|
| 875 | # |
---|
| 876 | #DataSource document |
---|
| 877 | |
---|
| 878 | # ProcessorWordFrequency: By default, words are only counted once per message. |
---|
| 879 | # If you are classifying large documents, however, you may wish to count once |
---|
| 880 | # per occurrence instead. |
---|
| 881 | # |
---|
| 882 | #ProcessorWordFrequency occurrence |
---|
| 883 | |
---|
| 884 | # ProcessorURLContext: By default, a URL context is generated for URLs, which |
---|
| 885 | # records their tokens as separate from words found in documents. To use |
---|
| 886 | # URL tokens in the same context as words, turn this feature off. |
---|
| 887 | # |
---|
| 888 | ProcessorURLContext on |
---|
| 889 | |
---|
| 890 | # ProcessorBias: Bias causes the filter to lean more toward 'innocent', and |
---|
| 891 | # usually greatly reduces false positives. It is the default behavior of |
---|
| 892 | # most Bayesian filters (including dspam). |
---|
| 893 | # |
---|
| 894 | # NOTE: You probably DONT want this if you're using Markovian Weighting, unless |
---|
| 895 | # you are paranoid about false positives. |
---|
| 896 | # |
---|
| 897 | ProcessorBias on |
---|
| 898 | |
---|
| 899 | # StripRcptDomain: Cut the domain (including the at sign) from recipients. |
---|
| 900 | # This is particularly useful if the recipient name is equal to real user |
---|
| 901 | # accounts as recipients with domains tend to cause permission issues with |
---|
| 902 | # dspam-web. |
---|
| 903 | # |
---|
| 904 | StripRcptDomain off |
---|
| 905 | |
---|
| 906 | # GroupConfig: The configuration file for groups. See the README file |
---|
| 907 | # for details on how to enable users to combine their training data to |
---|
| 908 | # get better results. |
---|
| 909 | GroupConfig @dspam_home@/group |
---|
| 910 | |
---|
| 911 | # --- Split Configuration File Support --- |
---|
| 912 | |
---|
| 913 | # Include a directory with configuration items. |
---|
| 914 | #Include /etc/dspam/dspam.d/ |
---|
| 915 | |
---|
| 916 | # --- --- |
---|
| 917 | |
---|
| 918 | ## EOF |
---|