[postfix-users] Mailqueue wird mails nicht los
Hi list,
seit kurzem ist mir aufgefallen dass unser postfix-mail-server 1, der als haupt-mail-server fungiert und die mails nach innen und aussen weiterleitet, die queue mit allerhand mails voll hat. Darunter sind auch mails an verteiler.
Teilweise gibt es timeouts bei der kommunikation mit dem mailserver 2, welcher die postfächer enthält. (postfix, dovecot mit 2000 postfächern)
Postqueue p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Diese Mails an die Verteiler stecken seit einigen Tagen in der queue fest.
Was blockiert die Aussendung dieser Verteiler-Mail ?
Vor allem gibt es keine Meldung, dass die Mails verzögert werden oder nicht angekommen sind.
Die log-Dateien geben nichts verdächtiges aus.
Wie gesagt, mails gehen rein und raus, nur bei den mails an die verteiler hakt es ordentlich.
Config n (mailserver 1)
Mailserver 1:/ # postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
allow_percent_hack = yes
append_at_myorigin = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
content_filter =
daemon_directory = /usr/lib/postfix
debug_peer_level = 20
default_destination_recipient_limit = 9000
default_extra_recipient_limit = 9000
defer_transports =
disable_dns_lookups = no
empty_address_recipient = MAILER-DAEMON
inet_interfaces = IP
local_recipient_maps = unix:passwd.byname $alias_maps
mail_owner = postfix
mail_spool_directory = /var/mail
mailbox_command =
mailbox_size_limit = 0
mailbox_transport =
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
maps_rbl_domains = pbl.spamhaus.org sbl-xbl.spamhaus.org relays.ordb.org combined.njabl.org
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains = domain.de
masquerade_exceptions = root
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, domain-2.de
mydomain = domain.de
myhostname = server.domain.de
mynetworks = IP
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix/README_Debian
relay_domains = $mydestination
relayhost =
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtp_sasl_auth_enable = no
smtp_use_tls = no
smtpd_client_restrictions = reject_rbl_client sbl-xbl.spamhaus.org reject_rbl_client cbl.abuseat.org
smtpd_helo_required = yes
smtpd_helo_restrictions =
smtpd_recipient_limit = 9000
smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination
smtpd_sasl_auth_enable = no
smtpd_use_tls = no
strict_rfc821_envelopes = no
swap_bangpath = yes
unknown_local_recipient_reject_code = 450
virtual_alias_domains = virtual-domain.de
virtual_alias_maps = hash:/etc/postfix/virtual
postconf n (mailserver 2)
mailserver 2:~# postconf -n
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
default_destination_recipient_limit = 9000
default_extra_recipient_limit = 9000
home_mailbox = Maildir/
html_directory = /usr/share/doc/postfix/html
inet_interfaces = IP
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
message_size_limit = 30960000
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = mailserver 2.domain.de
myhostname = mailserver 2.domain.de
mynetworks = IPs
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix
relay_domains = $mydestination
sample_directory = /usr/share/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_recipient_limit = 9000
unknown_local_recipient_reject_code = 550
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue –p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
Danke Florian, also meinst du den Wert default_destination_recipient_limit = 9000 runtersetzen und welches timeout? smtp_connect_timeout = 30s ?
Hier meine Werte:
Optionen zum timeout: postconf | grep timeout
Mailserver 1
connection_cache_protocol_timeout = 5s daemon_timeout = 18000s ipc_timeout = 3600s lmtp_connect_timeout = 0s lmtp_data_done_timeout = 600s lmtp_data_init_timeout = 120s lmtp_data_xfer_timeout = 180s lmtp_lhlo_timeout = 300s lmtp_mail_timeout = 300s lmtp_quit_timeout = 300s lmtp_rcpt_timeout = 300s lmtp_rset_timeout = 20s lmtp_starttls_timeout = 300s lmtp_tls_session_cache_timeout = 3600s lmtp_xforward_timeout = 300s milter_command_timeout = 30s milter_connect_timeout = 30s milter_content_timeout = 300s qmqpd_timeout = 300s smtp_connect_timeout = 30s smtp_data_done_timeout = 600s smtp_data_init_timeout = 120s smtp_data_xfer_timeout = 180s smtp_helo_timeout = 300s smtp_mail_timeout = 300s smtp_quit_timeout = 300s smtp_rcpt_timeout = 300s smtp_rset_timeout = 20s smtp_starttls_timeout = 300s smtp_tls_session_cache_timeout = 3600s smtp_xforward_timeout = 300s smtpd_policy_service_timeout = 100s smtpd_proxy_timeout = 100s smtpd_starttls_timeout = 300s smtpd_timeout = 300s smtpd_tls_session_cache_timeout = 3600s trigger_timeout = 10s
und zum recipient_limit: postconf | grep recipient_limit
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 lmtp_destination_recipient_limit = $default_destination_recipient_limit local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 relay_destination_recipient_limit = $default_destination_recipient_limit smtp_destination_recipient_limit = $default_destination_recipient_limit smtpd_recipient_limit = 9000 virtual_destination_recipient_limit = $default_destination_recipient_limit
Mailserver 2 hat dieselben Werte.
Die Queue ist immer noch rappelvoll. Hab sie auch schon geflushed, jedoch gibt es dann wieder nen timeout, bzw. noch ne Meldung wie
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
-----Ursprüngliche Nachricht----- Von: Florian Streibelt [mailto:postfix@f-streibelt.de] Gesendet: Donnerstag, 3. Juni 2010 10:54 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Cc: Andreas Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
local_destination_recipient_limit = 1 Was hat es genau mit diesem Wert auf sich? Ist der nicht unterdimensioniert?
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Andreas Gesendet: Donnerstag, 3. Juni 2010 14:18 An: 'Florian Streibelt' Cc: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
Danke Florian, also meinst du den Wert default_destination_recipient_limit = 9000 runtersetzen und welches timeout? smtp_connect_timeout = 30s ?
Hier meine Werte:
Optionen zum timeout: postconf | grep timeout
Mailserver 1
connection_cache_protocol_timeout = 5s daemon_timeout = 18000s ipc_timeout = 3600s lmtp_connect_timeout = 0s lmtp_data_done_timeout = 600s lmtp_data_init_timeout = 120s lmtp_data_xfer_timeout = 180s lmtp_lhlo_timeout = 300s lmtp_mail_timeout = 300s lmtp_quit_timeout = 300s lmtp_rcpt_timeout = 300s lmtp_rset_timeout = 20s lmtp_starttls_timeout = 300s lmtp_tls_session_cache_timeout = 3600s lmtp_xforward_timeout = 300s milter_command_timeout = 30s milter_connect_timeout = 30s milter_content_timeout = 300s qmqpd_timeout = 300s smtp_connect_timeout = 30s smtp_data_done_timeout = 600s smtp_data_init_timeout = 120s smtp_data_xfer_timeout = 180s smtp_helo_timeout = 300s smtp_mail_timeout = 300s smtp_quit_timeout = 300s smtp_rcpt_timeout = 300s smtp_rset_timeout = 20s smtp_starttls_timeout = 300s smtp_tls_session_cache_timeout = 3600s smtp_xforward_timeout = 300s smtpd_policy_service_timeout = 100s smtpd_proxy_timeout = 100s smtpd_starttls_timeout = 300s smtpd_timeout = 300s smtpd_tls_session_cache_timeout = 3600s trigger_timeout = 10s
und zum recipient_limit: postconf | grep recipient_limit
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 lmtp_destination_recipient_limit = $default_destination_recipient_limit local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 relay_destination_recipient_limit = $default_destination_recipient_limit smtp_destination_recipient_limit = $default_destination_recipient_limit smtpd_recipient_limit = 9000 virtual_destination_recipient_limit = $default_destination_recipient_limit
Mailserver 2 hat dieselben Werte.
Die Queue ist immer noch rappelvoll. Hab sie auch schon geflushed, jedoch gibt es dann wieder nen timeout, bzw. noch ne Meldung wie
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
-----Ursprüngliche Nachricht----- Von: Florian Streibelt [mailto:postfix@f-streibelt.de] Gesendet: Donnerstag, 3. Juni 2010 10:54 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Cc: Andreas Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
_______________________________________________ postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
* Andreas postfix-users@de.postfix.org:
local_destination_recipient_limit = 1 Was hat es genau mit diesem Wert auf sich?
Dieser Wert bestimmt wieviele Empfänger Postfix auf einmal an das lokale Zustellprogramm (local delivery agent) übergeben soll.
Ist der nicht unterdimensioniert?
Nein, auf keinen Fall. Die meisten LDAs (local delivery agent) können sogar nur einen Empfänger pro Aufruf verarbeiten.
Ich habe den Verdacht, Du hast - ohne es im Moment richtig zu verstehen - einige "Optimierungen" an Postfix vorgenommen. Stimmt das?
Wenn ja, dann sollten wir die gesamte Config einer gewissenhaften Prüfung unterziehen, um die richtigen Optimierungen zu belassen und die falschen Fehlkonfigurationen auszumerzen.
In dem Fall sende bitte Ausgabe von "postconf -n"; sie identifiziert nur die veränderten, neu gesetzten Werte.
p@rick
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Andreas Gesendet: Donnerstag, 3. Juni 2010 14:18 An: 'Florian Streibelt' Cc: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
Danke Florian, also meinst du den Wert default_destination_recipient_limit = 9000 runtersetzen und welches timeout? smtp_connect_timeout = 30s ?
Hier meine Werte:
Optionen zum timeout: postconf | grep timeout
Mailserver 1
connection_cache_protocol_timeout = 5s daemon_timeout = 18000s ipc_timeout = 3600s lmtp_connect_timeout = 0s lmtp_data_done_timeout = 600s lmtp_data_init_timeout = 120s lmtp_data_xfer_timeout = 180s lmtp_lhlo_timeout = 300s lmtp_mail_timeout = 300s lmtp_quit_timeout = 300s lmtp_rcpt_timeout = 300s lmtp_rset_timeout = 20s lmtp_starttls_timeout = 300s lmtp_tls_session_cache_timeout = 3600s lmtp_xforward_timeout = 300s milter_command_timeout = 30s milter_connect_timeout = 30s milter_content_timeout = 300s qmqpd_timeout = 300s smtp_connect_timeout = 30s smtp_data_done_timeout = 600s smtp_data_init_timeout = 120s smtp_data_xfer_timeout = 180s smtp_helo_timeout = 300s smtp_mail_timeout = 300s smtp_quit_timeout = 300s smtp_rcpt_timeout = 300s smtp_rset_timeout = 20s smtp_starttls_timeout = 300s smtp_tls_session_cache_timeout = 3600s smtp_xforward_timeout = 300s smtpd_policy_service_timeout = 100s smtpd_proxy_timeout = 100s smtpd_starttls_timeout = 300s smtpd_timeout = 300s smtpd_tls_session_cache_timeout = 3600s trigger_timeout = 10s
und zum recipient_limit: postconf | grep recipient_limit
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 lmtp_destination_recipient_limit = $default_destination_recipient_limit local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 relay_destination_recipient_limit = $default_destination_recipient_limit smtp_destination_recipient_limit = $default_destination_recipient_limit smtpd_recipient_limit = 9000 virtual_destination_recipient_limit = $default_destination_recipient_limit
Mailserver 2 hat dieselben Werte.
Die Queue ist immer noch rappelvoll. Hab sie auch schon geflushed, jedoch gibt es dann wieder nen timeout, bzw. noch ne Meldung wie
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
-----Ursprüngliche Nachricht----- Von: Florian Streibelt [mailto:postfix@f-streibelt.de] Gesendet: Donnerstag, 3. Juni 2010 10:54 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Cc: Andreas Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
GROSSES TENNIS! Ich habe den Parameter gerade verwechselt und Dir gerade totalen Unsinn erzählt...
default_destination_recipient_limit steht für die maximale Anzahl an Empfängern für die Programm lmtp(8), pipe(8), smtp(8) und virtual(8) und legt fest wieviele Empfänger sie in einer Mail auf einmal akkzeptieren. Der Standardwert von 50 entspricht den Vorgaben des RFC und du solltest ihn nicht unbegründet verändern.
Schick mal "postconf -n" für Deine Mailserver...
p@rick
* Patrick Ben Koetter postfix-users@de.postfix.org:
- Andreas postfix-users@de.postfix.org:
local_destination_recipient_limit = 1 Was hat es genau mit diesem Wert auf sich?
Dieser Wert bestimmt wieviele Empfänger Postfix auf einmal an das lokale Zustellprogramm (local delivery agent) übergeben soll.
Ist der nicht unterdimensioniert?
Nein, auf keinen Fall. Die meisten LDAs (local delivery agent) können sogar nur einen Empfänger pro Aufruf verarbeiten.
Ich habe den Verdacht, Du hast - ohne es im Moment richtig zu verstehen - einige "Optimierungen" an Postfix vorgenommen. Stimmt das?
Wenn ja, dann sollten wir die gesamte Config einer gewissenhaften Prüfung unterziehen, um die richtigen Optimierungen zu belassen und die falschen Fehlkonfigurationen auszumerzen.
In dem Fall sende bitte Ausgabe von "postconf -n"; sie identifiziert nur die veränderten, neu gesetzten Werte.
p@rick
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Andreas Gesendet: Donnerstag, 3. Juni 2010 14:18 An: 'Florian Streibelt' Cc: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
Danke Florian, also meinst du den Wert default_destination_recipient_limit = 9000 runtersetzen und welches timeout? smtp_connect_timeout = 30s ?
Hier meine Werte:
Optionen zum timeout: postconf | grep timeout
Mailserver 1
connection_cache_protocol_timeout = 5s daemon_timeout = 18000s ipc_timeout = 3600s lmtp_connect_timeout = 0s lmtp_data_done_timeout = 600s lmtp_data_init_timeout = 120s lmtp_data_xfer_timeout = 180s lmtp_lhlo_timeout = 300s lmtp_mail_timeout = 300s lmtp_quit_timeout = 300s lmtp_rcpt_timeout = 300s lmtp_rset_timeout = 20s lmtp_starttls_timeout = 300s lmtp_tls_session_cache_timeout = 3600s lmtp_xforward_timeout = 300s milter_command_timeout = 30s milter_connect_timeout = 30s milter_content_timeout = 300s qmqpd_timeout = 300s smtp_connect_timeout = 30s smtp_data_done_timeout = 600s smtp_data_init_timeout = 120s smtp_data_xfer_timeout = 180s smtp_helo_timeout = 300s smtp_mail_timeout = 300s smtp_quit_timeout = 300s smtp_rcpt_timeout = 300s smtp_rset_timeout = 20s smtp_starttls_timeout = 300s smtp_tls_session_cache_timeout = 3600s smtp_xforward_timeout = 300s smtpd_policy_service_timeout = 100s smtpd_proxy_timeout = 100s smtpd_starttls_timeout = 300s smtpd_timeout = 300s smtpd_tls_session_cache_timeout = 3600s trigger_timeout = 10s
und zum recipient_limit: postconf | grep recipient_limit
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 lmtp_destination_recipient_limit = $default_destination_recipient_limit local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 relay_destination_recipient_limit = $default_destination_recipient_limit smtp_destination_recipient_limit = $default_destination_recipient_limit smtpd_recipient_limit = 9000 virtual_destination_recipient_limit = $default_destination_recipient_limit
Mailserver 2 hat dieselben Werte.
Die Queue ist immer noch rappelvoll. Hab sie auch schon geflushed, jedoch gibt es dann wieder nen timeout, bzw. noch ne Meldung wie
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
-----Ursprüngliche Nachricht----- Von: Florian Streibelt [mailto:postfix@f-streibelt.de] Gesendet: Donnerstag, 3. Juni 2010 10:54 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Cc: Andreas Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue p auf mail server 1 enthält viele Nachrichten einer Aussendung an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
-- state of mind Digitale Kommunikation
Franziskanerstraße 15 Telefon +49 89 3090 4664 81669 München Telefax +49 89 3090 4666
Amtsgericht München Partnerschaftsregister PR 563
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
'Patrick Ben Koetter' schrieb am 03.06.2010 14:48:
GROSSES TENNIS! Ich habe den Parameter gerade verwechselt und Dir gerade totalen Unsinn erzählt...
default_destination_recipient_limit steht für die maximale Anzahl an Empfängern für die Programm lmtp(8), pipe(8), smtp(8) und virtual(8) und legt fest wieviele Empfänger sie in einer Mail auf einmal akkzeptieren. Der Standardwert von 50 entspricht den Vorgaben des RFC und du solltest ihn nicht unbegründet verändern.
Seine Werte:
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 qmgr_message_recipient_limit = 20000 smtpd_recipient_limit = 9000
*hust* hier mal zum Vergelich die 'defaults':
default_destination_recipient_limit = 50 default_extra_recipient_limit = 1000 default_recipient_limit = 20000 local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 smtpd_recipient_limit = 1000
Das backend wird dann schon etwas in schwitzen kommen >1k empfängern ;) Ich meine, das sind ja in der Regel dann 1k Baumtraversionen im ldap oder 1k*x sql queries die er da abfeuert...
/Florian
Danke, für die Hinweise. Die default-werte wurden angepasst aufgrund der tatsasche dass mails an verteiler mit ca. 4000 postfächern fehlermeldungen gaben, wie z.B.: Too many recipients Welcher recipient_limit-wert sollte bei dieser meldung dann erhöht werden?
Ich habe jetzt jedenfalls die default-werte wiederhergestellt.
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Florian Streibelt Gesendet: Donnerstag, 3. Juni 2010 14:56 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Patrick Ben Koetter' schrieb am 03.06.2010 14:48:
GROSSES TENNIS! Ich habe den Parameter gerade verwechselt und Dir gerade totalen Unsinn erzählt...
default_destination_recipient_limit steht für die maximale Anzahl an Empfängern für die Programm lmtp(8), pipe(8), smtp(8) und virtual(8)
und
legt fest wieviele Empfänger sie in einer Mail auf einmal akkzeptieren.
Der
Standardwert von 50 entspricht den Vorgaben des RFC und du solltest ihn
nicht
unbegründet verändern.
Seine Werte:
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 qmgr_message_recipient_limit = 20000 smtpd_recipient_limit = 9000
*hust* hier mal zum Vergelich die 'defaults':
default_destination_recipient_limit = 50 default_extra_recipient_limit = 1000 default_recipient_limit = 20000 local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 smtpd_recipient_limit = 1000
Das backend wird dann schon etwas in schwitzen kommen >1k empfängern ;) Ich meine, das sind ja in der Regel dann 1k Baumtraversionen im ldap oder 1k*x sql queries die er da abfeuert...
/Florian _______________________________________________ postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
Ja, ich habe Optimierungen vorgenommen. Hier sind sie:
Mailserver 1:/ # postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases allow_percent_hack = yes append_at_myorigin = yes command_directory = /usr/sbin config_directory = /etc/postfix content_filter = daemon_directory = /usr/lib/postfix debug_peer_level = 20 default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 defer_transports = disable_dns_lookups = no empty_address_recipient = MAILER-DAEMON inet_interfaces = IP local_recipient_maps = unix:passwd.byname $alias_maps mail_owner = postfix mail_spool_directory = /var/mail mailbox_command = mailbox_size_limit = 0 mailbox_transport = mailq_path = /usr/bin/mailq manpage_directory = /usr/share/man maps_rbl_domains = pbl.spamhaus.org sbl-xbl.spamhaus.org relays.ordb.org combined.njabl.org masquerade_classes = envelope_sender, header_sender, header_recipient masquerade_domains = domain.de masquerade_exceptions = root mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, domain-2.de mydomain = domain.de myhostname = server.domain.de mynetworks = IP myorigin = $mydomain newaliases_path = /usr/bin/newaliases queue_directory = /var/spool/postfix readme_directory = /usr/share/doc/postfix/README_Debian relay_domains = $mydestination relayhost = sendmail_path = /usr/sbin/sendmail setgid_group = postdrop smtp_sasl_auth_enable = no smtp_use_tls = no smtpd_client_restrictions = reject_rbl_client sbl-xbl.spamhaus.org reject_rbl_client cbl.abuseat.org smtpd_helo_required = yes smtpd_helo_restrictions = smtpd_recipient_limit = 9000 smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination smtpd_sasl_auth_enable = no smtpd_use_tls = no smtp_connect_timeout = 120s strict_rfc821_envelopes = no swap_bangpath = yes unknown_local_recipient_reject_code = 450 virtual_alias_domains = virtual-domain.de virtual_alias_maps = hash:/etc/postfix/virtual
Mailserver 2 mailserver 2:~# postconf -n alias_maps = hash:/etc/aliases command_directory = /usr/sbin config_directory = /etc/postfix daemon_directory = /usr/lib/postfix default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 home_mailbox = Maildir/ html_directory = /usr/share/doc/postfix/html inet_interfaces = IP mail_owner = postfix mailq_path = /usr/bin/mailq manpage_directory = /usr/share/man message_size_limit = 30960000 mydestination = $myhostname, localhost.$mydomain, localhost mydomain = mailserver 2.domain.de myhostname = mailserver 2.domain.de mynetworks = IPs myorigin = $mydomain newaliases_path = /usr/bin/newaliases queue_directory = /var/spool/postfix readme_directory = /usr/share/doc/postfix relay_domains = $mydestination sample_directory = /usr/share/postfix sendmail_path = /usr/sbin/sendmail setgid_group = postdrop smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) smtpd_recipient_limit = 9000 smtp_connect_timeout = 120s unknown_local_recipient_reject_code = 550
100% sicher bin ich mir bei meinen Optimierungen nicht, bzw. welcher side-effect dabei hervorgerufen wird.
Mit freundlichen Grüßen Andreas
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Patrick Ben Koetter Gesendet: Donnerstag, 3. Juni 2010 14:41 An: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
* Andreas postfix-users@de.postfix.org:
local_destination_recipient_limit = 1 Was hat es genau mit diesem Wert auf sich?
Dieser Wert bestimmt wieviele Empfänger Postfix auf einmal an das lokale Zustellprogramm (local delivery agent) übergeben soll.
Ist der nicht unterdimensioniert?
Nein, auf keinen Fall. Die meisten LDAs (local delivery agent) können sogar nur einen Empfänger pro Aufruf verarbeiten.
Ich habe den Verdacht, Du hast - ohne es im Moment richtig zu verstehen - einige "Optimierungen" an Postfix vorgenommen. Stimmt das?
Wenn ja, dann sollten wir die gesamte Config einer gewissenhaften Prüfung unterziehen, um die richtigen Optimierungen zu belassen und die falschen Fehlkonfigurationen auszumerzen.
In dem Fall sende bitte Ausgabe von "postconf -n"; sie identifiziert nur die veränderten, neu gesetzten Werte.
p@rick
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im
Auftrag
von Andreas Gesendet: Donnerstag, 3. Juni 2010 14:18 An: 'Florian Streibelt' Cc: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
Danke Florian, also meinst du den Wert default_destination_recipient_limit = 9000 runtersetzen und welches timeout? smtp_connect_timeout = 30s ?
Hier meine Werte:
Optionen zum timeout: postconf | grep timeout
Mailserver 1
connection_cache_protocol_timeout = 5s daemon_timeout = 18000s ipc_timeout = 3600s lmtp_connect_timeout = 0s lmtp_data_done_timeout = 600s lmtp_data_init_timeout = 120s lmtp_data_xfer_timeout = 180s lmtp_lhlo_timeout = 300s lmtp_mail_timeout = 300s lmtp_quit_timeout = 300s lmtp_rcpt_timeout = 300s lmtp_rset_timeout = 20s lmtp_starttls_timeout = 300s lmtp_tls_session_cache_timeout = 3600s lmtp_xforward_timeout = 300s milter_command_timeout = 30s milter_connect_timeout = 30s milter_content_timeout = 300s qmqpd_timeout = 300s smtp_connect_timeout = 30s smtp_data_done_timeout = 600s smtp_data_init_timeout = 120s smtp_data_xfer_timeout = 180s smtp_helo_timeout = 300s smtp_mail_timeout = 300s smtp_quit_timeout = 300s smtp_rcpt_timeout = 300s smtp_rset_timeout = 20s smtp_starttls_timeout = 300s smtp_tls_session_cache_timeout = 3600s smtp_xforward_timeout = 300s smtpd_policy_service_timeout = 100s smtpd_proxy_timeout = 100s smtpd_starttls_timeout = 300s smtpd_timeout = 300s smtpd_tls_session_cache_timeout = 3600s trigger_timeout = 10s
und zum recipient_limit: postconf | grep recipient_limit
default_destination_recipient_limit = 9000 default_extra_recipient_limit = 9000 default_recipient_limit = 10000 lmtp_destination_recipient_limit = $default_destination_recipient_limit local_destination_recipient_limit = 1 qmgr_message_recipient_limit = 20000 relay_destination_recipient_limit = $default_destination_recipient_limit smtp_destination_recipient_limit = $default_destination_recipient_limit smtpd_recipient_limit = 9000 virtual_destination_recipient_limit = $default_destination_recipient_limit
Mailserver 2 hat dieselben Werte.
Die Queue ist immer noch rappelvoll. Hab sie auch schon geflushed, jedoch gibt es dann wieder nen timeout, bzw. noch ne Meldung wie
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
-----Ursprüngliche Nachricht----- Von: Florian Streibelt [mailto:postfix@f-streibelt.de] Gesendet: Donnerstag, 3. Juni 2010 10:54 An: Mailing-Liste der deutschsprachigen Postfix Gemeinschaft Cc: Andreas Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
'Andreas' schrieb am 03.06.2010 10:45:
Postqueue p auf mail server 1 enthält viele Nachrichten einer
Aussendung
an mehr als 1000 user in der Queue.
Es gibt folgende Meldung:
(conversation with mailserver 2 [ip] timed out while sending RCPT TO)
Ich rate mal ins blaue, dass entweder dein mailserver 2 zu lange braucht, alle diese Empfänger auf Korrektheit zu testen oder irgendwelche restrictions/checks zu lange brauchen.
Als ersten Workaround um das zu testen fallen mir zwei Dinge ein - timeout auf dem ersten hochsetzen und anzahl der in einem SMTP-Dialog auszuliefernden mails senken (..._destination_recipient_limit) und schrittweise zu erhöhen. Was sagt denn der mailserver2 im Log?
Eventuell ist dem mailserver2 auch die message-rate zu hoch, wenn er da so 1000 Empfänger auf einmal sieht?
Optionen zum timeout: postconf | grep timeout
und zum recipient_limit: postconf | grep recipient_limit
Grüße, Florian
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
* Andreas andreas@kado-web.de:
allow_percent_hack = yes
Braucht man das?
disable_dns_lookups = no
Ist eh default
maps_rbl_domains = pbl.spamhaus.org sbl-xbl.spamhaus.org relays.ordb.org combined.njabl.org
a) maps_rbl_domains ist deprecated b) relays.ordb.org ist tot c) pbl.spamhaus.org sbl-xbl.spamhaus.org --> zen.spamhaus.org
relay_domains = $mydestination
Was nun? Ist mydestination eine lokale domain oder eine relayte domain?
relayhost =
Ist eh default
smtpd_client_restrictions = reject_rbl_client sbl-xbl.spamhaus.org reject_rbl_client cbl.abuseat.org
Evtl. mal für maps_rbl_domains oder reject_rbl_client entscheiden :)
unknown_local_recipient_reject_code = 450
Warum 450?
Mydestination ist eine lokale domain Allow_percent_hack braucht man nicht wirklich. Entscheide mich dann für maps_rbl_domains = pbl.spamhaus.org sbl-xbl.spamhaus.org unknown_local_recipient_reject_code = 450 setze ich dann mal auf 550
Jedenfalls sieht die queue jetzt wieder deutlich besser aus mit den default-werten. Prima, danke für eure Hilfe! -Jetzt habt ihr einen weiteren Käufer eures Buches Ralf :-)-
-----Ursprüngliche Nachricht----- Von: postfix-users-bounces+andreas=kado-web.de@de.postfix.org [mailto:postfix-users-bounces+andreas=kado-web.de@de.postfix.org] Im Auftrag von Ralf Hildebrandt Gesendet: Donnerstag, 3. Juni 2010 15:20 An: postfix-users@de.postfix.org Betreff: Re: [postfix-users] Mailqueue wird mails nicht los
* Andreas andreas@kado-web.de:
allow_percent_hack = yes
Braucht man das?
disable_dns_lookups = no
Ist eh default
maps_rbl_domains = pbl.spamhaus.org sbl-xbl.spamhaus.org relays.ordb.org
combined.njabl.org a) maps_rbl_domains ist deprecated b) relays.ordb.org ist tot c) pbl.spamhaus.org sbl-xbl.spamhaus.org --> zen.spamhaus.org
relay_domains = $mydestination
Was nun? Ist mydestination eine lokale domain oder eine relayte domain?
relayhost =
Ist eh default
smtpd_client_restrictions = reject_rbl_client sbl-xbl.spamhaus.org reject_rbl_client cbl.abuseat.org
Evtl. mal für maps_rbl_domains oder reject_rbl_client entscheiden :)
unknown_local_recipient_reject_code = 450
Warum 450?
'Andreas' schrieb am 03.06.2010 14:17:
delivery temporarily suspended: conversation with mailserver 2 timed out while sending RCPT TO
Hmm. Weisst Du wie SMTP funktioniert? Ist jetzt nicht bös gemeint. Nur so als Frage, weil dann erklären sich die timeouts in der config für Dich. Ohne ein rudimentäres Verständnis des SMTP Protokolls versteht man in der Regel die Config nämlich nicht und interpretiert namen von Optionen gerne mal flasch... ;)
der mta1 meldet sich bei denem mta2 mit helo <hostname> - nun wird mta2 vermutlich versuchen nen dns query nach dem namen zu machen. wenn der zu lange dauert schlägt ein helo timeout bei mta1 zu.
Das Übermitteln der envelope-empfänger passiert im RCPT-TO. Wenn nun der mta2 ausführlich per ldap/sql/sonst nem backend prüfen muss, ob die einzelnen adressen valide empfänger sind, kann das bei 1000 leuten schon mal dauern. dann wird der rcpt-timeout zuschlagen und deine fehlermeldung erscheinen, die du bekommst.
das kann man nun wie gesagt auf mehrere weisen lösen. Entweder weniger Empfänger pro smtp-verbindung übergeben, so dass es insgesamt schneller geht mit dem prüfen, oder das prüfen optimieren oder dem timeout hochsetzen.
Aber wie hier an anderer Stelle schon geschrieben wurde, sende mal die Ausgabe von postconf -n
cheers, Florian
participants (4)
-
Andreas
-
Florian Streibelt
-
Patrick Ben Koetter
-
Ralf Hildebrandt