PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : postfix: Server wird von außen mit smtp request fast lahmgelegt



pc-nico
05.06.08, 13:30
Hallo,

ich habe hier einen Zimbra Mailserver in dessen Unterbau ein Postfixserver
arbeitet...

Zur Zeit habe ich folgendes Problem...
Der Server bekommt von außerhalb so viele anfragen das er im Intranet keine Verbindungen mehr annimmt...
Sobald man versucht einen Mail zusenden dauert es ewig und am ende steht eine Fehlermeldung
Wenn ich die Verbindung zum Internet unterbrechen, nimmt er auch aus dem Intranet wieder Verbindungen an...

vllt hat jemand eine Idee wie ich diese Masse an Verbindungen filtern kann?

(Die Postconf ist leider 532 Zeilen lang, daher hänge ich sie jetzt nicht an...
ich habe bereits gesetzt
smtpd_hard_error_limit = 3
smtpd_soft_error_limit = 2
smtpd_client_connection_rate_limit = 120

allerdings ohne erfolg... hier mal eine Logauszug:



Jun 5 13:06:08 mail postfix/smtpd[7785]: connect from host-89-229-24-60.torun.mm.pl[89.229.24.60]
Jun 5 13:06:08 mail postfix/smtpd[12122]: connect from unknown[85.113.17.84]
Jun 5 13:06:10 mail postfix/smtpd[24782]: connect from c-67-188-27-162.hsd1.ca.comcast.net[67.188.27.162]
Jun 5 13:06:12 mail postfix/smtpd[24522]: connect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:12 mail postfix/smtpd[24522]: lost connection after CONNECT from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:12 mail postfix/smtpd[5664]: connect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:12 mail postfix/smtpd[24522]: disconnect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:12 mail postfix/smtpd[5664]: lost connection after CONNECT from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:12 mail postfix/smtpd[29548]: connect from ppp92-100-21-214.pppoe.avangarddsl.ru[92.100.21.214]
Jun 5 13:06:12 mail postfix/smtpd[5664]: disconnect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:13 mail postfix/smtpd[7907]: lost connection after MAIL from 86.kcity.telenet.cz[194.228.203.86]
Jun 5 13:06:13 mail postfix/smtpd[7907]: disconnect from 86.kcity.telenet.cz[194.228.203.86]
Jun 5 13:06:13 mail postfix/smtpd[7906]: timeout after MAIL from athedsl-4458804.home.otenet.gr[79.129.249.36]
Jun 5 13:06:13 mail postfix/smtpd[7906]: disconnect from athedsl-4458804.home.otenet.gr[79.129.249.36]
Jun 5 13:06:13 mail postfix/smtpd[24522]: warning: 92.113.149.81: hostname 81-149-113-92.pool.ukrtel.net verification failed: Name or service not known
Jun 5 13:06:13 mail postfix/smtpd[24522]: connect from unknown[92.113.149.81]
Jun 5 13:06:14 mail postfix/smtpd[15545]: timeout after RCPT from 208-29-124-91.pool.ukrtel.net[91.124.29.208]
Jun 5 13:06:14 mail postfix/smtpd[15545]: disconnect from 208-29-124-91.pool.ukrtel.net[91.124.29.208]
Jun 5 13:06:16 mail postfix/smtpd[5664]: connect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7907]: connect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7906]: connect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[5664]: lost connection after CONNECT from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7907]: lost connection after CONNECT from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7906]: lost connection after CONNECT from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[5664]: disconnect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7907]: disconnect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:16 mail postfix/smtpd[7906]: disconnect from ppp58-216.adsl.forthnet.gr[62.1.114.216]
Jun 5 13:06:17 mail postfix/smtpd[15543]: NOQUEUE: reject: RCPT from unknown[92.124.101.103]: 450 4.7.1 Client host rejected: cannot find your hostname, [92.124.101.103]; from=<akstcviomnsdgs@vio.net> to=<paul.hermes@Firma.de> proto=SMTP helo=<pmsn.103.101.124.92.sable.dsl.krasnet.ru>
Jun 5 13:06:17 mail postfix/smtpd[15543]: lost connection after RCPT from unknown[92.124.101.103]
Jun 5 13:06:17 mail postfix/smtpd[15543]: disconnect from unknown[92.124.101.103]
Jun 5 13:06:17 mail postfix/smtpd[24779]: lost connection after MAIL from pD9E06902.dip.t-dialin.net[217.224.105.2]
Jun 5 13:06:17 mail postfix/smtpd[24779]: disconnect from pD9E06902.dip.t-dialin.net[217.224.105.2]
Jun 5 13:06:20 mail postfix/smtpd[15545]: connect from unknown[91.190.52.159]
Jun 5 13:06:21 mail postfix/smtpd[5664]: connect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:21 mail postfix/smtpd[5664]: lost connection after CONNECT from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:21 mail postfix/smtpd[15543]: connect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[5664]: disconnect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[7907]: connect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[15543]: lost connection after CONNECT from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[7907]: lost connection after CONNECT from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[15543]: disconnect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:22 mail postfix/smtpd[7907]: disconnect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:23 mail postfix/smtpd[7906]: connect from 87-126-162-194.btc-net.bg[87.126.162.194]
Jun 5 13:06:23 mail postfix/smtpd[7906]: lost connection after CONNECT from 87-126-162-194.btc-net.bg[87.126.162.194]

