Postfix
Download Source: | ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-2.5.10.tar.gz |
---|
Contents
Introduction to Postfix
The Postfix package contains a Mail Transport Agent.
Project Homepage: http://www.postfix.org/
Dependencies
Optional
Creating the Postfix User & Group
groupadd -g 33 postfix && groupadd -g 34 postdrop && useradd -c "Postfix Daemon User" -d /dev/null -g postfix \ -s /bin/false -u 33 postfix && chown -v postfix:postfix /var/mail
Non-Multilib
To build postfix we need to build the makefiles. Use the following commands to create the appropriate CCARGS and AUXLIBS variables:
export CCARGS="-DDEF_DAEMON_DIR=\\\"/usr/lib/postfix\\\" \ -DDEF_MANPAGE_DIR=\\\"/usr/share/man\\\" \ -DDEF_HTML_DIR=\\\"/usr/share/doc/postfix-2.5.10/html\\\" \ -DDEF_README_DIR=\\\"/usr/share/doc/postfix-2.5.10/README\\\"" export AUXLIBS=""
PCRE Support:
export CCARGS="${CCARGS} -DHAS_PCRE -I/usr/include" export AUXLIBS="${AUXLIBS} -L/usr/lib -lpcre"
TLS Authentication
export CCARGS="${CCARGS} -DUSE_TLS -I/usr/include/openssl" export AUXLIBS="${AUXLIBS} -L/usr/lib -lssl -lcrypto"
To use TLS you will also need CyrusSASL
Cyrus-SASL
export CCARGS="${CCARGS} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" export AUXLIBS="${AUXLIBS} -L/usr/lib -lsasl2"
OpenLDAP
export CCARGS="${CCARGS} -I/usr/include -DHAS_LDAP" export AUXLIBS="${AUXLIBS} -L/usr/lib -lldap -llber"
MySQL
export CCARGS="${CCARGS} -DHAS_MYSQL -I/usr/include/mysql" export AUXLIBS="${AUXLIBS} -L/usr/lib -lmysqlclient -lz -lm"
PostgreSQL
export CCARGS="${CCARGS} -DHAS_PGSQL -I/usr/include/postgresql" export AUXLIBS="${AUXLIBS} -L/usr/lib -lpq -lz -lm"
TinyCDB
export CCARGS="${CCARGS} -DHAS_CDB" export AUXLIBS="${AUXLIBS} </path/to/CDB>/libcdb.a"
Create the Makefiles and compile the package:
make makefiles CCARGS="${CCARGS}" AUXLIBS="${AUXLIBS}" && make
Install the package
sh postfix-install -non-interactive
Multilib
64Bit
To build postfix we need to build the makefiles. Use the following commands to create the appropriate CCARGS and AUXLIBS variables:
export CCARGS="-DDEF_DAEMON_DIR=\\\"/usr/lib64/postfix\\\" \ -DDEF_MANPAGE_DIR=\\\"/usr/share/man\\\" \ -DDEF_HTML_DIR=\\\"/usr/share/doc/postfix-2.5.10/html\\\" \ -DDEF_README_DIR=\\\"/usr/share/doc/postfix-2.5.10/README\\\"" export AUXLIBS=""
PCRE Support:
export CCARGS="${CCARGS} -DHAS_PCRE -I/usr/include" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lpcre"
TLS Authentication
export CCARGS="${CCARGS} -DUSE_TLS -I/usr/include/openssl" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lssl -lcrypto"
To use TLS you will also need CyrusSASL
Cyrus-SASL
export CCARGS="${CCARGS} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lsasl2"
OpenLDAP
export CCARGS="${CCARGS} -I/usr/include -DHAS_LDAP" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lldap -llber"
MySQL
export CCARGS="${CCARGS} -DHAS_MYSQL -I/usr/include/mysql" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lmysqlclient -lz -lm"
PostgreSQL
export CCARGS="${CCARGS} -DHAS_PGSQL -I/usr/include/postgresql" export AUXLIBS="${AUXLIBS} -L/usr/lib64 -lpq -lz -lm"
TinyCDB
export CCARGS="${CCARGS} -DHAS_CDB" export AUXLIBS="${AUXLIBS} </path/to/CDB>/libcdb.a"
Create the Makefiles and compile the package:
make makefiles CCARGS="-m64 ${CCARGS}" AUXLIBS="${AUXLIBS}" && make
Install the package
sh postfix-install -non-interactive
Configuration
Bootscript
Install the init script included in the Bootscripts package.
make install-postfix