2016-07-27 8 views
0
私は私のLinuxサーバ上の特定のポートへの同時接続を制限する必要が

をunlimitdすることができ、その後、私はこのiptablesのを制限するルールが見つかりました:LimiteのIP接続が、1つのIPが接続

のiptables -I INPUTを - p tcp --syn --dport 80 -m connlimit --connlimit-above 10 -j DROP

しかし、IPをホワイトリストに登録して制限をスキップする方法を知っておく必要があります。

例を参照してください。

netstat -antu | grep:80 | awk '{print $ 5}' |カット-d:-f1 |並べ替え|ユニーク-c |ソート-nr |ヘッド-20

406 45.43.xxx.xxx 
246 186.249.7.100 
118 108.171.138.160 
16 200.209.136.11 
    9 189.125.114.245 
    8 164.85.83.104 
    7 108.21.116.86 

たとえば、接続を10に制限し、IP 45.43.xxx.xxxを無制限の接続にする必要があります。

私はこのような80、1935と554

答えて

0

何かがうまくいくのポート上でこれにする必要があります。

iptables -s <goodip> ... other stuff ... -j ACCEPT 
iptables ... other stuff ... --connlimit-above 10 -j REJECT 

それはちょうどDROPよりも、拒否することはおそらく良いでしょう。そうすれば、少なくとも、クライアント側から接続が拒否されていることが通知されるので、「ちょっと、最後の接続に応答がないので、もう一度やり直してみよう」というより、再試行をやめます。

0

これは間違いありませんか?

iptables -I INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 10 -j DROP 

iptables -I INPUT -p tcp -s 000.000.000.000 --syn --dport 80 -m connlimit --connlimit-above 10 -j DROP 

10個の接続を制限するもので他人を拒否:

IPを許可