如何使用iptables阻止ip地址

时间:2015-10-31 15:11:18

标签: security amazon-web-services amazon-ec2 iptables

我得到了这个我想要阻止的ip量

tcp        0      0 ns1.example.co:http ec2-54-207-46-155.sa-:51927 SYN_RECV    -                   
tcp        0      0 ns1.example.co:http ec2-52-19-105-249.eu-:60495 SYN_RECV    -                   
tcp        0      0 ns1.example.co:http ec2-52-30-171-255.eu-:42988 SYN_RECV    -  

我意识到ip地址以ec2开头,我知道它们来自amazon ec2服务器。我想在我的iptables上阻止所有以ec2开头的ip。

我该如何进行

我发现的更进一步是通过ip阻止,例如

$ iptables -I INPUT -s 1.2.3.4 -j DROP

但我想阻止所有ip开始

ec2-52 and ec2-54

由于

1 个答案:

答案 0 :(得分:1)

首先,ec2-52-30-171-255.eu不是 IP地址,它是主机名。要获取关联的IP地址,您应该以这种方式运行 netstat (-n选项表示没有主机名解析):

# netstat -n

我不认为从Amazon EC2服务中删除所有流量是一个好主意,除非你有大量的EC2容器尝试SSYN你。以下是如何设置针对SYN攻击的强大防御:

快速方式(仅限IPTables)

IPTables允许您限制并发SYN连接。看看这里:http://www.cyberciti.biz/tips/howto-limit-linux-syn-attacks.html

最佳方式(IPTables + Fail2Ban)

如果您真的想要一次性阻止它们,您仍然可以执行上述方法,而不是仅删除它们,登录到文件并设置 Fail2Ban 过滤器来检查此文件并禁止每个客户端尝试在给定时间内发送过多SYN。 您可能对此感兴趣:https://serverfault.com/questions/640873/how-to-ban-syn-flood-attacks-using-fail2ban