blabub
05.06.08, 16:47
Installiere dir DBan, dann ist ruhe.

cane
05.06.08, 17:02
Ist die Leitung dicht oder der Server was die Last angeht am Ende?

Zimbra und seine Basisdienste wie Tomcat fressen ordentlich Ressourcen, nicht ohne Grund hat Zimbra die letzten fetten Ausschreibungen im Hostingbereich gegen die Groupware von Open-Xchange verloren :)

Wieviel RAM ist denn noch frei, was sagt die Load?

mfg
cane

pc-nico
05.06.08, 21:32
also die leitung ist bei weitem nicht dicht und der Server auch nicht an seiner Performance grenze...

hat 2gb ram 2xXeon 3,6 Ghz und lauft im schnitt mit 15-20 Last

free

total used free shared buffers cached
Mem: 2074900 1984808 90092 0 39868 755472
-/+ buffers/cache: 1189468 885432
Swap: 2031608 0 2031608

Der Load wert ist dauerhaft über 2,x

Vom Prinzip her könnten wohl mehr Prozesse laufen, aber zimbra lässt nicht mehr zu.... habe auch schon in der Master.cf die Anzahl an smtp und amavis prozessen nach oben gesetzt, aber ohne erkennbare Veränderung.

pc-nico
06.06.08, 12:53
so ich habe jetzt einige Blacklisten eingebaut und die meinsten Verbindungen werden auch geblockt mit einem 554 5.7.1 Service unavailable...

allerdings ist der Load Wert weiterhin hoch...

gibt es keine Möglichkeit die Anzahl der SMTP Connects von außerhalb
zu beschränken?


Hier mal postconf -n


