Gli MTA sono i programmi che trasportano posta da una macchina all'altra. Il tradizionale MTA è Sendmail, tuttavia ci sono molte altre scelte.
Ci sono server SMTP, server POP (qpopper) e un server IMAP (Courier-IMAP).
Il pacchetto Postfix contiene un Mail Transport Agent (MTA). Esso serve per inviare email ad altri utenti della propria macchina host. Può anche essere configurato per essere una server di posta centrale per il proprio dominio, un mail relay agent o semplicemente un mail delivery agent per il proprio Internet Service Provider (ISP) locale.
Download (HTTP): http://www.mirrorspace.org/postfix/official/postfix-2.1.5.tar.gz
Download (FTP): ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-2.1.5.tar.gz
Download MD5 sum: bcaa4aac80595d04c60c72844203a04d
Dimensione del download: 1.9 MB
Stima dello spazio su disco richiesto: 81 MB
Stima del tempo di costruzione: 0.29 SBU
L'albero sorgente di Postfix non contiene uno script configure, ma il makefile nella directory top-level contiene un target makefiles che rigenera tutti gli altri makefile nell'albero di costruzione. Se si desidera usare software aggiuntivo come un database back-end per utenti virtuali, o autenticazione TLS/SSL, bisognerà rigenerare i makefile usando uno o più dei settaggi CCARGS e AUXLIBS appropriati elencati di seguito.
Qui c'è un esempio che combina gli argomenti TLS/SSL e Cyrus-SASL:
make makefiles \
CCARGS="-DHAS_SSL -DUSE_SASL_AUTH -I/usr/include/openssl -I/usr/include/sasl" \
AUXLIBS="-L/usr/lib -R/usr/lib -lssl -lcrypto -lsasl2"
Per usare l'autenticazione SSL/TLS con Postfix, sarà prima necessario applicare una patch disponibile presso ftp://ftp.aet.tu-cottbus.de/pub/postfix_tls/pfixtls-0.8.18-2.1.3-0.9.7d.tar.gz. Scompattare il tarball della patch e applicarla con i seguenti comandi:
patch -p1 < ../pfixtls-0.8.18-2.1.3-0.9.7d/pfixtls.diff
Sarà necessario passare i seguenti valori al comando make makefiles:
CCARGS="-DHAS_SSL -I/usr/include/openssl" \ AUXLIBS="-L/usr/lib -lssl -lcrypto"
Per usare SSL o TLS sarà anche necessario Cyrus SASL-2.1.20.
Per usare Cyrus-SASL con Postfix, usare i seguenti argomenti:
CCARGS="-DUSE_SASL_AUTH -I/usr/include/sasl" \ AUXLIBS="-L/usr/lib -R/usr/lib -lsasl2"
Per usare OpenLDAP con Postfix, usare i seguenti argomenti:
CCARGS="-I/usr/include -DHAS_LDAP" \ AUXLIBS="-L/usr/lib -lldap -llber"
Per usare MySQL con Postfix, usare i seguenti argomenti:
CCARGS="-DHAS_MYSQL -I/usr/include/mysql" \ AUXLIBS="-L/usr/lib -lmysqlclient -lz -lm"
Prima di compilare il programma bisogna creare utenti e gruppi che lo script di installazione si aspetterà di trovare. Aggiungere gli utenti e gruppi con i seguenti comandi:
groupadd postfix &&
groupadd postdrop &&
groupadd -g 65534 nogroup &&
useradd -c postfix -d /dev/null -g postfix -s /bin/false postfix &&
useradd -c nobody -d /home -g nogroup -s /bin/bash -u 65534 nobody &&
chown postfix:postfix /var/mail
Installare Postfix eseguendo i seguenti comandi:
make &&
sh postfix-install daemon_directory=/usr/sbin \
manpage_directory=/usr/share/man \
sample_directory=/usr/share/doc/postfix \
-non-interactive
L'ultimo passo è l'installazione della documentazione del programma con i seguenti comandi:
install -d /usr/share/doc/postfix &&
cp -rf html/* /usr/share/doc/postfix
sh postfix-install ... -non-interactive : questo evita che lo script di installazione faccia domande, accettando così le directory di destinazione di default ovunque tranne nei tre casi esplicitamente menzionati.
make makefiles : questo comando ricostruisce i makefile attraverso l'albero sorgenti per usare le opzioni contenute nelle variabili CCARGS e AUXLIBS.
cat >> /etc/aliases << "EOF" # Begin /etc/aliases MAILER-DAEMON: postmaster postmaster: root root: LOGIN # End /etc/aliases EOF
Per proteggere un esistente file /etc/aliases il precedente comando aggiunge ad esso questi alias, se esiste. Questo file deve essere verificato e gli alias duplicati rimossi, se presenti.
Il file /etc/aliases che è stato appena creato o aggiunto, main.cf e master.cf devono venire personalizzati per il proprio sistema. Il file aliases necessita le propria identità di login non-root, in modo che la posta indirizzata a root possa essere inoltrata a voi al livello utente. Il file main.cf ha bisogno del proprio fully qualified hostname. Tutte queste modifiche possono essere fatte con comandi sed inseriti nella console con le appropriate sostituzioni per il proprio login name non-root per [utente] e il proprio fully qualified hostname per [localhost.localdomain]. Si troverà che il file main.cf è auto-documentato, quindi caricarlo nel proprio editor per fare i cambiamenti necessari per la propria situazione.
sed -i "s/LOGIN/[user]/" /etc/aliases &&
sed -i "s/#myhostname = host.domain.tld/myhostname = \
[localhost.localdomain]/" /etc/postfix/main.cf &&
/usr/bin/newaliases &&
/usr/sbin/postfix start
Per automatizzare l'esecuzione di Postfix all'accensione installare l'init script /etc/rc.d/init.d/postfix incluso nel pacchettoblfs-bootscripts-6.0.
make install-postfix
un demone che mantiene file log per messaggio con informazioni di stato di mancato recapito.
un demone che processa posta in ingresso, la inserisce nella coda della posta in ingresso, e informa il gestore della coda del suo arrivo.
un demone che processa richieste non-delivery dal gestore della coda.
un demone che mantiene una registrazione della posta rinviata a destinazione.
un demone che processa richieste di consegna messaggi dal gestore della coda.
un demone che processa richieste di consegna dal gestore della coda per recapitare posta ai destinatari locali.
un link simbolico a sendmail.
il processo residente che esegue il demone Postfix su richiesta.
un link simbolico a sendmail.
un demone che attende l'arrivo di posta in ingresso e la sistema per la sua consegna.
il gestore della coda vecchio stile. Esso verrà presto rimosso.
un demone che attende che gli venga notificato che nuova posta è stata buttata nella directory maildrop, e la invia al demone cleanup.
un demone che processa richieste dal manager della coda per recapitare messaggi a comandi esterni.
crea o fa richieste ad uno o più database di alias di Postfix, o ne aggiorna uno esistente.
stampa i contenuti dei file named in formato leggibile dall'uomo.
visualizza o cambia il valore dei parametri di configurazione di Postfix.
crea un file nella directory maildrop e copia il suo standard input nel file.
controlla l'operazione del sistema di posta Postfix.
invia richieste al servizio specificato su un canale di trasporto locale.
blocca una casella di posta per un uso esclusivo ed esegue comandi passati ad esso.
un'intefaccia di log compatibile con Postfix per l'uso, ad esempio, in script di shell.
crea o invia richieste a una o più tabelle di ricerca di Postfix o ne aggiorna una esistente.
l'interfaccia utente di Postfix per la gestione della coda.
l'interfaccia utente di Postfix per la gestione della coda da parte del superutente.
fornisce servizi di ricerca su tabelle in sola lettura ad altri processi Postfix.
un demone che attende l'arrivo di posta in ingresso e dispone la sua consegna.
un demone che riceve un messaggio per connessione, e fa un pipe tramite il demone cleanup, e lo mette nella coda di ingresso.
l'interfaccia di compatibilità da Postfix a Sendmail.
un demone che riporta lo stato della coda di posta di Postfix.
cerca un elenco di indirizzi di mail exchanger per l'host di destinazione, ordina l'elenco sulla base delle preferenze e si connette a ciascun indirizzo elencato fino a quando trova un server che risponda.
accetta richieste di connessioni di rete ed esegue zero o più transazioni SMTP per connessione.
si pone in ascolto di una porta come specificato nel file master.cf di Postfix e produce un comando esterno qualora venga stabilita una connessione.
un demone che riscrive indirizzi in forma standard.
mantiene un record di quali indirizzi destinatari sono noti come recapitabili o non recapitabili.
recapita posta alle directory di posta degli utenti virtuali.