Document
Sendmail 8.13.5 Configuration
Author
Mark <mark@ibiblio.org>



What is it

Sendmail 8.13.5 is a program for the delivering of email, generally across homogenous TCP/IP networks. The implementation that is shipped with Solaris is adequate but is generally lagging behind the latest available version and thus could contain security holes which are widely known.

The installation of the sendmail is controlled by the package subsystem, thus it is quite easy to install and upgrade when new versions become available.

The main web site for the software is http://www.sendmail.org/.



Compilation Of The Software


The software was compiled using this recipe:
    cd /var/tmp
    rm -rf sendmail-8.13.5
    untgz /usr/local/src/mail/sendmail.8.13.5.tar.gz
    cd sendmail-8.13.5/sendmail
    cat > /var/tmp/sendmail-8.13.5/devtools/Site/site.config.m4 << EOF
APPENDDEF(\`confENVDEF', \`-UNIS')
APPENDDEF(\`confENVDEF',\`-DSTARTTLS')
APPENDDEF(\`confLIBS', \`-lssl -lcrypto')
define(\`confLIBDIRS', \`-L/usr/local/lib -R/usr/local/lib')
define(\`confHFDIR', \`/usr/local/etc/mail')
define(\`confINCDIRS', \`-I/usr/local/include')
define(\`confINCGRP', \`root')
define(\`confINCMODE', \`644')
define(\`confINCLUDEDIR', \`/usr/local/include')
define(\`confEBINDIR', \`/usr/local/bin')
define(\`confLIBDIR', \`/usr/local/lib')
define(\`confLIBGRP', \`root')
define(\`confLIBMODE', \`644')
define(\`confLIBSEARCHPATH', \`/lib /usr/lib /usr/shlib /usr/local/lib')
define(\`confMANROOT', \`/usr/local/man/cat')
define(\`MANROOTMAN', \`/usr/local/man/man')
define(\`confMANOWN', \`root')
define(\`confMANGRP', \`root')
define(\`confMANMODE', \`644')
define(\`confMBINDIR', \`/usr/local/sbin')
define(\`confMBINOWN', \`root')
define(\`confMBINGRP', \`root')
define(\`confMBINMODE', \`755')
define(\`confSBINDIR', \`/usr/local/sbin')
define(\`confSBINOWN', \`root')
define(\`confSBINGRP', \`root')
define(\`confSHAREDLIBDIR', \`/usr/local/lib')
define(\`confSTDIR', \`/usr/local/etc/mail')
define(\`confUBINDIR', \`/usr/local/bin')
define(\`confUBINGRP', \`root')
define(\`confUBINOWN', \`root')
define(\`confUBINMODE', \`755')
define(\`confCC', \`cc')
EOF
    cat > /var/tmp/sendmail-8.13.5/cf/cf/sendmail.mc << EOF
divert(0)dnl
VERSIONID(\`\$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp \$')
OSTYPE(solaris2)dnl
DOMAIN(generic)dnl
FEATURE(\`use_cw_file')
FEATURE(\`always_add_domain')
FEATURE(\`access_db')
FEATURE(\`blacklist_recipients')
FEATURE(\`dnsbl',\`sbl-xbl.spamhaus.org')dnl
MAILER(local)dnl
MAILER(smtp)dnl
EOF
    sh Build
    cd /var/tmp/sendmail-8.13.5/cf
    m4 /var/tmp/sendmail-8.13.5/cf/m4/cf.m4 cf/sendmail.mc > sendmail.cf
    cd sendmail-8.13.5/sendmail
    sh Build install
    cd /var/tmp/sendmail-8.13.5/makemap
    sh Build
    sh Build install
    cp -r /var/tmp/sendmail-8.13.5/cf /usr/local/etc/mail/cf
    cp /var/tmp/sendmail-8.13.5/cf/cf/sendmail.mc /usr/local/etc/mail/sendmail.mc.demo
    cp /var/tmp/sendmail-8.13.5/cf/sendmail.cf /usr/local/etc/mail/sendmail.cf.demo


Installation Of The Software

You should install the db.4.3 and OpenSSL 0.9.8a packages before you install this version of sendmail.

Fetch the package and install it with:

    # umask 0
    # gunzip -c sendmail.8.13.5.SPARC.32bit.Solaris.9.pkg.tgz | /usr/bin/tar -xvvf -
    # pkgadd -d. sendmail
    # rm -rf sendmail


Configuration Of The Daemon

# cd /usr/local/etc/mail
# /usr/local/bin/m4 /usr/local/etc/mail/cf/m4/cf.m4 cf/cf/sendmail.mc > /usr/local/etc/mail/mybox.cf
# ln -s /usr/local/etc/mail/mybox.cf /usr/local/etc/mail/sendmail.cf


Make sure you use the GNU m4. This creates a generic file which you can modify. I'll take this opportunity to indicate a complete lack of desire to configure the few thousands of sendmail.cf files people will email me asking to fix. Buy the O'Reilly Sendmail book.

If the sendmail.?? files don't exist then use touch(1) to create them. sendmail will complain to alert you as to which ones it can't find.

Use /usr/local/sbin/makemap to create your access.db files etc as the one that ships with Solaris isn't linked with the Berkeley DB 4.3 library.



More answers to installation problems can be found at http://www.sendmail.org/faq/, the Release Notes and the sendmail web site.

Finally, send some test email to various destinations to verify local and remote functionality.



Email To
Send email to sendmail-bugs@sendmail.org

Solaris Issues
Each sendmail package requires installation on the Solaris release it was built on. Only install the correct version for your system.

Source Code
You can download the source code from ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.13.5.tar.gz

Special Issues
See the main packages README for installation information.