Difference between revisions of "Postfix"
m |
m (update download URL) |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|- | |- | ||
!Download Source: | !Download Source: | ||
− | | | + | | ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-{{Postfix-Version}}.tar.gz |
|} | |} | ||
− | |||
---- | ---- | ||
− | + | {{Package-Introduction|The Postfix package contains a Mail Transport Agent.|http://www.postfix.org/}} | |
− | |||
− | The Postfix package contains a Mail Transport Agent. | ||
== Dependencies == | == Dependencies == | ||
− | === | + | === Optional === |
− | + | * [[Pcre]] | |
− | |||
− | * [[ | ||
* [[MySQL]] | * [[MySQL]] | ||
* [[PostgreSQL]] | * [[PostgreSQL]] | ||
Line 26: | Line 21: | ||
* [[cdb]] or [[TinyCDB]] | * [[cdb]] or [[TinyCDB]] | ||
+ | == Creating the Postfix User & Group == | ||
− | + | groupadd -g 33 postfix && | |
− | groupadd -g | + | groupadd -g 34 postdrop && |
− | groupadd -g | ||
useradd -c "Postfix Daemon User" -d /dev/null -g postfix \ | useradd -c "Postfix Daemon User" -d /dev/null -g postfix \ | ||
− | -s /bin/false -u | + | -s /bin/false -u 33 postfix && |
chown -v postfix:postfix /var/mail | chown -v postfix:postfix /var/mail | ||
== Non-Multilib == | == Non-Multilib == | ||
− | + | {{Postfix-Configuration}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Create the Makefiles and compile the package: | |
− | |||
− | |||
− | |||
− | + | make makefiles CCARGS="${CCARGS}" AUXLIBS="${AUXLIBS}" && | |
− | + | make | |
− | CCARGS= | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Install the package | Install the package | ||
Line 83: | Line 44: | ||
== Multilib == | == Multilib == | ||
− | === | + | === 64Bit === |
+ | {{Postfix-Configuration|libdir=lib64}} | ||
+ | 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 | |
− | |||
− | |||
− | + | [[Category:Non-GUI Clients]] |
Latest revision as of 03:12, 28 April 2010
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