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

Linux ограничивает соединения на определенном порту

Я слежу ограничения на подключение 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.