Inhaltsverzeichnis

Allgemein

Dieser Artikel beschreibt wie Postfix auf einem Mailserver installiert wird. Will man auf einem Desktoprechner Postfix als lokalen MTA einsetzen so sollte dem entsprechenden Artikel gefolgt werden, da es gewisse Unterschiede gibt.

Voraussetzung

Ein aktueller Port-Tree und root-Rechte sind Voraussetzung für die Installation von postfix. Des weiteren sind für den Betrieb als Mailserver ein gültiger MX-Eintrag notwendig.

Will man einen sicheren Server haben muss zunächst noch ein OpenSSL Zertifikat erstellen und CyrusSASL installieren und konfigurieren.

Installation

# cd /usr/ports/mail/postfix
# make install clean

Optionen

Als Optionen werden folgende Punkte angewählt:

 
[X] PCRE      Perl Compatible Regular Expressions
[X] SASL2     Cyrus SASLv2 (Simple Auth. and Sec. Layer)
[ ] DOVECOT   Dovecot SASL authentication method
[ ] SASLKRB   If your SASL req. Kerberos select this option
[ ] SASLKRB5  If your SASL req. Kerberos5 select this option
[ ] SASLKMIT  If your SASL req. MIT Kerberos5 select this option
[X] TLS       Enable SSL and TLS support
[ ] BDB       Berkeley DB (choose version with WITH_BDB_VER)
[ ] MYSQL     MySQL maps (choose version with WITH_MYSQL_VER)
[ ] PGSQL     PostgreSQL maps (choose with DEFAULT_PGSQL_VER)
[ ] OPENLDAP  OpenLDAP maps (choose ver. with WITH_OPENLDAP_VER)
[ ] CDB       CDB maps lookups
[ ] NIS       NIS maps lookups
[ ] VDA       VDA (Virtual Delivery Agent 32Bit)
[ ] TEST      SMTP/LMTP test server and generator

Auf die Frage

You need user "postfix" added to group "mail".
Would you like me to add it [y]?

wird mit y geantwortet und

Would you like to activate Postfix in /etc/mail/mailer.conf [n]?

wird auch mit y bestätigt.

Postfix konfigurieren

Die Datei /usr/local/etc/postfix/main.cf enthält die Konfiguration von postfix. Die folgenden Zeilen werden aktiviert (das führende # entfernt):

myhostname = EIGENER-HOSTNAME
myorigin = $myhostname
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks_style = host
home_mailbox = Maildir/

In die Zeile mydestination können auch noch mehr Domainnamen eingetragen werden für welche der Server Mails akzeptieren soll.

Zur Aktivierung von CyrusSASL und OpenSSL werden folgende Zeilen hinzugefügt:

smtp_sasl_auth_enable = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $mydomain
broken_sasl_auth_clients = yes
smtp_sasl_password_maps = hash:/usr/local/etc/sasldb2
smtpd_recipient_restrictions = permit_sasl_authenticated permit_mynetworks reject_unauth_destination

smtp_tls_CAfile = /etc/opensslcerts/official-mail.crt
smtp_tls_cert_file = /etc/opensslcerts/official-mail.crt
smtp_tls_key_file = /etc/opensslcerts/mail.key
smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache
smtp_tls_security_level = may
smtpd_tls_CAfile = /etc/opensslcerts/official-mail.crt
smtpd_tls_cert_file = /etc/opensslcerts/official-mail.crt
smtpd_tls_key_file = /etc/opensslcerts/mail.key
smtpd_tls_session_cache_database = btree:/var/run/smtpd_tls_session_cache
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
tls_random_source = dev:/dev/urandom
smtpd_tls_auth_only = yes

Als nächstes wird die Alias-Datenbank neu angelegt und an die für postfix richtige Stelle verlinkt.

# postalias /etc/mail/aliases
# ln -s /etc/mail/aliases.db /etc/aliases.db
# newaliases 

Postfix starten

Damit postfix beim nächsten Start geladen wird und sendmail nicht weiter für den Mailverkehr genutzt wird muss die /etc/rc.conf um folgende Zeilen erweitert werden:

# Postfix statt Sendmail
postfix_enable="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"

Sendmail Wartung deaktivieren

Anschliessend wird die Datei /etc/periodic.conf erzeugt und folgende Zeilen in selbige eingefügt um keine Wartungsarbeiten mehr an sendmail vorzunehmen.

daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"