Portál AbcLinuxu, 12. května 2025 13:08

Dotaz: kvanta odeslané pošty

Petr Maleček avatar 1.12.2008 21:26 Petr Maleček | skóre: 29 | Plzeň - Bolevec
kvanta odeslané pošty
Přečteno: 1073×
Odpovědět | Admin
Přílohy:

Na serveru mám postfix v roli smtp serveru pro rozsah ip 10.109.184.0/24 (10.109.184.1-254) a 127.0.0.0/8.

Za standardních podmínek server z těchto IP poštu přijímá a normálně odesílá, ale ...

V posledním týdnu se mi začalo stávat to, že se najednou z ničeho nic stal z mého serveru open realy server. Zkrátka a dobře, tisíce mailů odchází z mého serveru na smtp server v naší síti, kde jsem dostal dočasně ban, než to vyřeším (všimnul jsem si toho až po banu).

Log ukazuje:


Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<146.sharronscott@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.05/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<146.simpsonl@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.06/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<146_philip.gant@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.06/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<146_shygger@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.06/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<147_magdy@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.07/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<147_melsky@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.08/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<147nickfry@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.09/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: ED222121D01: to=<147offdwall@jmmdhs.com>, relay=none, delay=327800, delays=327800/0.11/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: from=<kendratrotterky@netzero.net>, size=1868, nrcpt=9 (queue active)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<judyr@usinternet.com>, relay=none, delay=73547, delays=73547/0.02/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<judys@usinternet.com>, relay=none, delay=73547, delays=73547/0.04/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<judyst@usinternet.com>, relay=none, delay=73547, delays=73547/0.04/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<judyt@usinternet.com>, relay=none, delay=73547, delays=73547/0.05/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<jue@usinternet.com>, relay=none, delay=73547, delays=73547/0.06/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<juedeman@usinternet.com>, relay=none, delay=73547, delays=73547/0.07/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<juenemann@usinternet.com>, relay=none, delay=73547, delays=73547/0.07/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<juergens@usinternet.com>, relay=none, delay=73547, delays=73547/0.08/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: 3CF20ABEF: to=<juhl@usinternet.com>, relay=none, delay=73547, delays=73547/0.08/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: E38AD11DA0D: from=<jodyprattrl@crewstart.com>, size=1194, nrcpt=9 (queue active)
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: E38AD11DA0D: to=<h.j.koch@mercermc.com>, relay=none, delay=329011, delays=329010/0.03/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/cleanup[32123]: 675B356A42: message-id=<20081201195823.675B356A42@server.pmalecek.cz>
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: E38AD11DA0D: to=<hjjfb@mercermc.com>, relay=none, delay=329011, delays=329010/0.03/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)
Dec  1 20:58:23 pmalecek-server postfix/bounce[32133]: 3CF20ABEF: sender delay notification: 675B356A42
Dec  1 20:58:23 pmalecek-server postfix/qmgr[31410]: E38AD11DA0D: to=<hjkrv@mercermc.com>, relay=none, delay=329011, delays=329010/0.04/0/0, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mail.alptech.cz[193.86.238.51]: Connection timed out)

a jsou toho šílená kvanta .... zkrátka a dobře jsem se stal rozesílatelem spamu.

podle IPTrafu přijímám obrovské množství paketů právě na smtp portu (25), proto jsem přidal do IP Tables pravidlo, které říká, že všechny pakety na portu 25 jsou defaultně zahozeny (DROP) a přidal jsem vyjímku - a to rozsah IP který jsem již psal + localhost (127.0.0.0/8) a jeste jsem zakazal veskerou komunikaci na portech AMAVISU.

 

# udeleni vyjimky pro dane IP a localhost
iptables -A OUTPUT -o eth0 -p tcp --dport 25 -m iprange --src-range 10.109.184.1
iptables -A INPUT -i eth0 -p tcp --sport 25 -m iprange --src-range 10.109.184.1-
iptables -A OUTPUT -o eth0 -p tcp -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp -d 127.0.0.1 -j ACCEPT

# zakaz veskere komunikace na portech amavisu
iptables -A OUTPUT -o eth0 -p tcp --dport 10024 -j DROP
iptables -A INPUT -i eth0 -p tcp --sport 10024 -j DROP
iptables -A OUTPUT -o eth0 -p tcp --dport 10025 -j DROP
iptables -A INPUT -i eth0 -p tcp --sport 10025 -j DROP

