Sziasztok!
Mostanában elég nagyra nő a szerveren a mailq, több száz levélre. A levelek címzettjei elég zagyvaságok, így biztosan valaki spamel a szerveren. A feladó minden esetben a www-data.
A tárhelyek virtuálhostok, a log file-ok pedig szét vannak darabolva hostonként, ezért az access.log nézése szerintem nem járható út.
Tudnátok segíteni valamit, hogy hogyan tudnám kideríteni, hogy melyik tárhelyről küldődnek a levelek? www-data a feladó, ebből gondolom, hogy php-ből megy a küldés, de ki, vagy melyik file szemtelenkedik?
Köszönöm a segítséget, kezdő kategóriába tartozom, így minden segítségnek örülnék. :)
- 3690 megtekintés
Hozzászólások
tail -f /var/log/mail parancsból nem tudod megállapítani?
- A hozzászóláshoz be kell jelentkezni
Szia!
Ami szerintem ehhez tartozik az "csak ennyi", vagy kell még valamit néznem? Ilyen sorok vannak elég bőven...
Mar 27 03:32:34 host postfix/smtp[25938]: AE988395735: to=, relay=none, delay=76988, delays=76957/0.08/30/0, dsn=4.4.1, status=deferred (connect to mettaonline.com.br[192.168.10.5]:25: Connection timed out)
Mar 27 03:32:34 host postfix/smtp[25939]: B5DB6398387: to=, relay=none, delay=11714, delays=11684/0.08/30/0, dsn=4.4.1, status=deferred (connect to vivax.com.br[189.89.96.97]:25: Connection timed out)
Mar 27 03:32:34 host postfix/smtp[25941]: E2550398379: to=, relay=none, delay=11727, delays=11697/0.08/30/0, dsn=4.4.1, status=deferred (connect to vivax.com.br[189.89.96.97]:25: Connection timed out)
- A hozzászóláshoz be kell jelentkezni
Általában akkor van www-data feladó ha a szerencsétlen programozó a php mail függvényét használja és nem ad meg envelope sender-t mert az opcionális.
Ha postfix van a szeveren akkor telepítsd fel a pfqueue programot. Segítségével egy karakteres felületen böngészheted a várakozási sorokat és olvashatod a leveleket is. A levelek fejléceiben megtalálod a feladót.
--
maszili
- A hozzászóláshoz be kell jelentkezni
Köszönöm, ez hasznos volt, de php mail függvényt használó hostot nem találtam meg, csak egy köcsög "
" a feladó...
valaki rárepült a php mail-re. Tiltottam, leállt a spamelés, de a tettes oldal nincs meg akinek kihasználják a hibáját. :(
- A hozzászóláshoz be kell jelentkezni
Ja, hogy betörtek a szerverre és a kártékony kód küldi a levelet?
Az ilyen fájlok tartalma általában kódolva van pont azért, hogy egyszerű tartalom kereséssel (pl. levél részlet) ne lehessen magtalálni.
Mivel esetedben minden php processz ugyanazon felhasználó nevében fut (www-data) így elég nehéz lesz megtalálni.
--
maszili
- A hozzászóláshoz be kell jelentkezni
hosting van a szerveren, bizonyára valakinek az oldalában van akkor a kód, vagy egy levélküldő formját használják ki.
Esetleg, ha tudtok még ötleteket annak nagyon örülnék.
A logok a /var/log/apache2 alatt vannak szétosztva hostonként külön mappában.
- A hozzászóláshoz be kell jelentkezni
nagyon csúnya dolog megtartani az alap mail fvg-t. ha meg már használhatja, akkor illik beállítani és akkor azonosítható
- A hozzászóláshoz be kell jelentkezni
te kapod vagy tőled megy ki?
Ha tőled megy ki... akkor:
de lehet,hogy nagy baromságot mondok....
próbáld meg,hogy kilistázod a mail mappa méreteit és a legnagyobbakat átnézed:)
- A hozzászóláshoz be kell jelentkezni
Tőlem megy ki, tuti, hogy a php-s mail() függvény. Időre letiltottam, azóta nincs semmi, de jó lenne ha újra lehetne engedni és rájönni, hogy ki a ludas.
- A hozzászóláshoz be kell jelentkezni
Azt hiszem ez alapján csináltam anno egy wrappert, nem biztos, hogy neked megfelel OOTB, de az alapötlet jó lehet:
http://www.iezzi.ch/archives/217
- A hozzászóláshoz be kell jelentkezni
Köszönöm az oldalt, megnézem, szerintem hasznos lesz.
- A hozzászóláshoz be kell jelentkezni
Ezt az elvet erdemes meg akar azzal is kiegesziteni, hogy oldalankent letarolsz akar sql-ben egy idoszaki limietet, pl. napi x kikuldheto level. A wrapper nezni, hogy ebbol mennyit teljesitett mar, amikor tullepi, onnantol a levelek a kukaba, es logolja, hogy tullot a celon. Nem csak a feltort oldalak miatt hasznos, az sem jo feltetlen, ha a webhostos ugyfel hirtel ugy gondol, hogy akkor o most kikuld nehany ezer hirlevelet a tarhelyen keresztul..
- A hozzászóláshoz be kell jelentkezni
virtualhostonkent ird be:
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f amitletaniakarsz@emailcim"
- A hozzászóláshoz be kell jelentkezni
Számold meg a log fájlokban a POST-al küldött sorokat domainenként, valahogy így:
grep "POST" /var/log/apache2/*.log|awk '{print $1}'|sort|uniq -c|sort -n
Ha rosszul ellenőrzött űrlapon keresztül küldik az POST-al megy, ha valami feltölött scripttel jó eséllyel az is.
- A hozzászóláshoz be kell jelentkezni
Köszönöm, ez is egy nagyon hasznos ötlet számomra, ezekkel elleszek egy darabig, remélem meglesz a bűnös :)
- A hozzászóláshoz be kell jelentkezni
Anno használtam erre egy php patchet ami hozzáadott a mailhez egy plusz headert és így szépen láttad, honnan jött a levél.
- A hozzászóláshoz be kell jelentkezni
Nálam pár hete egy infowt6.php és egy newsletter.php okozta ezt a problémát. Egyik ügyfelünk tárhelyére tolták fel és onnan spammeltek vele. Próbálj ezekre rákeresni.
"A +1 az a proletárlájk."
- A hozzászóláshoz be kell jelentkezni
php.ini (5.3+):
; The path to a log file that will log all mail() calls. Log entries include
; the full path of the script, line number, To address and headers.
mail.log = /path/to/mail.log (a www-data user tudja írni)
- A hozzászóláshoz be kell jelentkezni
Szia!
Én a következőt használom:
http://cvk.hu/mail/phpsendmail
A fájlt mentsd le az /usr/local/bin/ alá:
wget -O /usr/local/bin/phpsendmail http://cvk.hu/mail/phpsendmail
Adj neki futtatás jogot:
chmod +x /usr/local/bin/phpsendmail
Hozzd létre a logot, amibe írni fog:
touch /var/log/mail.form
chmod 777 /var/log/mail.form
Módosítsd a php.ini -ben a sendmail beállítását:
sed -i 's/;sendmail_path =/sendmail_path=\/usr\/local\/bin\/phpsendmail/g' /etc/php5/apache2/php.ini /etc/php5/cli/php.ini
Indítsd újra az apache -t:
/etc/init.d/apache2 restart
Ezután már lehet tesztelni:
<?php
mail('ahova@kuldod.hu','Ez a mail tárgya','Teszt üzenet');
echo 'Mail elküldve.';
?>
Ezt ha futtatod a fenti php-t az egyik vhostban, akkor a /var/log/mail.form -ba bejegyzi hogy mikor, honnan, ki, és hova küldte.
2012-03-28 14:20:24 /var/www/clients/client39/web28/web/forum To: 'aki@kapja.hu' From: Kuldő neve <'aki@kuldi.hu'> Reply-To: 'aki@kuldi.hu'
________________
Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz, 4 Gb ram, x86_64 3.2.1-gentoo-r2
- A hozzászóláshoz be kell jelentkezni
sub
- A hozzászóláshoz be kell jelentkezni
szinten
---
Lehet, hogy kívül szőke vagyok, de belül sötét, oké?!
- A hozzászóláshoz be kell jelentkezni