- Setup.pm - InstallMailLogs - create the /var/log/mail/submit directory - CGI.pm - moved lots of logic from index.cgi into CGI.pm for easier maintenance. - Added many new config options to toaster.conf to make customizing Toaster::CGI very easy. - Added toaster_hostname to watcher.conf - qmail_service_smtps needed to be qmail_service_submit in watcher.conf - index.cgi & index.tmpl - added logo info to toaster.conf file for easier site customization. - Setup.pm - reworked several subs to allow version information to be stored in w.conf for courier, sqwebmail, vpopmail, qmailadmin, qmail - t_setup.pl - updated to match new watcher.conf settings - Setup.pm - Added InstallQmailScannerStats sub - Updated vpopmail to 5.4.0 (-stable) - Updated qmailadmin to 1.2.0 (-stable) - Added toaster_debug to watcher.conf file. Now watcher script will spit out lots of messages when it runs. That will prove helpful to some people as many errors can be get reported. - Added additional debug calls to watcher.pl - Added ability to clean up mail messages based on settings in toaster-watcher.conf. Cleans up old messages based on admin configurable number of days. Optionally feed spam and ham messages through sa-learn. Added CleanMailboxMessasges call to watcher.pl Added CleanMailboxMessasges to Toaster.pm Added maildir_clean_* options to watcher.conf - Added qs_quarantine_verbose option to w.conf - Eliminated duplicate virus IP blocks
- Setup.pm & toaster-watcher.conf - added more options so fewer questions are asked during install. Added f-prot virus scanner support. - CGI.pm - Added Qmail Scanner Statistics option see https://mail.cadillac.net/ - FAQ.pod - Added 5 new FAQ entries. - Setup.pm & Qmail.pm - Added smtp-submit. Adds a smtp listener on port 587 per the SMTP-submission RFC. (Added for client) - Setup.pm - scripts now adds snmpd_enable="YES" to /etc/rc.conf instead of giving you a notice. Also (re)starts the snmpd daemon. - Setup.pm - Fixed the regexp that fixes the Ezmlm Makefile to use MySQL 4. - Logs.pm - make sure logs_base (var/log/mail) is owned by qmaill:qnofiles. - Setup.pm - added package_install_method to w.conf Now InstallPackage calls can be replaced with InstallPort based on user prefs. - Logs.pm - added defaults for all $conf->{} settings Now, if a user doesn't update their .conf file and has missing settings, the toaster will behave reasonably. - Setup.pm - qmailscanner wasn't fetching the sources into the right directory. - Added support directory to the distribution (Mail:: Toaster::CGI support html files) - Setup.pm - adjusted regexp for ezmlm - Setup.pm - Added Mail::Audit to InstallFilter SA - Setup.pm - Added DCC, razor, pyzor, and bogofilter to InstallFilter section - added code to support smtps server build
- Qmail.pm - Don't insert rblsmtpd options in smtp/run unless rbls are being used. - Setup.pm - Only install rc.d/pop3.sh if courier is selected as the pop3 server. - Added more documentation to address relay questions posed on the mailing list
- Setup.pm - Honor install_apache from watcher .conf file. - Setup.pm - Added install_qmailscanner_version - Qmail.pm - Honor rblsmtpd options from watcher .conf file. - Logs.pm - Many changes, see seperate file Changes-MailLogs for details. - Setup.pm - InstallFilters now starts spamd after install SpamAssassin. - Start clamd after install ClamAV - Setup.pm - InstallVpopmail now honors the vpopmail_roaming_users setting in .conf - Setup.pm - InstallSocklog - you can now pass along the user the logs should be owned by. - Setup.pm - InstallSocklog: chmod 755 the run file - Setup.pm - InstallSocklog - added some print lines so you could tell what it was doing. Added the $ip argument in case your logging server isn't on the same IP as mine. ;) - Setup.pm - FetchFile calls weren't being tested to determine if they had succeeded. Updated every call to FetchFile and added code to verify that the files were downloaded. - Added more pod documentation and published pod docs on Mail::Toaster web pages.
- Mail::Toaster::Logs & maillogs - see seperate Changes-MailLogs - Many little aestetic (ie, what output the user sees when running) changes. - Moved the MATT::Apache dependency from setup.pl which caused ApacheCreateSSLCerts to fail. Moved that call into Mail::Toaster::Setup::InstallApache - InstallPhpMyAdmin moved into Setup.pm from setup. updated to remove MATT::Apache dependency. - Removed the MATT::Mysql dependency from setup.pl to Setup::InstallMysql. Now you don't get prompted to install DBI and DBD::mysql when doing clean installs. This will make it less daunting for newbies. (No more chicken-egg dependencies) - InstallClamAV - was trying to chown the ClamAV databases before they were created.
- Setup.pm - InstallVpopmail - Added "port" install option. - Setup.pm - Added InstallVqadmin - Setup.pm - InstallQmailadmin - added port install option (install from FreeBSD port) - Setup.pm - InstallCourier - added options to port build to toasterize it. - Updated toaster patch to 2.7 (2.6 + chk-usr) - added t/maillogs.t, t/toaster_setup.t, and index.t - added doc/pods/Changes-MailLogs.pod - maillogs - misc updates - Logs.pm - misc updates due to movement of subs from maillogs to Logs.pm - added cvsup_server_country (pass to cvsup_fastest) - chmod 640 for qmail/control/sql and SSL certs - Setup.pm - Added option for portupgrade install and added to toaster-watcher.conf-dist - Setup.pm - InstallPorts - use default toaster URL if none supplied - Setup.pm - InstallToasterDeps - install Net::DNS DBI, and DBD::mysql, mysql-client(3.23) - Setup.pm - Added InstallSources - Setup.pm - InstallQmail - configure $qmaildir, $vpopdir and $mysql (lib include dir) based on .conf settings. - toaster-setup.pl - do not pass $toaster to InstallPorts - toaster-setup.pl - added sources target (update FreeBSD)
- modify the ezmlm-idx file to use Mysql 4 lib if chosen (default) in toaster-watcher.conf - Create qmail/control/locals if exist non-existant - Setup.pm - InstallMaildropFiles now has a default toaster URL if one isn't passed. - toaster_setup.pl - reverted back to qmailadmin 1.0.27 (from 1.0.30) due to build problems.
- toaster_setup.pl - added -s phpmyadmin - Qmail.pm - added pod documentation for each sub - Setup.pm - added pod documentation for subs - updated qmailadmin to 1.0.29 - updated vpopmail to 5.3.30
- Fixed call in InstallPort for cvsup_fastest - InstallRRDutil will delete sources from previous builds before installing - InstallMATTBundle will delete sources from previous builds before installing - Significant updates to toaster-watcher.pl. It now also generates smtp and pop3 run files for qmail. See it's Changes-Watcher for details. - InstallRRDutil now tests for snmpd_conf in rc.conf starts snmpd if it's there, warns otherwise - Added apacheconf target to toasterize httpd.conf - Added rrdutil target to Setup.pm (RRDutil) - Added apachessl target to Setup.pm - Added mattbundle target to Setup.pm (MATT::Bundle) - Added maillogs as Mail::Toaster::Logs (still needs a fair amount of work) - Got the rest of the variables out of toaster_setup and into the config file where they belong. - BuildSMTPRun will now create it's supervise dir if it doesn't already exist.
- Merged several programs into the Mail::Toaster package. Including is toaster-watcher, toaster_setup, and index.cgi. I expect to bring qqtool, maillogs and a few other apps into this module as well. - Added Mail/Toaster/Qmail.pm (from MATT::Bundle). - Added Mail/Toaster/DNS.pm (from MATT::Bundle). - Major, major reworking of the -s supervise and -s maillogs install portions. They now honor oodles of your preferences from toaster-watcher.conf. The .conf file also has a bucketful of new options as well. You'll want to merge in the new changes. - removed a lot of the die calls and made them warnings instead. - Removed a lot of assumptions that the code made. Now that I have config settings, in know how things should be and can act accordingly. - Whether or not service/pop3 exists will now depend on the pop3_daemon preference - Moved toaster_setup subs to Mail::Toaster::Setup.pm - Lots and lots of code changes due to seperation - Fixed a bug in ConfigVmysql where db auth settings weren't being set in the vmysql.h file - Now writes out the vpopmail.mysql file for db auth in vpopmail 5.3.2? and higher - Now writes out supervise/pop3d/run based on settings in toaster-watcher.conf (instead of defaults) - Now writes out supervise/smtp/run based on settings in toaster-watcher.conf (instead of defaults) - InstallSqwebmail - expect and deal properly with bz2 - InstallCourier - expect and deal properly with bz2 - deleted InstallMysql (it's in MATT::Utility::Mysql) - Updated qmail to use new version 2.6 patch (based on Bill Shupp's toaster patch
- Added SSL pem creation to the ConfigCourier sub - Updated the toaster installation page.
- Fixed the InstallVpopmail routine so that mysql values get used when pulled from watcher.conf - InstallFilter creates /var/log/mail/maildrop.log and sets ownership on it to vpopmail - Moved UpdatePortsTree to MATT::FreeBSD - Added fastest_cvsup feature to UpdatePortsTree - Added more settings toaster-watcher.conf to override default values supplied in toaster-setup.pl
- Now reads the toaster-watcher.conf file and pulls config values from there. Don't be surprised when it doesn't ask you a slew of questions any longer. :) - Added CVS id tag to toaster_setup.pl - Added perl module files and released as Perl module. - Updated to support qmail-scanner 1.20 - Added MATT::Qmail dependencie (moving more code into MATT::Bundle for increased platform portability.
- updated dl_site to use tnpi.biz - added is_newer sub - updates to maillogs subs for increased reliability - mysql_install is now MUCH smarter. Should make things smoother for newbies - remove osirusoft from list of RBLs - removed FetchFile (get from MATT::Utility) - removed CdSrcDir (get from MATT::Utility)
- Added additional POD documentation - Moved InstallApache* into MATT::Apache - Added creating of /var/log/apache to InstallApache2 - Additional notes for QMAILQUEUE usage for qmail-scanner - Moved InstallMysqlTool to MATT::Mysql - Moved InstallGroup and InstallUser to MATT::Passwd - Moved InstallPackage, CheckPortsAge, and InstallPort to MATT::FreeBSD - Moved YesOrNo, FindTheBin, SysCmd, ReadFile, WriteFile to MATT::Utility
- Fixed a permissions error with $prot/log/run files - Added MATT::Utility dependency, removed subs GetAnswer, ReadFile, WriteFile, SysCmd, FindTheBin, YesOrNo
- Added --enable-rebuild-tcpserver-file=n to InstallVpopmail - Updated vpopmail to version 5.3.20 (devel) - Updated qmailadmin to 1.0.21 - Enable spam options in qmailadmin per filtering recipe - Added filtering page for assistance in setting up filtering
- Updated maillogs sub to run CreateSuperviseDirs - Commented out adding service/*/log/down files (Beginning to trend back towards using multilog)
- Removed mysqltool from setup page
- Update ucspi-tcp MySQL patch with query change submitted by Flavio Curti (curti@cyberlink.ch). Allows you to put entries for subnets in the MySQL relay table with a NULL timestamp and remove the necessity of putting your relay netblocks in a tcp.smtp.cdb file.
- Added InstallQmailScanner subroutine
- Fixed InstallQmailAdmin so that help files get installed properly on new installs - Updated so courier files get chmod to 755 - InstallVpopmail now asks about qmail-extensions - InstallVpopmail - added =y to --enable-valias - InstallFilter - added clamav port install
- Fixed InstallQmail so sources get removed before rebuild. - Qmail-smtpd is now chowned to vpopmail if you are using chk-usr functions.
- Misc updates for FreeBSD 4.8 - Added Apache2 install section - Apache2 also installs mod_php4 and mod_perl2 - Install cvsup-without-gui instead of cvsup - Install perl5 from ports (5.6.1)
- CheckPortsAge - fixed URL for cvsup-ports file retrieval - Ask if password learning should be enabled - Ask what type of vpopmail logging is desired. - Ask user if domains are owned by users other than vpopmail. If so, run the qmail-smtpd daemon as root. - Updated mod_ssl to 2.8.14 - Added domain quota question to Vpopmail interview - copy vlimits.h file to ~vpopmail/include/ - fixed typo (s/answer/ans) in InstallVpopmail
- Updated vpopmail version to 5.3.19 - Updated qmailadmin to 1.0.15
- Updated qmail-smtpd run file with ideas from LWQ - Changed URL for mysqltool.index.txt file
- $supervise/send/log/run how gets a working config file - Apache build goes a little farther, after getting input - Check for src earlier in qmail install
- Updated to use qmail-toaster patch 2.4 (added qmail-smtpd-chkusr patch)
- Added interview for $service files so they don't need to be hand edited after install - Added interview for netblocks (tcp.smtp) list that you need to relay for. - Build $qmaildir/service files (smtp/run, pop3/run) based on user input instead of my defaults. - Bugfix in RemoveOldApacheSources - Lots of reporting added to InstallSupervise and it's new list of subs - Don't bother re-installing qmailadmin help files if they are already present.
- Updated qmailadmin to 1.0.12 - Moved ChangeLog to web page
Updated qmailadmin to 1.0.12 Complete code review and updates to toaster_setup.pl (2.6). Lots of overall code updates to nearly every sub (audit) More build time interview questions. Code is now more portable (for a future on other platforms) Ironically, there was enough duplication that despite adding a bunch of fresh code, the resulting script is now smaller Wrapped shell commands in a SysCmd sub with error checking FetchFile calls are clean enough now to use any fetching tool (instead of just fetch). (portability) InstallPackage & InstallPort report better Install(User|Group) use get_*_nam functions ConfigQmail asks for SQL password instead of writing default value to $qmail/control/sql InstallEzmlm doesn't overwrite preinstalled config files Install stuff into $httpdir/data/mail if it exists Moved lots of redundant code from subs into SourceWarning Moved Personal Preferences to the top of the script
Updated qmailadmin to 1.0.9 Updated vpopmail to 5.3.16 Updated toaster_setup.pl script to 1.7 Dynamically configure qmailadmin based on answers to a series of questions. Now you're not necessarily stuck with my choices. :) Added install_vpopmail subroutine with lots of questions for user customizability Added read_file and write_file subs Made sure apache doesn't compile using old sources Added squirrelmail install Added cvsup (auto install, configure, and run). Added yes_or_no subroutine Added find_the_bin subroutine to make script more self configuring and more portable. Updated a bunch of system calls (rm, mv, and ln) to use perl functions for increased portability. Added socklog install function Added filtering section Made install section cleaner and prettier Added Apache install section Added defines: $toaster, $httpdir, $confdir Added Mysqltool install section Added qmailadmin install section Added sqwebmail install section Added courier imap build section Added check for stale ports tree Disable the $local/rc.d/qmail.sh file that is installed Fixed permission of $qmailcontrol/bin/servercert.pem Moved all $fetch calls into sub fetch_files Made the supervise directory creation much more robust Added more error checking and feedback to install_qmail Added install of ucspi-tcp to script Added better checks for user and group entries Updated qmailadmin with MySQL replication and quota fixes updated sqwebmail instructions, version to 3.3.7 Updated qmail patch (2.3) to use newer smtp-auth 0.31 Removed badmailfrom and badrcptto patches from qmail Updated toaster_setup.pl script to v1.4 Made the qmail binary install honor the $qmaildir Updated to smtp_run-1.1 (qmail-smtpd uid is now vpopmail) Owner of /var/qmail/control/sql needs to be vpopmail
cgi-bin dir changed to more normal location of cgi-bin. qmailadmin 1.0.6 - with quota support which I hacked in Vpopmail 5.3.5 - smth-auth works. :-) . patch - added qmailqueue & qpop3d maildir++ quota patches qmailqueue - Added qmailqueue support to my toaster patch toaster_setup.pl - moved a bunch more of the config and install steps into the script
Autoresponder is now installed from ports instead of as a package. As of 2/21/02 if you update your ports tree and install, you'll get version 2.02.
Vpopmail is updated from 5.0 to 5.2. You can simply install 5.2 right over top of 5.0 with no consequence.
Qmailadmin is updated from 1.0 to 1.02. Just install right over the old one.
Courier-IMAP is updated from 1.3.12 to 1.4.2. Adds quota support. Note the additional configuration steps in the courier install section of the toaster recipe.
Added TLS support to qmail-smtpd Updated smtp control file accordingly. Vpopmail updated to version 5.0 Courier-IMAP updated to 1.3.12 Sqwebmail updated to 3.2 Updated ucspi-tcp patch to include rss patch to rblsmtpd
Updated my qmail-toaster patch to use SMTP-AUTH 0.30 from http://members.elysium.pl/brush/qmail-smtpd-auth/
Changed Apache build to statically include mod_ssl, mod_php, & mod_perl. Mod perl fails when loaded dynamically and after toiling for many hours, I gave up and compiled it statically. I learned many others before me had gone down that road and failed as well.
MySQL authentication, SMTP tarpitting, & SMTP-AUTH support.
SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. Invoke tcpserver with the -S flag to utilize the new feature.
To install Mail::Toaster, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mail::Toaster
CPAN shell
perl -MCPAN -e shell install Mail::Toaster
For more information on module installation, please visit the detailed CPAN module installation guide.