alias_maps = hash:/etc/aliases
broken_sasl_auth_clients = yes
command_directory = /opt/zimbra/postfix/sbin
config_directory = /opt/zimbra/postfix-2.4.7.5z/conf
content_filter = smtp-amavis:[127.0.0.1]:10024
daemon_directory = /opt/zimbra/postfix/libexec
disable_dns_lookups = no
header_checks = pcre:/opt/zimbra/conf/postfix_header_checks
in_flow_delay = 1s
lmtp_connection_cache_destinations =
lmtp_connection_cache_time_limit = 4s
local_header_rewrite_clients = permit_mynetworks,permit_sasl_authenticated
mail_owner = postfix
mailbox_size_limit = 0
mailq_path = /opt/zimbra/postfix/sbin/mailq
manpage_directory = /opt/zimbra/postfix/man
maximal_backoff_time = 4000s
message_size_limit = 30720000
minimal_backoff_time = 300s
mydestination = localhost
myhostname = mail.FIRMA.de
mynetworks = 127.0.0.0/8 192.168.17.0/24
newaliases_path = /opt/zimbra/postfix/sbin/newaliases
queue_directory = /opt/zimbra/data/postfix/spool
queue_run_delay = 300s
recipient_delimiter =
relayhost =
sender_canonical_maps = ldap:/opt/zimbra/conf/ldap-scm.cf
sendmail_path = /opt/zimbra/postfix/sbin/sendmail
setgid_group = postdrop
smtpd_client_restrictions = reject_rbl_client ix.dnsbl.manitu.net, reject_rbl_client dnsbl.njabl.org, reject_rbl_client cbl.abuseat.org, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl.spamhaus.org, reject_rbl_client xbl.spamhaus.org, reject_rbl_client sbl-xbl.spamhaus.org, reject_rbl_client relays.mail-abuse.org, warn_if_reject, reject_unauth_pipelining
smtpd_data_restrictions = reject_unauth_pipelining
smtpd_helo_required = yes
smtpd_recipient_restrictions = reject_non_fqdn_recipient, permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, reject_unlisted_recipient, reject_invalid_hostname, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_unknown_client, reject_unknown_hostname, reject_unknown_sender_domain, reject_rbl_client ix.dnsbl.manitu.net, reject_rbl_client dnsbl.njabl.org, reject_rbl_client cbl.abuseat.org, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl.spamhaus.org, reject_rbl_client xbl.spamhaus.org, reject_rbl_client sbl-xbl.spamhaus.org, reject_rbl_client relays.mail-abuse.org, permit
smtpd_reject_unlisted_recipient = yes
smtpd_sasl_auth_enable = yes
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /opt/zimbra/conf/smtpd.crt
smtpd_tls_key_file = /opt/zimbra/conf/smtpd.key
smtpd_tls_loglevel = 1
smtpd_use_tls = yes
transport_maps = ldap:/opt/zimbra/conf/ldap-transport.cf
virtual_alias_domains = ldap:/opt/zimbra/conf/ldap-vad.cf
virtual_alias_maps = ldap:/opt/zimbra/conf/ldap-vam.cf
virtual_mailbox_domains = ldap:/opt/zimbra/conf/ldap-vmd.cf
virtual_mailbox_maps = ldap:/opt/zimbra/conf/ldap-vmm.cf
virtual_transport = error

marce
06.06.08, 12:57
z.B. über eine Anpassung von fail2ban - also im Endeffekt dynamische iptables.

Wobei das das Problem an sich nicht löst, warum Du so viele Connect-Versuche bekommst.

pc-nico
06.06.08, 14:56
warum ich die bekomme weiß ich, weil unsere Domain auf der Liste von irgendeinem
Spam Bot Netzwerk steht....

leider habe ich keine Plan von fail2ban..... das muss man doch auch mit postfix
hauseigenen mitteln irgendwie limitieren können.....

marce
07.06.08, 09:17
Das hast Du doch schon - das "Problem" ist aber, daß die Connects immer noch zu Postfix durchgereicht werden, welches dann das System damit belastet. Du möchtest jedoch erreichen, daß Dein Postfix von den Connects gar nicht mehr betroffen ist, wenn ich das richtig verstehe, oder?

Und dann mußt Du _vor_ Postfix ansetzen.

pc-nico
07.06.08, 11:21
Naja im Prinzip habe ich das ja schon erreicht, dadurch das ich mittels Blacklisten
mehrere 10000 Verbindungen pro Tag schon in ihrer Entstehungsphase abblocke.

Sicher kann man mit Fail2Ban sowas gut vom Postfix fern halten, aber ich will
mich nicht damit abfinden, das man das nicht auch mit dem Postfix selbst konfigurieren
kann.... Da das System von der Last her, ehr mittelmäßig ausgelastet ist,
kann der Postfix ja die Verbindungen annehmen und dann sofort wieder trennen..
Nur müsste ehr mehr Resourcen für den Postfix freigaben, leider bekomme ich
das nicht hin.... das erhöhen der smtp prozesse in der master.cf bringt leider
nichts... es kann aber auch sein, das Zimbra diesen Wert gar nicht verarbeitet...

cane
07.06.08, 17:55
Greylisting könnte helfen, Sender und Recipient Restrictions sind auch nett.

Ansonsten müsste man das komplett begutachten, also alle Cionfigs und verbose Logs haben...


mfg
cane

pc-nico
07.06.08, 22:47
Sender und Recipient Restrictions habe ich ja schon drin... siehe postconf oben... gibts da noch was zu verbessern?
Greylisting wäre wohl auch wirklich noch interessant....

aber so wie es scheint, haben die Hinzugefügten Blacklisten jetzt schon erfolg..
zumindest lauft der Server heut flüssiger... kann aber auch daran liegen
das vllt einfach weniger Connects laufen... kann das gerade nicht genau nachvollziehen... werde das Montag weiter prüfen...

danke für eure Anregungen...