Вчера заметил подозрительную активность при запуске netstat | grep http
на моей виртуальной машине Azure Ubuntu:
Таких строк было более 60:
tcp 0 0 ser:http hosted-by.blazing:29248 SYN_RECV
tcp 0 0 ser:http hosted-by.blazingf:59438 SYN_RECV
tcp 0 0 ser:http 8.8.8.8:7057 SYN_RECV
# [SNIP]
Я предполагаю, что это атака SYN-флуда, и, учитывая наличие 8.8.8.8
возможно, какой-то IP Spoofing? У меня нет защиты от DDOS со стороны Azure, только стандартная виртуальная машина Ubuntu. Я пробовал несколько вещей:
Раскомментировал строку net.ipv4.tcp_syncookies=1
в /etc/sysctl.conf
и побежал sysctl -p
но вышеуказанные пакеты продолжались.
У меня уже есть свой сценарий iptables на месте, чтобы немного заблокировать сервер. Проверяя этот скрипт, я заметил несколько несвязанных строк в /var/log/syslog
:
INFO Exception processing GoalState-related files: [ProtocolError]
[Wireserver Exception] [HttpError] [HTTP Failed]
GET http://168.63.129.16/machine/?comp=goalstate -- IOError
timed out -- 6 attempts made
Некоторое расследование этого IP показывает, что это часть инфраструктуры Azure, поэтому я пошел дальше и добавил это в свой сценарий брандмауэра, чтобы разрешить исходящий трафик на этот IP-адрес через порт 80.
Внезапно остановился предыдущий SYN-трафик.
ОБНОВИТЬ
Хорошо, некоторые дальнейшее расследование показывает, что Azure обеспечивает базовый уровень защиты от DDOS:
Базовый: автоматически включается как часть платформы Azure. Постоянный мониторинг трафика и предотвращение распространенных атак на уровне сети в реальном времени обеспечивают те же средства защиты, что и онлайн-сервисы Microsoft. Весь масштаб глобальной сети Azure можно использовать для распределения и уменьшения трафика атак по регионам. Защита предоставляется для общедоступных IP-адресов Azure IPv4 и IPv6.
Думаю, теперь мой вопрос для кого-то в курсе: разрешит ли исходящий HTTP-трафик 168.63.129.16
быть важной частью этой защиты и объяснить поведение, которое я видел?
168.63.129.16 используется для вашей виртуальной машины для связи с внутренними ресурсами Azure, такими как мониторинг, пульс гостевого агента, зонды балансировки нагрузки, а также для передачи платформе сигнала о состоянии готовности виртуальной машины. Мне не удалось найти исчерпывающий список всего, что использует этот IP-адрес для связи, но ваш опыт работы в Azure будет сокращен, если вы не разрешите доступ, поэтому я рекомендую вам это сделать.
Требуется ли это для защиты от DDOS, я подозреваю, что это, вероятно, нет, поскольку большая часть защиты от DDOS будет выполняться на сетевом уровне до того, как она достигнет вашей виртуальной машины, однако возможно, что некоторые данные мониторинга, отправленные по этому маршруту, могут быть используемый.