Назад | Перейти на главную страницу

ufw без отслеживания соединений

Я использую ufw на веб-сервере с высоким трафиком (много трафика http / https) на ubuntu (12.04 или 14.04).

Я попытался настроить параметры ядра, связанные с отслеживанием соединений, с помощью некоторый успех.

Однако, если подумать, я не использую NAT, поэтому не думаю, что мне нужно отслеживание соединений, по крайней мере, для соединений на портах 80 или 443.

Я пробовал следовать указаниям этот вопрос с приспособлениями, то есть:

sudo iptables -t raw -A PREROUTING -p tcp --dport 80 -j NOTRACK

и моя необработанная таблица выглядит так:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
NOTRACK    tcp  --  anywhere             anywhere             tcp dpt:http

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Чтобы проверить, что все работает, я запрашиваю экземпляр nginx на машине, используя wrk, используя 3 потока и 1000 соединений.

wrk -t 3 -c 1000 "http://<server_ip>/"

Поскольку они не должны отслеживаться, я не должен видеть их в счетчике conntrack

Однако я ...

sudo sysctl -A | grep net.netfilter.nf_conntrack_count
net.netfilter.nf_conntrack_count = 1035

Я ясно вижу, как это значение увеличивается и уменьшается по мере запуска теста.

Что я делаю не так?

Вам также понадобится правило ВЫХОДА.

-t raw -A PREROUTING -p tcp --dport 80 -j NOTRACK
-t raw -A OUTPUT -p tcp --sport 80 -j NOTRACK