| <@LICENSE> |
| Copyright 2004 Apache Software Foundation |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| </@LICENSE> |
| |
| =head1 NAME |
| |
| spamassassin - simple front-end filtering script for SpamAssassin |
| |
| =head1 SYNOPSIS |
| |
| B<spamassassin> [options] [ < I<mailmessage> | I<path> ... ] |
| |
| B<spamassassin> B<-d> [ < I<mailmessage> | I<path> ... ] |
| |
| B<spamassassin> B<-r> [ < I<mailmessage> | I<path> ... ] |
| |
| B<spamassassin> B<-k> [ < I<mailmessage> | I<path> ... ] |
| |
| B<spamassassin> B<-W>|B<-R> [ < I<mailmessage> | I<path> ... ] |
| |
| Options: |
| |
| -L, --local Local tests only (no online tests) |
| -r, --report Report message as spam |
| -k, --revoke Revoke message as spam |
| -d, --remove-markup Remove spam reports from a message |
| -C path, --configpath=path, --config-file=path |
| Path to standard configuration dir |
| -p prefs, --prefspath=file, --prefs-file=file |
| Set user preferences file |
| --siteconfigpath=path Path for site configs |
| (def: /etc/mail/spamassassin) |
| --cf='config line' Additional line of configuration |
| --pre='config line' Additional line of ".pre" (prepended to configuration) |
| -x, --nocreate-prefs Don't create user preferences file |
| -e, --exit-code Exit with a non-zero exit code if the |
| tested message was spam |
| --mbox read in messages in mbox format |
| --mbx read in messages in UW mbx format |
| -t, --test-mode Pipe message through and add extra |
| report to the bottom |
| --lint Lint the rule set: report syntax errors |
| -W, --add-to-whitelist Add addresses in mail to persistent address whitelist |
| --add-to-blacklist Add addresses in mail to persistent address blacklist |
| -R, --remove-from-whitelist Remove all addresses found in mail from |
| persistent address list |
| --add-addr-to-whitelist=addr Add addr to persistent address whitelist |
| --add-addr-to-blacklist=addr Add addr to persistent address blacklist |
| --remove-addr-from-whitelist=addr Remove addr from persistent address list |
| -4 --ipv4only, --ipv4-only, --ipv4 Use IPv4, disable use of IPv6 for DNS etc. |
| -6 Use IPv6, disable use of IPv4 where possible |
| --progress Print progress bar |
| -D, --debug [area=n,...] Print debugging messages |
| -V, --version Print version |
| -h, --help Print usage message |
| |
| =head1 DESCRIPTION |
| |
| spamassassin is a simple front-end filter for SpamAssassin. |
| |
| Using the SpamAssassin rule base, it uses a wide range of heuristic |
| tests on mail headers and body text to identify "spam", also known as |
| unsolicited bulk email. Once identified, the mail is then tagged as |
| spam for later filtering using the user's own mail user-agent |
| application. |
| |
| The default tagging operations that take place are detailed in L<spamassassin/"TAGGING">. |
| |
| By default, message(s) are read in from STDIN (< I<mailmessage>), or |
| from specified files and directories (I<path> ...) STDIN and files |
| are assumed to be in I<file> format, with a single message per file. |
| Directories are assumed to be in a format where each file in the directory |
| contains only one message (directories are not recursed and filenames |
| containing whitespace or beginning with "." or "," are skipped). |
| The options I<--mbox> and I<--mbx> can override the assumed format, |
| see the appropriate OPTION information below. |
| |
| Please note that SpamAssassin is not designed to scan large |
| messages. Don't feed messages larger than about 500 KB to |
| SpamAssassin, as this will consume a huge amount of memory. |
| |
| =head1 OPTIONS |
| |
| =over 4 |
| |
| =item B<-e>, B<--error-code>, B<--exit-code> |
| |
| Exit with a non-zero error code, if the message is determined to be |
| spam. |
| |
| =item B<-h>, B<--help> |
| |
| Print help message and exit. |
| |
| =item B<-V>, B<--version> |
| |
| Print version and exit. |
| |
| =item B<-t>, B<--test-mode> |
| |
| Test mode. Pipe message through and add extra report. Note that the report |
| text assumes that the message is spam, since in normal use it is only visible |
| in this case. Pay attention to the score instead. |
| |
| If you run this with B<-d>, the message will first have SpamAssassin |
| markup removed before being tested. |
| |
| =item B<-r>, B<--report> |
| |
| Report this message as manually-verified spam. This will submit the mail |
| message read from STDIN to various spam-blocker databases. Currently, |
| these are the Distributed Checksum Clearinghouse |
| C<https://www.dcc-servers.net/dcc/>, Pyzor |
| C<http://pyzor.org/>, Vipul's Razor |
| C<http://razor.sourceforge.net/>, and SpamCop C<http://www.spamcop.net/>. |
| |
| If the message contains SpamAssassin markup, the markup will be stripped |
| out automatically before submission. The support modules for DCC, Pyzor, |
| and Razor must be installed for spam to be reported to each service. |
| SpamCop reports will have greater effect if you register and set the |
| C<spamcop_to_address> option. |
| |
| The message will also be submitted to SpamAssassin's learning systems; |
| currently this is the internal Bayesian statistical-filtering system (the |
| BAYES rules). (Note that if you I<only> want to perform statistical |
| learning, and do not want to report mail to third-parties, you should use |
| the C<sa-learn> command directly instead.) |
| |
| =item B<-k>, B<--revoke> |
| |
| Revoke this message. This will revoke the mail message read from STDIN from |
| various spam-blocker databases. Currently, these are Vipul's Razor. |
| |
| Revocation support for the Distributed Checksum Clearinghouse, Pyzor, and |
| SpamCop is not currently available. |
| |
| If the message contains SpamAssassin markup, the markup will be stripped |
| out automatically before submission. The support modules for Razor must |
| be installed for spam to be revoked from the service. |
| |
| The message will also be submitted as 'ham' (non-spam) to SpamAssassin's |
| learning systems; currently this is the internal Bayesian |
| statistical-filtering system (the BAYES rules). (Note that if you I<only> |
| want to perform statistical learning, and do not want to report mail to |
| third-parties, you should use the C<sa-learn> command directly instead.) |
| |
| =item B<--lint> |
| |
| Syntax check (lint) the rule set and configuration files, reporting |
| typos and rules that do not compile correctly. Exits with 0 if there |
| are no errors, or greater than 0 if any errors are found. |
| |
| =item B<-W>, B<--add-to-whitelist> |
| |
| Add all email addresses, in the headers and body of the mail message read |
| from STDIN, to a persistent address whitelist. Note that you must be running |
| C<spamassassin> or C<spamd> with a persistent address list plugin enabled for |
| this to work. |
| |
| =item B<--add-to-blacklist> |
| |
| Add all email addresses, in the headers and body of the mail message read |
| from STDIN, to the persistent address blacklist. Note that you must be |
| running C<spamassassin> or C<spamd> with a persistent address list plugin |
| enabled for this to work. |
| |
| =item B<-R>, B<--remove-from-whitelist> |
| |
| Remove all email addresses, in the headers and body of the mail message read |
| from STDIN, from a persistent address list. STDIN must contain a full email |
| message, so to remove a single address you should use |
| B<--remove-addr-from-whitelist> instead. |
| |
| Note that you must be running C<spamassassin> or C<spamd> with a persistent |
| address list plugin enabled for this to work. |
| |
| =item B<--add-addr-to-whitelist> |
| |
| Add the named email address to a persistent address whitelist. Note that you |
| must be running C<spamassassin> or C<spamd> with a persistent address list |
| plugin enabled for this to work. |
| |
| =item B<--add-addr-to-blacklist> |
| |
| Add the named email address to a persistent address blacklist. Note that you |
| must be running C<spamassassin> or C<spamd> with a persistent address list |
| plugin enabled for this to work. |
| |
| =item B<--remove-addr-from-whitelist> |
| |
| Remove the named email address from a persistent address whitelist. Note that |
| you must be running C<spamassassin> or C<spamd> with a persistent address |
| list plugin enabled for this to work. |
| |
| =item B< --ipv4only>, B<--ipv4-only>, B<--ipv4> |
| |
| Do not use IPv6 for DNS tests. Normally, SpamAssassin will try to detect if |
| IPv6 is available, using only IPv4 if it is not. Use if the existing tests |
| for IPv6 availability produce incorrect results or crashes. |
| |
| =item B<-L>, B<--local> |
| |
| Do only the ''local'' tests, ones that do not require an internet connection to |
| operate. Normally, SpamAssassin will try to detect whether you are connected |
| to the net before doing these tests anyway, but for faster checks you may wish |
| to use this. |
| |
| Note that SpamAssassin's network rules are run in parallel. This can cause |
| overhead in terms of the number of file descriptors required if B<--local> is |
| not used; it is recommended that the minimum limit on fds be raised to at least |
| 256 for safety. |
| |
| =item B<-d>, B<--remove-markup> |
| |
| Remove SpamAssassin markup (the "SpamAssassin results" report, X-Spam-Status |
| headers, etc.) from the mail message. The resulting message, which will be |
| more or less identical to the original, pre-SpamAssassin input, will be output |
| to STDOUT. |
| |
| (Note: the message will not be exactly identical; some headers will be |
| reformatted due to some features of the Mail::Internet package, but the body |
| text will be.) |
| |
| =item B<-C> I<path>, B<--configpath>=I<path>, B<--config-file>=I<path> |
| |
| Use the specified path for locating the distributed configuration files. |
| Ignore the default directories (usually C</usr/share/spamassassin> or similar). |
| |
| =item B<--siteconfigpath>=I<path> |
| |
| Use the specified path for locating site-specific configuration files. Ignore |
| the default directories (usually C</etc/mail/spamassassin> or similar). |
| |
| =item B<--cf='config line'> |
| |
| Add additional lines of configuration directly from the command-line, parsed |
| after the configuration files are read. Multiple B<--cf> arguments can be |
| used, and each will be considered a separate line of configuration. For |
| example: |
| |
| spamassassin -t --cf="body NEWRULE /text/" --cf="score NEWRULE 3.0" |
| |
| =item B<--pre='config line'> |
| |
| Add additional lines of .pre configuration directly from the command-line, |
| parsed before the configuration files are read. Multiple B<--pre> arguments |
| can be used, and each will be considered a separate line of configuration. |
| For example: |
| |
| spamassassin -t --pre="loadplugin Mail::SpamAssassin::Plugin::Foobar" |
| |
| =item B<-p> I<prefs>, B<--prefspath>=I<prefs>, B<--prefs-file>=I<prefs> |
| |
| Read user score preferences from I<prefs> (usually C<$HOME/.spamassassin/user_prefs>). |
| |
| =item B<--progress> |
| |
| Prints a progress bar (to STDERR) showing the current progress. This option |
| will only be useful if you are redirecting STDOUT (and not STDERR). In the |
| case where no valid terminal is found this option will behave very much like |
| the --showdots option in other SpamAssassin programs. |
| |
| =item B<-D> [I<area,...>], B<--debug> [I<area,...>] |
| |
| Produce debugging output. If no areas are listed, all debugging information is |
| printed. Diagnostic output can also be enabled for each area individually; |
| I<area> is the area of the code to instrument. For example, to produce |
| diagnostic output on bayes, learn, and dns, use: |
| |
| spamassassin -D bayes,learn,dns |
| |
| Higher priority informational messages that are suitable for logging in normal |
| circumstances are available with an area of "info". |
| |
| For more information about which areas (also known as channels) are available, |
| please see the documentation at: |
| |
| L<http://wiki.apache.org/spamassassin/DebugChannels> |
| |
| =item B<-x>, B<--nocreate-prefs> |
| |
| Disable creation of user preferences file. |
| |
| =item B<--mbox> |
| |
| Specify that the input message(s) are in mbox format. mbox is a standard |
| Unix message folder format. |
| |
| =item B<--mbx> |
| |
| Specify that the input message(s) are in UW .mbx format. mbx is |
| the mailbox format used within the University of Washington's IMAP |
| implementation; see C<http://www.washington.edu/imap/>. |
| |
| =back |
| |
| =head1 SEE ALSO |
| |
| sa-learn(1) |
| spamd(1) |
| spamc(1) |
| Mail::SpamAssassin::Conf(3) |
| Mail::SpamAssassin(3) |
| |
| =head1 PREREQUISITES |
| |
| C<Mail::SpamAssassin> |
| |
| =head1 BUGS |
| |
| See <http://issues.apache.org/SpamAssassin/> |
| |
| =head1 AUTHORS |
| |
| The SpamAssassin(tm) Project <https://spamassassin.apache.org/> |
| |
| =head1 COPYRIGHT |
| |
| SpamAssassin is distributed under the Apache License, Version 2.0, as |
| described in the file C<LICENSE> included with the distribution. |
| |
| =cut |
| |