Перейти к содержанию
Авторизация  
Тень

Мануал Защита От Ddos С Помощью Утилиты Tcpdump

Рекомендуемые сообщения

Защита от DDOS

tcpdump - это мощнейшая утилита UNIX, позволяющая перехватывать

и анализировать сетевой трафик, проходящий через сетевые интерфейсы. Об установке

читайте на сайте разработчика, в FreeBSD она есть

в портах, в Debian Linux в репозиториях.

 

Приведу пример как можно использовать tcpdump.

Например, на сервере отключены логи, идет легкая ddos атака,

происходит что-то не ладное, вы хотите быстро посмотреть масштабность или убедиться,

что это DDoS-атака, а не DoS или может это вообще никак не связано с внешним миром?

Давайте посмотрим

tcpdump -v -i eth0 dst port 80

После выше набранной команды вы сможете наблюдать список подключений к 80-у порту,

чем больше повторных подключений с одинаковых хостов тем вероятнее мы столкнулись

с DoS или DDoS атакой. Как вы уже наверное догадались, изменив порт можно проверить

есть ли атака на FTP, SSH или другие сервисы которые крутятся на сервере.

Добавив ключ -n имена хостов преобразуются в IP адреса.

 

Глазами все не уследить, при атаке на веб-сервер вывод tcpdump-a сумасшедшей скоростью

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

tcpdump-a в файл. Пакетов 200-300 хватит.

tcpdump -v -n -w attack.log dst port 80 -c 250

 

-v - самый простой уровень логирования, без изысканности.

-n - преобразуем имена хостов в IP адреса

-w - записываем анализ трафика в файл

-c - количество захваченных пакетов

Приступим к анализу полученных данных через tcpdump, отпарсим лог следующей командой

tcpdump -nr attack.log |awk '{print $3}' |grep -oE '[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}' |sort |uniq -c |sort -rn

 

Результат будет - 2 столбца, в первом количество подключений, во втором IP.

Чем больше подключений для одного IP тем вероятнее что это бот.

 

Если список очень длинный можно ограничить его указав нужное количество выводимых строк

tcpdump -nr attack.log |awk '{print $3}' |grep -oE '[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}' |sort |uniq -c |sort -rn | head -20

 

Мы добавили head -20

 

Что бы получить только IP адреса, без первого столбца, нужно убрать ключ -c после uniq

Вывод парсинга можно перенаправить в файл, а затем простым bash-скриптом, заблокировать все IP со списка.

 

#!/bin/bash
BLOCKDB="ips.txt"
IPS=$(grep -Ev "^#" $BLOCKDB)
for i in $IPS
do
iptables -A INPUT -s $i -j DROP

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Молодец ;)

 

http://gamesonlin.ru...ty-tcpdump.html (не реклама)

http://gamesonlin.ru/18-zaschita-ot-ddos-utilitoy-tcpdump.html (не реклама)

Изменено пользователем SacrilioN

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Молодец ;)

 

http://gamesonlin.ru...ty-tcpdump.html (не реклама)

http://gamesonlin.ru...oy-tcpdump.html (не реклама)

Ну и? допустим он взял оттуда,я лично не нашел бы такое,а так сразу здесь будет =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

80 порт, только тапок его открытым оставит

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...