EC2阻止所有出站呼叫

时间:2014-04-01 12:42:04

标签: amazon-ec2 centos iptables offlineapps

我有一个ec2 VM,它是我从VMWare实例导出的CentOS机器。与此VM关联的安全组是默认安全组,此默认安全组仅启用了入站设置,我无法编辑该组的出站设置(在ec2仪表板中显示为已禁用),不确定原因。

我想要做的是阻止来自机器内的所有出站呼叫,我有一个应用程序,我正在尝试模拟在离线环境中运行它,它可以接受来自VM外部的呼叫,但不能在外部进行任何呼叫VM。

在ec2 VM中有没有实现这个目标?我不确定此时我能提供哪些信息,以便获得最佳帮助,请向我询问任何其他信息。

iptables目前已在VM中停止,如果我启动它将阻止对VM的所有入站调用,我将无法访问该应用程序(它是Web应用程序)。

这是iptables -L

的输出
[root@ip-10-154-146-78 app_module]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination      
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh 
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

1 个答案:

答案 0 :(得分:5)

如果您使用 EC2-classic ,则无法更改出站规则。只有 EC2-VPC 允许您配置安全组中的出站流量。此外,安全组规则始终是许可;您无法创建拒绝访问的规则。请查看EC2-VPC中的网络ACL。它支持允许规则和拒绝入站/出站流量的规则。但是,它在子网级别而不是实例级别运行。如果仅在VPC子网中启动一个实例并相应地配置ACL,则应满足模拟测试用例的要求。使用IPTable也是一种选择。您可以在http://www.cyberciti.biz/tips/linux-iptables-11-how-to-block-or-open-httpweb-service.html上看到有关如何使用iptables允许http / https访问的教程。