Я слежу ограничения на подключение iptables чтобы ограничить количество соединений, которые сервер может получить через порт 80. Например, я пробовал:
/sbin/iptables -I INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 10 -j REJECT --reject-with tcp-reset
Кажется, это ограничивает количество подключений на IP. Есть ли способ через IPTables или, возможно, sysctl, чтобы ограничить количество соединений глобально. Это означает, что если, скажем, хост A заблокирует все 10 доступных сеансов, то другой хост не сможет подключиться?
Вы можете изменить свое правило, добавив параметр --connlimit-mask 0
. Это эффективно позволяет ограничить соединения глобально, и все IP-адреса будут обрабатываться без каких-либо различий.
Напротив, значение по умолчанию 32
для IPv4 означает сопоставление только каждого IP-адреса.
Как предлагает @JayMcTee, вы можете использовать решение на уровне веб-сервера для ограничения лимита подключений. Например, вы можете посмотреть MaxClients
вариант для Apache.