
우분투(12.04 또는 14.04)의 트래픽이 많은 웹 서버(http/https 트래픽이 많음)에서 ufw를 사용하고 있습니다.
연결 추적과 관련된 커널 매개 변수 조정을 시도했습니다.약간의 성공.
그런데 생각해보면 저는 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
모든 것이 작동하는지 테스트하기 위해 3개의 스레드와 1000개의 연결을 사용하여 wrk를 사용하여 머신에서 nginx 인스턴스를 요청합니다.
wrk -t 3 -c 1000 "http://<server_ip>/"
추적할 수 없는 항목이므로 conntrack 카운트에서 볼 수 없습니다.
그러나 나는 ...
sudo sysctl -A | grep net.netfilter.nf_conntrack_count
net.netfilter.nf_conntrack_count = 1035
테스트를 실행하면서 이 값이 오르락내리락하는 것을 확실히 볼 수 있습니다.
내가 도대체 뭘 잘못하고있는 겁니까?
답변1
OUTPUT 규칙도 필요합니다.
-t raw -A PREROUTING -p tcp --dport 80 -j NOTRACK
-t raw -A OUTPUT -p tcp --sport 80 -j NOTRACK