diff --git a/README b/README deleted file mode 100644 index d00d75a..0000000 --- a/README +++ /dev/null @@ -1,199 +0,0 @@ -# -# this file is best read with `perldoc README` -# - -=head1 NAME - -Qpsmtpd - qmail perl simple mail transfer protocol daemon - -web: - http://smtpd.github.io/qpsmtpd/ - -mailinglist: - qpsmtpd-subscribe@perl.org - -FAQ: - https://github.com/smtpd/qpsmtpd/wiki/faq - -=head1 DESCRIPTION - -What is Qpsmtpd? - -Qpsmtpd is an extensible SMTP engine written in Perl. No, make that -easily extensible! See plugins/quit_fortune for a very useful, er, -cute example. - -=head2 License - -Qpsmtpd is licensed under the MIT License; see the LICENSE file for -more information. - -=head2 What's new in this release? - -See the Changes file! :-) - - -=head1 Installation - -=head2 Required Perl Modules - -The following Perl modules are required: - Net::DNS - MIME::Base64 - Mail::Header (part of the MailTools distribution) - -If you use a version of Perl older than 5.8.0 you will also need - Data::Dumper - File::Temp - Time::HiRes - -The easiest way to install modules from CPAN is with the CPAN shell. -Run it with - - perl -MCPAN -e shell - -=head2 qpsmtpd installation - -Make a new user and a directory where you'll install qpsmtpd. I -usually use "smtpd" for the user and /home/smtpd/qpsmtpd/ for the -directory. - -Put the files there. If you install from git you can just do -run the following command in the /home/smtpd/ directory. - - git clone git://github.com/smtpd/qpsmtpd.git - -Beware that the master branch might be unstable and unsuitable for anything -but development, so you might want to get a specific release, for -example (after running git clone): - - git checkout -b local_branch v0.93 - -chmod o+t ~smtpd/qpsmtpd/ (or whatever directory you installed qpsmtpd -in) to make supervise start the log process. - -Edit the file config/IP and put the ip address you want to use for -qpsmtpd on the first line (or use 0 to bind to all interfaces). - -If you use the supervise tools, then you are practically done! -Just symlink /home/smtpd/qpsmtpd into your /services (or /var/services -or /var/svscan or whatever) directory. Remember to shutdown -qmail-smtpd if you are replacing it with qpsmtpd. - -If you don't use supervise, then you need to run the ./run script in -some other way. - -The smtpd user needs write access to ~smtpd/qpsmtpd/tmp/ but should -not need to write anywhere else. This directory can be configured -with the "spool_dir" configuration and permissions can be set with -"spool_perms". - -As per version 0.25 the distributed ./run script runs tcpserver with -the -R flag to disable identd lookups. Remove the -R flag if that's -not what you want. - - -=head2 Configuration - -Configuration files can go into either /var/qmail/control or into the -config subdirectory of the qpsmtpd installation. Configuration should -be compatible with qmail-smtpd making qpsmtpd a drop-in replacement. - -If qmail is installed in a nonstandard location you should set the -$QMAIL environment variable to that location in your "./run" file. - -If there is anything missing, then please send a patch (or just -information about what's missing) to the mailinglist or a PR to github. - - -=head1 Better Performance - -For better performance we recommend using "qpsmtpd-forkserver" or -running qpsmtpd under Apache 2.x. If you need extremely high -concurrency use http://haraka.github.io/ - -=head1 Plugins - -The qpsmtpd core only implements the SMTP protocol. No useful -function can be done by qpsmtpd without loading plugins. - -Plugins are loaded on startup where each of them register their -interest in various "hooks" provided by the qpsmtpd core engine. - -At least one plugin MUST allow or deny the RCPT command to enable -receiving mail. The "rcpt_ok" is one basic plugin that does -this. Other plugins provide extra functionality related to this; for -example the resolvable_fromhost plugin described above. - - -=head1 Configuration files - -All the files used by qmail-smtpd should be supported; so see the man -page for qmail-smtpd. Extra files used by qpsmtpd include: - -=over 4 - -=item plugins - -List of plugins, one per line, to be loaded in the order they -appear in the file. Plugins are in the plugins directory (or in -a subdirectory of there). - - -=item rhsbl_zones - -Right hand side blocking lists, one per line. For example: - - dsn.rfc-ignorant.org does not accept bounces - http://www.rfc-ignorant.org/ - -See http://www.rfc-ignorant.org/ for more examples. - - -=item dnsbl_zones - -Normal ip based DNS blocking lists ("RBLs"). For example: - - relays.ordb.org - spamsources.fabel.dk - - -=item spool_dir - -If this file contains a directory, it will be the spool directory -smtpd uses during the data transactions. If this file doesn't exist, it -will default to use $ENV{HOME}/tmp/. This directory should be set with -a mode of 700 and owned by the smtpd user. - -=item spool_perms - -The default spool permissions are 0700. If you need some other value, -chmod the directory and set it's octal value in config/spool_perms. - -=item tls_before_auth - -If this file contains anything except a 0 on the first noncomment line, then -AUTH will not be offered unless TLS/SSL are in place, either with STARTTLS, -or SMTP-SSL on port 465. - -=item everything (?) that qmail-smtpd supports. - -In my test qpsmtpd installation I have a "config/me" file containing -the hostname I use for testing qpsmtpd (so it doesn't introduce itself -with the normal name of the server). - -=back - - -=head1 Problems - -In case of problems, always check the logfile first. - -By default, qpsmtpd logs to log/main/current. Qpsmtpd can log a lot of -debug information. You can get more or less by adjusting the number in -config/loglevel. Between 1 and 3 should give you a little. Setting it -to 10 or higher will get lots of information in the logs. - -If the logfile doesn't give away the problem, then post to the -mailinglist (subscription instructions above). If possible, put -the logfile on a webserver and include a reference to it in the mail. - diff --git a/UPGRADING.pod b/UPGRADING.md similarity index 68% rename from UPGRADING.pod rename to UPGRADING.md index f2910da..3a117b4 100644 --- a/UPGRADING.pod +++ b/UPGRADING.md @@ -1,22 +1,21 @@ - -=head1 Upgrade notes +# Upgrade notes When upgrading please review these notes for the versions you are -upgrading I. +upgrading _from_. -=head2 v0.84 or below +## v0.84 or below -=head3 CHECK_RELAY, CHECK_NORELAY, RELAY_ONLY +### CHECK\_RELAY, CHECK\_NORELAY, RELAY\_ONLY All 3 plugins are deprecated and replaced with a new 'relay' plugin. The new plugin reads the same config files (see 'perldoc plugins/relay') as the previous plugins. To get the equivalent -functionality of enabling 'relay_only', use the 'only' argument to the +functionality of enabling 'relay\_only', use the 'only' argument to the relay plugin as documented in the RELAY ONLY section of plugins/relay. -=head3 GREYLISTING plugin +### GREYLISTING plugin -'mode' config argument is deprecated. Use reject and reject_type instead. +'mode' config argument is deprecated. Use reject and reject\_type instead. The greylisting DB format has changed to accommodate IPv6 addresses. (The DB key has colon ':' seperated fields, and IPv6 @@ -28,19 +27,16 @@ qpsmtpd once, make one connection. A log entry will be made, telling how many records were upgraded. Remove the upgrade option from your config. -=head3 SPF plugin +### SPF plugin -spf_deny setting deprecated. Use reject N setting instead, which +spf\_deny setting deprecated. Use reject N setting instead, which provides administrators with more granular control over SPF. For -backward compatibility, a spf_deny setting of 1 is mapped to 'reject -3' and a 'spf_deny 2' is mapped to 'reject 4'. +backward compatibility, a spf\_deny setting of 1 is mapped to 'reject +3' and a 'spf\_deny 2' is mapped to 'reject 4'. - -=head3 P0F plugin +### P0F plugin defaults to p0f v3 (was v2). Upgrade p0f to version 3 or add 'version 2' to your p0f line in config/plugins. perldoc plugins/ident/p0f for more details. - -