ポート80にhttpdを持つUbuntu 12.04サーバーがあり、以下を制限しようとしています。
- IPアドレスあたりのhttpdへの最大接続数は10です。
- 1秒あたりのhttpdへの新しい新しい接続数は150です。
iptablesを使ってこれを行うにはどうすればよいですか?
ベストアンサー1
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 15 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
これにより、ソースIPから15を超える接続が拒否されます。
iptables -A INPUT -m state --state RELATED,ESTABLISHED -m limit --limit 150/second --limit-burst 160 -j ACCEPT
毎秒150の新しい接続(パケット)制限が適用される前に、160の新しい接続(実際にはパケット)が許可されます。