Я хочу ограничить количество TCP-соединений на сервере Linux, я использовал следующую команду.
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 25 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
Кажется, что-то не так и желаемых результатов нет. Я получаю количество активных подключений, используя следующую команду
netstat -n | grep ': 80' | awk -F '' '{print $ 5}' | awk -F ':' '{print $ 1}' | сортировать | uniq -c | sort -n
Теперь, когда я набираю указанную выше команду, я получаю следующие результаты.
44 122.179.103.8
45 107.167.107.123
46 120.60.76.201
48 122.162.172.182
49 183.87.48.105
51 122.161.241.33
71 198.72.112.97
98 122.168.167.114
103 122.177.169.21
134 106.51.130.193
137 122.165.226.196
Как вы можете видеть, количество активных TCP-соединений превышает допустимый предел, равный 25. Может ли кто-нибудь помочь мне с правильной командой, или что здесь не так?
Пожалуйста, посмотрите там; https://unix.stackexchange.com/questions/139285/limit-max-connections-per-ip-address-and-new-connections-per-second-with-iptable
Кажется, ваша линия ограничена 25 числом на IP.