[+] Zap
[+] Zapętlone wysyłanie poczty po uruchomieniu skryptu php
Witam!
Dzisiaj napisałem skrypt w PHP na wysyłanie e-maili do każdego kogo mam w bazie, i przypadkowo napisałem zapętlenie wysyłania tych wiadomości.
Wysyła 100 e-maili na sekundę, czy jakoś tak, bo na skrzynkę lecą jak szalone.
Próbowałem restartować serwer itp. i bez skutku, ciągle je wysyła - non stop.
Wie ktoś może jak zatrzymać to szaleństwo w systemie?
Pozdrawiam.
Dzisiaj napisałem skrypt w PHP na wysyłanie e-maili do każdego kogo mam w bazie, i przypadkowo napisałem zapętlenie wysyłania tych wiadomości.
Wysyła 100 e-maili na sekundę, czy jakoś tak, bo na skrzynkę lecą jak szalone.
Próbowałem restartować serwer itp. i bez skutku, ciągle je wysyła - non stop.
Wie ktoś może jak zatrzymać to szaleństwo w systemie?
Pozdrawiam.
Polecenie:
Kod: Zaznacz cały
killall -9 php
Kod: Zaznacz cały
php: no process found
To zabij proces MTA (postfix, exim, sendmail), ewentualnie może php leci na cgi. Pokaż wynik polecenia:
oraz
Kod: Zaznacz cały
ps aux | grep php
Kod: Zaznacz cały
netstat -tanpu | grep 25
Kod: Zaznacz cały
root@lh:~# ps aux | grep php
www-data 9226 2.0 0.4 42464 12800 ? S 21:38 0:01 /usr/bin/php-cgi -d open_basedir=/var/www/clients/client1/web42/web:/var/www/clients/client1/web42/tmp:/var/www/mpgforum.eu/web:/srv/www/mpgforum.eu/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin -d upload_tmp_dir=/var/www/clients/client1/web42/tmp -d session.save_path=/var/www/clients/client1/web42/tmp
www-data 9257 0.0 0.3 40160 9396 ? S 21:38 0:00 /usr/bin/php-cgi -d open_basedir=/var/www/clients/client1/web37/web:/var/www/clients/client1/web37/tmp:/var/www/alvio.pl/web:/srv/www/alvio.pl/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin -d upload_tmp_dir=/var/www/clients/client1/web37/tmp -d session.save_path=/var/www/clients/client1/web37/tmp
www-data 9412 0.7 0.3 40240 10140 ? S 21:38 0:00 /usr/bin/php-cgi -d open_basedir=/var/www/clients/client1/web31/web:/var/www/clients/client1/web31/tmp:/var/www/wyraj.eu/web:/srv/www/wyraj.eu/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin -d upload_tmp_dir=/var/www/clients/client1/web31/tmp -d session.save_path=/var/www/clients/client1/web31/tmp
www-data 9548 0.0 0.2 40136 9284 ? S 21:38 0:00 /usr/bin/php-cgi -d open_basedir=/var/www/clients/client3/web13/web:/var/www/clients/client3/web13/tmp:/var/www/basicmt2.pl/web:/srv/www/basicmt2.pl/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin -d upload_tmp_dir=/var/www/clients/client3/web13/tmp -d session.save_path=/var/www/clients/client3/web13/tmp
www-data 9574 0.0 0.2 40000 8580 ? S 21:38 0:00 /usr/bin/php-cgi -d open_basedir=/var/www/clients/client1/web46/web:/var/www/clients/client1/web46/tmp:/var/www/wyraj.com/web:/srv/www/wyraj.com/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin -d upload_tmp_dir=/var/www/clients/client1/web46/tmp -d session.save_path=/var/www/clients/client1/web46/tmp
root 9746 0.0 0.0 3304 756 pts/0 S+ 21:38 0:00 grep php
Kod: Zaznacz cały
root@lh:~# netstat -tanpu | grep 25
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1971/master
tcp 0 0 127.0.0.1:10025 0.0.0.0:* LISTEN 1971/master
tcp 0 0 46.105.224.129:56594 74.125.39.27:25 ESTABLISHED 10181/smtp
tcp 0 0 46.105.224.129:56580 74.125.39.27:25 TIME_WAIT -
tcp 0 0 127.0.0.1:36322 127.0.0.1:10025 ESTABLISHED 8955/amavisd (ch1-0
tcp 0 0 46.105.224.129:56588 74.125.39.27:25 ESTABLISHED 2118/scache
tcp 0 0 46.105.224.129:56589 74.125.39.27:25 ESTABLISHED 2118/scache
tcp 0 0 127.0.0.1:36299 127.0.0.1:10025 ESTABLISHED 8816/amavisd (ch1-0
tcp 0 0 46.105.224.129:56572 74.125.39.27:25 TIME_WAIT -
tcp 0 0 46.105.224.129:47884 74.125.127.27:25 TIME_WAIT -
tcp 0 0 46.105.224.129:39920 193.17.41.214:25 ESTABLISHED 10144/smtp
tcp 0 0 46.105.224.129:32811 217.74.65.64:25 TIME_WAIT -
tcp 0 16 46.105.224.129:35376 74.208.5.90:25 ESTABLISHED 10088/smtp
tcp 0 68 46.105.224.129:22 77.252.80.25:64600 ESTABLISHED 3289/0
tcp 0 0 127.0.0.1:10025 127.0.0.1:36322 ESTABLISHED 2126/smtpd
tcp 0 0 46.105.224.129:56536 74.125.39.27:25 TIME_WAIT -
tcp 0 0 46.105.224.129:56579 74.125.39.27:25 TIME_WAIT -
tcp 0 0 127.0.0.1:10025 127.0.0.1:36299 ESTABLISHED 2093/smtpd
tcp 0 0 46.105.224.129:56503 74.125.39.27:25 TIME_WAIT -
tcp 0 0 46.105.224.129:56526 74.125.39.27:25 TIME_WAIT -
tcp6 0 0 :::25 :::* LISTEN 1971/master
tcp6 0 0 46.105.224.129:80 83.11.141.141:25202 ESTABLISHED 9966/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1758 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1868 ESTABLISHED 9670/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1764 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 193.169.114.99:2586 FIN_WAIT2 9707/apache2
tcp6 0 0 46.105.224.129:80 83.11.141.141:25206 ESTABLISHED 9669/apache2
tcp6 0 0 46.105.224.129:80 83.11.141.141:25126 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 89.25.224.174:1504 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 89.25.224.174:1511 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 89.25.224.174:1509 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 89.25.224.174:1510 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1878 ESTABLISHED 10087/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1748 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 83.11.141.141:25201 ESTABLISHED 9965/apache2
tcp6 0 0 46.105.224.129:80 77.252.80.25:1142 ESTABLISHED 9937/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1874 ESTABLISHED 7848/apache2
tcp6 0 0 46.105.224.129:80 83.11.141.141:25204 ESTABLISHED 9967/apache2
tcp6 0 0 46.105.224.129:80 89.25.224.174:1508 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 83.11.141.141:25205 ESTABLISHED 8447/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1746 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1752 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1820 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 89.231.24.3:2506 ESTABLISHED 9610/apache2
tcp6 0 0 46.105.224.129:80 94.251.243.135:1814 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 89.231.24.3:2504 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 83.11.141.141:25203 ESTABLISHED 9968/apache2
tcp6 0 0 46.105.224.129:80 89.25.224.174:1507 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1750 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1755 TIME_WAIT -
tcp6 0 0 46.105.224.129:80 77.252.80.25:1141 FIN_WAIT2 -
tcp6 0 0 46.105.224.129:80 94.251.243.135:1762 TIME_WAIT -
Ale tak czy owak, co mi da zabicie jakiegoś procesu, skoro po restarcie systemu to nadal wysyła wiadomości pocztowe?
Wpisz polecenie:
Kod: Zaznacz cały
killall -9 php-cgi
Nie bardzo rozumiem, skrypt wysyła maile jeśli go uruchomisz, a sam może się uruchomić przeważnie z pomocą crona. Także sam powinieneś wiedzieć dlaczego uruchamia się samoistnie, musiałeś go gdzieś jeszcze dodać. Możesz zastopować MTA poleceniem:
Ponadto spróbuj zlokalizować proces, który uruchamia wspomniany plik przy użyciu polecenia:
Kod: Zaznacz cały
postfix stop
Ponadto spróbuj zlokalizować proces, który uruchamia wspomniany plik przy użyciu polecenia:
Kod: Zaznacz cały
ps aux | grep nazwa_skrypt.php
Tzn. napisałem skrypt php, wziąłem w nim ustawiłem aby pobrał wszystkie wiadomości z bazy i wysłał im po 1 e-mailu, a zamiast tego wstawiłem pętle żeby wysyłało je w nieskończoność.
W panelu ISPConfig na tym serwerze jest kolejka wiadomości i jest napisane wszystkie e-maile typu:
i na końcu:
Pierwsze polecenie wprawdzie zatrzymuje postfiksa i działa. Natomiast drugie polecenie nic nie wskazuje.
Nawet usuwając ten plik php nadal wysyła te maile.
W panelu ISPConfig na tym serwerze jest kolejka wiadomości i jest napisane wszystkie e-maile typu:
Kod: Zaznacz cały
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
DB6F6A4F87C 1060 Sun Sep 25 21:10:56 www-data
czyisemail
Kod: Zaznacz cały
-- 59795 Kbytes in 56066 Requests.
Nawet usuwając ten plik php nadal wysyła te maile.
Dlaczego twierdzisz, że wysyła? Skoro są w kolejce, to nastąpił zapewne jakiś błąd/problem i czekają na ponowną wysyłkę.
Czyszczenie kolejki maili:
Zresetuj również serwer apache,
Czyszczenie kolejki maili:
Kod: Zaznacz cały
postsuper -d ALL
Kod: Zaznacz cały
apache2ctl restart