Фильтрация трафика с помощью eBPF
Ответьте на следующие вопросы:
- что такое BPF и зачем он нужен
- в чем отличие BPF и eBPF
- Какие преимущества дает использование eBPF для фильтрации трафика по сравнению с традиционными методами
Создайте eBPF-программу, которая будет фильтровать входящие TCP-пакеты на основе IP-адреса источника и порта.
- Убедитесь, что у вас установлен Linux с поддержкой eBPF
- Установите необходимые инструменты: clang, llvm, bpftool, libbpf
- Реализуйте и запустите программу для фильтрации трафика.
- Установите и запустите утилиту tcpdump или Wireshark для анализа сетевого трафика.
- Попробуйте установить TCP-соединение с заблокированным IP адресом. Убедитесь, что пакеты отбрасываются.
- Проверьте, что пакеты с других IP-адресов проходят через фильтр.
Модифицируйте программу, чтобы отбрасывались только TCP-пакеты, секция данных которых содержит слово SPAM в кодировке ASCII. Проверьте её.