Назад | Перейти на главную страницу

Как узнать, какая программа отправляет электронные письма

У меня есть окно Linux (debian), которое работает нормально. Однако у меня возникла проблема. Мне нужно выяснить, какая программа отправляет электронные письма, когда я использую команду «mail». Или, если на то пошло, когда PHP-скрипт отправляет электронные письма с помощью функции mail (), мне нужно знать, какая программа отправляет эти электронные письма.

Как я могу узнать?

Ps: Для ясности, я хотел бы знать, какая программа вызывается, когда я (или программа) использую команду "mail".

На моем сервере установлено 2-3 MTA, но я не могу понять, какой из них отвечает за отправку почты.

Что вы спрашиваете, как делать:
dpkg -S /path/to/mail

/ path / to / mail / можно найти с помощью which mail, при условии, что mail на вашем пути.

Незначительное примечание:
Почта также может быть отправлена ​​с использованием sendmail вместо того mail.

Что ты должен делать:
Посмотрите на свой почтовый журнал, скорее всего /var/log/maillog или /var/log/mail.log там должно быть имя демона.

Этот вопрос похож на Как узнать, какой скрипт на моем сервере рассылает спам? , но поскольку он больше не позволяет отвечать (помечен как дублированный), я отвечаю на него здесь, чтобы дать некоторую информацию.

Короткий ответ:

Сменить файл /etc/php.ini или /etc/php5/apache/php.ini добавив эти две строки: mail.add_x_header = On mail.log = /var/log/phpmail.log

перезапустите свой php5 or php5-fpm service and nginx/apache сервис, затем проверьте /var/log/phpmail.log файл, чтобы увидеть, в каком скрипте были ошибки запуска, и удалите их!

Длинный ответ:

Вот очень конкретная область действия (мое решение не решает другой сценарий):

Я запускаю Ubuntu на VPS и имею nginx, php5-fpm, and wordpress установлен, и он был взломан, и я почти уверен, что это был взлом WP и спам-коды.

Я пробовал следующие действия, чтобы исправить; например, использованный Детектор вредоносных программ для Linux; сбросить все учетные данные для подключения к базе данных; и просто просматривайте, чтобы удалить вредоносные коды.

Я предпринял следующие действия:

  • сбросить все пароли к базе данных
  • войдите в систему wp-admin, удалите нежелательного администратора
  • установить Wordfence для защиты

Для исходного кода:

  • вы можете сравнить официальный код wordpress с вашим и посмотреть, что изменилось
  • странные папки в корневом каталоге WP
  • некоторые файлы, заканчивающиеся на * .suspected
  • странные имена файлов, такие как 1346.php, и т.д.
  • grep eval всех ваших файлов, чтобы увидеть что-нибудь вредоносное
  • проверьте любой php файлы с обфусцированным кодом

После того, как я это сделал, я также удаляю разрешение на выполнение всех файлов, кроме каталога: chmod -x+X -R * или обратитесь сюда: удалить разрешения на выполнение из файлов, не касаясь папки

Однако я все еще вижу много ошибок в своих /var/log/mail.err и /varlog/syslog, потому что я не настраивал sendmail или postfix (вы можете остановить такие службы, чтобы выявить ошибку спама):

postfix/sendmail[2422]: fatal: open /etc/postfix/main.cf: No such file or directory

Однако я до сих пор не знаю, где скрипты спама ... здесь застряли ...

После нескольких часов поиска я нашел решение, упомянутое в короткий ответ , настройте параметры почты в php.ini и выставляем расположение скриптов.

После удаления этих сценариев я больше не обнаружил ошибок, связанных со спамом, и пока мой сервер выглядит чистым.

Хотя, как многие предлагали, вы должны отключить такой сервер и выполнить повторное создание образа или сбросить его до предыдущего состояния и т. Д.

справочные ссылки:

Как мне поступить с взломанным сервером?

https://blog.rimuhosting.com/2012/09/20/finding-spam-sending-scripts-on-your-server/

strace раскроет поведение вашего кода - независимо от того, выполняет ли он программу или устанавливает TCP-соединение с почтовым сервером.