У меня есть тестовая установка в лаборатории с 4 машинами:
чтобы протестировать производительность брандмауэра Linux, поскольку в последние месяцы нас укусили несколько атак син-флуд. Все машины работают под управлением Ubuntu 12.04 64bit. t1, t2, t3 соединены между собой коммутатором 1 ГБ / с, t4 подключается к t3 через дополнительный интерфейс. Таким образом, t3 имитирует брандмауэр, t4 является целью, t1, t2 играют злоумышленников, генерирующих бурю пакетов (192.168.4.199 - это t4):
hping3 -I eth1 --rand-source --syn --flood 192.168.4.199 -p 80
t4 отбрасывает все входящие пакеты, чтобы избежать путаницы со шлюзами, проблем с производительностью t4 и т. д. Я смотрю статистику пакетов в iptraf. Я настроил брандмауэр (t3) следующим образом:
sysctl следующим образом:
net.ipv4.ip_forward = 1
net.ipv4.route.gc_elasticity = 2
net.ipv4.route.gc_timeout = 1
net.ipv4.route.gc_interval = 5
net.ipv4.route.gc_min_interval_ms = 500
net.ipv4.route.gc_thresh = 2000000
net.ipv4.route.max_size = 20000000
(Я многое изменил, чтобы t3 продолжал работать, когда t1 + t2 отправляют как можно больше пакетов).
Результат этих усилий несколько странный:
И это - вот моя главная проблема - две старые машины P4 отправляют как можно больше пакетов, а это означает, что почти каждый в сети должен быть способен на это.
Итак, вот мой вопрос: пропустил ли я некоторые важные моменты в конфигурации или в своей тестовой настройке? Есть ли альтернативы для построения системы межсетевого экрана, особенно в системах smp?
Я бы перешел на Kernel> = 3.6, у которого больше нет кеша маршрутизации. Это должно решить часть ваших проблем.
Как у вас настроено ведение журнала на Т3? Если все отброшенные пакеты регистрируются, причиной может быть дисковый ввод-вывод.
Поскольку это тестовая среда, вы можете попробовать тест с отключенным ведением журнала T3.