У меня есть сервер Linux (2.6.22), на котором работает sendmail. И кому-то удается успешно использовать мой сервер, чтобы рассылать свой спам.
Бесить.
Я могу видеть в / var / log / secure, что различные учетные записи сервера постоянно подвергаются перебору паролей, поэтому я предполагаю, что кто-то получил пару ключей в какой-то момент. Я сменил пароли для каждой учетной записи, которую смог найти, на неприятные непостижимые вещи.
Я проверил, что sendmail не просто ретранслирует: скорее, я вижу, что / var / spool / clientmqueue заполняется огромным количеством спама. Кто-то на самом деле убеждает мой сервер отправлять почту от их имени.
Итак, главный вопрос: что мне нужно сделать, чтобы это остановить?
Брутфорс - это стандартная рабочая процедура практически для любого сервиса, открытого в наши дни. Я бы предложил установить fail2ban или аналогичную программу и настроить ее для отслеживания журналов на предмет неправильных попыток ввода пароля (по крайней мере, для SSH и вашего почтового сервера) и IP-адресов в черный список (через iptables), которые делают несколько неудачных попыток в короткие сроки. Вы удивитесь, сколько попыток будет сделано и сколько IP-адресов занесено в черный список. Вам не нужно слишком долго помещать их в черный список, прежде чем они перейдут к другому хосту и появится кто-то другой.
Я отказался от sendmail 20 лет назад, поэтому я не могу точно сказать, как это работает с sendmail, но мой постфикс сообщает мне в журналах, кто (идентификатор пользователя) добавил почту в очередь. ЕСЛИ вашему спамеру все же удается пройти аутентификацию, вы должны найти учетную запись, используемую таким образом.
Вы также можете посмотреть на Received
заголовки в спаме (посмотрите только строки Received, которые пишет ваш собственный сервер; остальные могут быть поддельными), чтобы узнать больше о вашем спамере и о том, как ему удалось обмануть ваш sendmail, чтобы он принял его спам. Другие заголовки, добавленные вашим сервером, тоже могут помочь.
Если вы не можете самостоятельно разобраться в журналах или строках заголовков, добавьте их в свой вопрос, чтобы мы могли помочь.