Einmal zu Verständnis:
smtp = definiert den Client/Server Modus (dient nur für den Verkehr zwischen Mailservern)
smtpd = (daemon) definiert den Server Modus (für Enduser)
Mailsender (smtp) (beliebiger Quellport) -> Mailserver1 (smtpd) (25/465/587) = Mailserver1 (smtp) (25) <- Weiterleitung -> Mailserver2 (smtp) (25) => lokales Postfach => POP3/IMAP (Mailempfänger) (110/143/993/995)
Beim smtpd definierst du alle möglichen Arten der Authentifizierung, z.b. Mailsender muss sich anmelden (SMTP-AUTH), kann verschlüsselte Leitungen benutzen (SMTPS/Submission 465/587 mit SSL/TLS) usw ...
Beim smtp (Client/Server-Modus) entfallt das Ganze, was auch logisch ist, denn sonst müsste dein Mailserver per "Account" auf sämtlichen Fremd-Mailservern eingerichtet/autorisiert werden um Mails zustellen zu können.
schau ich meine /etc/postfix/main.cf mal durch, springen mir diese Einträge ins Auge:
Code:
smtpd_banner = $myhostname ESMTP
# TLS parameters
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
smtpd_use_tls = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
### ### ### PLITC ### ### ###
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf,
reject_unauth_destination,
reject_invalid_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unverified_recipient,
reject_rbl_client dnsbl.ahbl.org,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client dul.dnsbl.sorbs.net,
reject_rbl_client bl.spamcop.net,
reject_rbl_client zen.spamhaus.org
###
### ### ### PLITC ### ### ###
smtpd_tls_security_level = may
smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf
smtpd_client_restrictions = check_client_access mysql:/etc/postfix/mysql-virtual_client.cf
smtpd_client_message_rate_limit = 100
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
#
smtpd_tls_exclude_ciphers = SSLv2, aNULL, ADH, eNULL
#
smtpd_tls_ciphers = high
#
strict_rfc821_envelopes = yes
#
smtpd_helo_required = yes
smtpd_helo_restrictions = reject_invalid_hostname
dagegen die smtp (Client/Server Modus) Einträge:
Code:
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_bind_address6 = 2a01:XXXX:XXXX:XXXX::10
smtp_helo_name = $myhostname
Um deinen Mailserver also nicht unbrauchbar zu machen, sollten niemals solche Einträge wie:
Code:
#
# smtp_use_tls = yes
# smtp_enforce_tls = yes
# smtp_tls_enforce_peername = no
#
aktiv sein
Mit
smtp_bind_address bzw
smtp_bind_address6 legt du fest, unter welcher Absender-IP deine Mails verschickt werden. (smtp Client/Server Modus)
Meine Kisten haben jeweils immer nur 1 IPv4 Adresse, jedoch mehrere IPv6 Adressen, damit nun nicht wahllos per "Zufall" über irgendeine IPv6 Adresse die Daten verschickt werden, kannst du den Client/Server-Modus darauf binden.
Schließlich möchte man nicht zwangsläufig "vielen" IPv6 Adressen den selben PTR / ReverseDNS Namen geben.
Vergisst man smtp_bind_address/smtp_bind_address6 zu setzen, kann schnell der eigene Mailserver auf Blacklisten laden - siehe
RFC 2544
127.0.0.1 (localhost) dient nur für die Zwischenschichten (AMAVIS/ClamAV) Viren-Check/Spam-Filter und Konsorten ...
Mit
mynetworks erlaubst du Mailsendern, auch ohne smtpd Kriterien, den direkten Verstand von Mails.
Packst du also deine "öffentliche" IP Adresse rein, könnte ein Angreifer mit gehacktem Webaccount ein Script laufen lassen, was deine externe Schnittstelle aufgreift und SPAM verschleudert.
Das selbe gilt für jeglichen Traffic von diesen freigeschalteten IPs, sprich Port-Forwarding per
rinetd usw.
mynetworks ist wirklich mit Vorsicht zu genießen und sollte nur von glaubwürdigen Client-IPs verwendet werden.
Da ich unteranderem Sun Server verwende und die "stinkendalten" ALOM/ILOM Versionen kein SMTP-AUTH unterstützen, wurden diese per mynetworks freigeschaltet.
Nach dem ISPConfig Perfect Setup läuft der ganze Mailverkehr nur über Port 25, es bedarf also etwas nachträglicher Handarbeit um Postfix über 465/587 den Clients anbieten zu können (erste Anhaltspunkte habe ich dir mit den oben genannten Config-Einträgen gegeben)
Viele Provider/Internetcafés etc. blockieren aus Prinzip den Traffic über Port SMTP 25 und wünschen einfach den SMTP-AUTH Zwang unter 465/587 (sofern der Ziel-Mailserver dafür fit ist
)