Nejhorší na tom je to, že když postfix vypnu, tak asi po pěti minutách uplně požadavky na port 25 přestanou (po přidání pravidel do iptables hlásí iptraf, že pakety příjímá, ale neodesílá, a pak už přestane i příjímat a na seznamu se znovu nezobrazí). Horší na tom je to, že když se podívám do logu, tak maily stále odcházejí a odcházejí a já už nevím, jak je zastavit (na smtp server už se ale nedostanou, protože tam mam blokovanej přístup).

Netušíte náhodou někdo, jak se preventivně bránit těmto útokům, popřípadě jak upravit pravidla iptables ? Už jsem bezmocný a nic mi nenapadá.

Díky předem (v příloze je vidět, že smtp na seznamu portů není (obrázek iptraf.jpg), pouze kdybych odeslal poštu z definovaných IP, tak se tam objeví (obrázek iptraf2.jpg)). Poslední obrázek zobrazuje dění v případě, že do iptables nedám filtrační podmínky které jsem psal výše)

 

 

LinMuck, WinFuck :-P

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Petr Maleček avatar 1.12.2008 21:30 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin

omlouvám se, iptables vypadají takto:

#iptables - nastaveni rozsahu IP adres pro SMTP server
# zakaz veskere komunikace na portech 25 (smtp)
iptables -A OUTPUT -o eth0 -p tcp --dport 25 -j DROP
iptables -A INPUT -i eth0 -p tcp --sport 25 -j DROP

# udeleni vyjimky pro dane IP a localhost
iptables -A OUTPUT -o eth0 -p tcp --dport 25 -m iprange --src-range 10.109.184.1-10.109.184.254 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 25 -m iprange --src-range 10.109.184.1-10.109.184.254 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp -d 127.0.0.1 -j ACCEPT

# zakaz veskere komunikace na portech amavisu
iptables -A OUTPUT -o eth0 -p tcp --dport 10024 -j DROP
iptables -A INPUT -i eth0 -p tcp --sport 10024 -j DROP
iptables -A OUTPUT -o eth0 -p tcp --dport 10025 -j DROP
iptables -A INPUT -i eth0 -p tcp --sport 10025 -j DROP
 

LinMuck, WinFuck :-P
1.12.2008 22:02 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Opravdu tam máte iptables -A, nebo ve skutečnosti iptables -I? Pokud -A, tak to máte špatně.
Petr Maleček avatar 1.12.2008 23:03 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

Když použiju místo "A" písmenko "I", tak server na pakety odpovídá. Když tam nechám to moje "A", tak na pakety neodpovídá (podle iptrafu).

I tak děkuji, stále jsem ale z toho vedle.

LinMuck, WinFuck :-P
1.12.2008 22:01 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin
maily stále odcházejí a odcházejí

Fronta. Odeselají se maily, které přišly na váš server, zařadily se do fronty, ale ještě nebyly odeslány dál.

Petr Maleček avatar 1.12.2008 23:08 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

To by mělo řešit postfix flush, ale ani to nepomůže. Maily přijímá vesele dál ... horší na tom je, že nedokážu zjistit odkud (respektive ty adresy zjistím, je jich spousty a blokovat jednu po druhé je nemožné, to bych byl u počítače nonstop a stejně bych byl přehlcenej) ... ale nedokážu ani zjistit, jakej program by ještě mohl mít funkci smtp serveru a měl tu moc odesílat poštu :-/ ... všechny o kterých vím jsem shodil a bez rozdílu.

LinMuck, WinFuck :-P
1.12.2008 22:05 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin
Především bych vypnul poštovní server, aby další poštu neodesílal. Pokud jste jej vypnul a pošta odchází dál, odesílá ji buď jiný program nebo jiný počítač. Pokud vám odesílá poštu nějaký program a vy o tom nevíte, je něco dost špatně, doporučil bych úplně ten počítač odpojit od sítě a začít se zabývat tím, jestli na tom počítači nemá roota ještě někdo jiný. Pokud e-maily odesílá jiný počítač, musí se o to postarat správce příslušné sítě, alespoň daný počítač odříznout od internetu na hraničním routeru. Předpokládám, že vy to nejste, když nemáte k serveru přístup.

