繁体   English   中英

使用iptables将IP连接限制为端口,但允许一个IP无限连接

[英]Limite IP connections to a ports with iptables but allow one IP to unlimitd connections

我需要限制同时连接到Linux服务器上某些端口的连接,然后我发现此iptables规则限制了:

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

但是我需要知道如何将IP列入白名单以跳过限制。

参见示例:

netstat -antu | grep:80 | awk'{print $ 5}'| 切-d:-f1 | 排序 uniq -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上执行此操作

这样的事情会起作用:

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

拒绝可能比直接删除更好。 这样,至少客户端会收到通知,通知该连接被拒绝,因此它将停止重试,而不仅仅是“嘿,我没有收到对最后一个连接的响应,因此我将重试”。

这是对的?

允许IP:

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

拒绝其他人限制为10个连接:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM