我有一个AWS VPC。我试图以一种方式构建我的安全组,以便我可以允许我的所有实例之间的特定端口之间的流量。到目前为止,我有这个:
VPC security group - >
ingress: allow traffic to self from all ports ( self sg-id)
egress: allow traffic from vpc to vpc cidr
Consul-instance group ->
ingress: allow traffic to self from consul ports ( self sg-id)
ingress: allow all traffic from vpc sg-id
egress: all traffic to vpc cidr
App-instances group ->
ingress: allow traffic to self from app-instances ( self sg-id)
ingress: allow all traffic from vpc sg-id
egress: all traffic to vpc cidr
不确定我在这里做错了什么,但这似乎不能以consul实例相互通信的方式工作,app实例可以相互通信但是app-instances和consul无法相互通信。 / p>
是否真的需要将vpc cidr指定为我所有安全组的入口源?我也试过这个,但似乎没有用。不知道我错过了什么。
EDIT-1:
示例:我无法从我的某个app-instance远程登录到端口8085上的consul实例
telnet {consul-host} 8085
Trying x.x.x.x........
如果我从vpc cidr在端口8085上显式打开这两个组之间的端口,那么我就能够访问host:port。但是,在VPC中使用一个通用的安全组来路由流量的想法不起作用!我正在使用terraform来实现这一目标。
EDIT-2
这是考虑使用公共和私有子网的标准vpc设置,其中内部流量通过vpc之间的路由表路由