Отклонить все почтовые пакеты на всех портах (исходящих) в Ubuntu

У меня просто была проблема с нашим провайдером; наше интернет-соединение было заблокировано, потому что было много почты, отправляемой с нашего ip. Проблема в том, что мы все используем gmail и что никакая почта не отправляется через SMTP-сервер ISP, насколько нам известно (ISP блокирует весь трафик на порт 25, если он не находится на их сервере).

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

Что я хотел бы сделать, это выяснить, что отправляет эти письма в нашей сети. Существует ли программа, которая может идентифицировать почтовые пакеты и отклонять их с помощью Ubuntu? Кстати, наш маршрутизатор Ubuntu не запускает SMTP-сервер.

4 ответа

Решение

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

Вы можете установить tcpdump на маршрутизатор Ubuntu ( apt-get install tcpdump ) и настройте его так, чтобы он отслеживал трафик smtp;

 # tcpdump -s0 -w/tmp/smtp_dump port 25
 tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes

Вы можете просмотреть файл, для которого хосты отправляют SMTP-трафик из другого сеанса SSH;

# tcpdump -qr /tmp/smtp_dump 
reading from file /tmp/smtp_dump, link-type EN10MB (Ethernet)
13:27:54.291884 IP g0801.hpl.com.33942 > pz-in-f27.1e100.net.smtp: tcp 0
13:27:54.315294 IP pz-in-f27.1e100.net.smtp > g0801.hpl.com.33942: tcp 0
13:27:54.315323 IP g0801.hpl.com.33942 > pz-in-f27.1e100.net.smtp: tcp 0
13:27:54.339110 IP pz-in-f27.1e100.net.smtp > g0801.hpl.com.33942: tcp 45
...

вы можете получить более сложный вывод, если вы установите wireshark на свой локальный компьютер и загрузите файлы дампа или используете tshark в командной строке ssh.

предупреждение: tcpdump быстро заполнит ваш диск, если у вас много SMTP-трафика, поэтому просмотрите выходной файл ls -lh /tmp/smtp_dump и остановите команду с помощью ctrl-c, когда у вас будет несколько МБ данных для просмотра.

Параметры интерфейса для tcpdump ( -i eth0 ): если ваш маршрутизатор использует интерфейс, отличный от eth0, то вам, возможно, придется выбрать его с помощью -i вариант, например tcpdump -i bond0 -s0 -w/tmp/smtp_dump port 25

Возможно, вы захотите заблокировать все ваши пакеты smtp, это может быть очень хлопотно, к счастью, есть l7-фильтр. Он может блокировать множество различных протоколов, вам просто нужно установить его на шлюз / брандмауэр.

Почту также можно отправлять через порты 465 и 587. (465 был отозван, но все еще может использоваться.). В сочетании со злоупотреблением прокси-сервером, почта может даже отправляться через порт 80 или 443 или 3128 (для squid) или многие другие.

У вашей сети есть единственная точка выхода в интернет? У вас есть брандмауэр в этот момент?

Если нет, то вы захотите этого. Если у вас есть несколько точек выхода, у вас должны быть брандмауэры на каждой. (Возможно, та же физическая коробка.)

Настройте брандмауэры так, чтобы они по умолчанию отбрасывали все и пропускали только нужный вам трафик.

Если вы не знаете, какой у вас обычный трафик, вы можете добавить строку регистрации в конец правил брандмауэра, чтобы все, что еще не было сопоставлено, регистрировалось.

Даже если вам удастся заблокировать трафик с помощью брандмауэра, вы все равно захотите отследить и прекратить отправку почты. Если вы не знаете, какой процесс его отправляет, почтой может быть взломанная система, открытый прокси-сервер или веб-форма, которой злоупотребляет какой-то спамер. Я не хотел бы один из тех в моей сети.

Лучшее решение, вероятно, состоит в том, чтобы настроить почтовые клиенты для использования порта отправки (587) или порта SSMTP (465) при отправке исходящей почты, а затем заблокировать весь исходящий трафик на порт 25. Большинство почтовых провайдеров должны разрешать доступ на эти порты для отправки. исходящая корреспонденция.

Другие вопросы по тегам