Ale těžko říct, co se vlastně děje, ten váš popis mi připadá dost zmatený. Preventivně se bránit „těmto útokům“ jde jediným způsobem, pořádně nastudovat fungování sítí a poštovních serverů, a teprve až potom vystavit server někde na internetu. Postfix má celkem dost konfiguračních parametrů i pro nastavení toho, jak se bude chovat k síti, takže mi poněkud uniká smysl toho, co tam řešíte s iptables – nenapadá mne moc věcí, které by se na SMTP komunikaci dali lépe ošetřit přes iptables místo přímé konfigurací Postfixu.
Petr Maleček avatar 1.12.2008 22:56 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

Ano, server jsem samozřejmě vypnul okamžitě (postfix), a odesílání mailů se zastavilo (nic jiného, co by mělo funkci SMTP serveru tam nemám). Ale jakmile jej znovu nahodím, tak okamžitě začnu odesílat kvanta pošty (i když flushnu frontu).

Část configu postfixu:

myhostname = server.pmalecek.cz
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = server.pmalecek.cz, localhost.pmalecek.cz, localhost
relayhost = mail.alptech.cz
mynetworks = 10.109.184.0/24, 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
content_filter = smtp-amavis:[127.0.0.1]:10024
unknown_local_recipient_reject_code = 450

Nikdy mi to nedělalo potíže, až teď řekněme za poslední týden. Server provozuji už pátým rokem bez problénu.

LinMuck, WinFuck :-P
2.12.2008 02:06 hysterix
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

Pet let? Zverejnuji na nej jeste bezpecnostni zaplaty?

2.12.2008 07:35 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Frontu mažete, nebo všechny necháte odeslat? Flush znamená znovu doručit všechny e-maily ve frontě...

Pokud server nastartujete s prázdnou frontu a začne znovu rozesílat spoustu e-mailů, musí se ty e-maily odněkud brát -- buť je rozesílá nějaký lokální proces, nebo je Postfix přijímá odněkud ze sítě. O který případ jde podle mne snadno poznáte z logu, případně můžete zkusit nastavit mynetworks na 127.0.0.0/8 a tím vyloučit relay doručování pro jiné zdroje, než váš počítač.
Petr Maleček avatar 2.12.2008 08:17 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

S tím localhostem to vyzkouším .... ještě musím dodat - jedná se o můj domácí server, přes který odesílám poštu, která se před odesláním projede antivirem a teprve až poté putuje na smtp server.

LinMuck, WinFuck :-P
Jakub Lucký avatar 1.12.2008 23:32 Jakub Lucký | skóre: 40 | Praha
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nějaký rootkit?
If you understand, things are just as they are; if you do not understand, things are just as they are.
2.12.2008 08:58 Čech Antonín | skóre: 17 | blog: CzechTony
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin

Mailovou frontu mazu pomoci postsuper.

Neni videt nejaky podezrely sitovy provoz (netstat, iftop)?

Pokud je postfix vypnuty, opravdu uz neodchazi zadne maily?

Kdyz je fronta opravdu prazdna (mailq), melo by se z logu postfixu snaze vycist nove pozadavky a kdo je zadava (spam pc v lan).

2.12.2008 09:56 Atom321 | skóre: 20
Rozbalit Rozbalit vše Re: kvanta odeslané pošty
Odpovědět | | Sbalit | Link | Blokovat | Admin

Přidejte si do postfixu filtry:

  1. Odmítat vše z internetu, co nemá cílovou adresu ve vaší doméně. (Tuším že to je "-o smtpd_reject_unlisted_recipient" u vnější IP v master.cf - vizte manuál.)
  2. Odmítat vše z vnitřní sítě, co nemá zdrojovou adresu ve vaší doméně. (-o smtpd_reject_unlisted_recipient u vnitřní IP.)

To by mělo zabránit přícházejícím spamům. Ovšem neřeší to maily ve frontě, ty musíte promazat ručně.

BTW: Zajímá-li vás, kdo a kam navazuje SMTP spojení, použijte:

tcpdump -n -i any '(tcp[tcpflags]&(tcp-syn|tcp-ack))==tcp-syn' and port 25

 

 

2.12.2008 10:08 Atom321 | skóre: 20
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

Pardon, v bodě 2. má být -o "smtpd_reject_unlisted_sender".

Petr Maleček avatar 2.12.2008 11:05 Petr Maleček | skóre: 29 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: kvanta odeslané pošty

Děkuji, to tam mám, jen jsem nakopíroval celý config, jenom tu část, která něco říká.

Frontu jsem přočistil a už je to OK. Děkuji za příklad sledování, použiji jej.

LinMuck, WinFuck :-P

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.