关于阿里云 VPC 绑定 EIP 的大坑

2017-01-18 14:09:40 +08:00
 suomy

之前用其他厂的云服务,把内部服务(比如数据库)绑定在内网 IP ,外网是访问不到的。结果到了阿里云,绑定在 VPC 内网 IP 的服务,默认情况下,外网是能够访问到的,相当于把内部服务暴露到外网了,吓出了一身冷汗,问了客服,是这么说的:

VPC 的外网 EIP 是 NAT 到网卡上的,所以内网监听,外网也可以访问

解决方案是:

取消 EIP 即可

取消 EIP ?我一脸黑人问号,遇到客服给出的这个解决方案,我怀疑自己遇到了假客服...

后来摸索了一下,正确的姿势是设置一下安全组(阿里云自己搞的防火墙),只开放必要的端口

当然,可能有人说,用 VPC 前先设置安全组是常识,但对于第一次使用阿里云的用户来说,使用默认设置(VPC 默认安全组是开放全部端口)的情况下,很容易就踩到这个坑了,联想到最近 mongodb/ES 被脱裤勒索,是否也有一部分是因为这个坑导致的呢?

感觉阿里云应该在明显的地方提示这样的默认配置,避免初次使用的用户趟坑啊

4652 次点击
所在节点    分享发现
12 条回复
rrfeng
2017-01-18 15:06:27 +08:00
不用 EIP
我坚持的原则是所有服务器没有公网 IP 地址,要主动访问外面经过 NAT 网关
paw
2017-01-18 15:09:56 +08:00
google 家的防火墙规则是默认只开 22 和 icmp ,其他自己手工加
cevincheung
2017-01-18 15:56:39 +08:00
千万云有 VPC 吗?没有吗?有吗?

个人觉得千万云在国内所有云服务器产品中属于最渣的(没有之一)
wzxjohn
2017-01-18 16:09:15 +08:00
虽然是阿里黑,但是呢也要说一句。国内的云厂商,包括但不限于阿里云,腾讯云等,大多数对于 外网 IP/EIP 的做法都是 NAT 到网卡上,不论你是基础网络还是 VPC 。也就是说不管是哪家,基本都是监听 0.0.0.0 就相当于公网监听。
wzxjohn
2017-01-18 16:09:54 +08:00
当然腾讯云的默认策略是 Linux 只放通 22 ,除非你手动选了全通。
EPr2hh6LADQWqRVH
2017-01-18 16:50:47 +08:00
其实 Amazon 也是这样的来着。
如果真的一组公网 IP 给你路由到 VPC 里面。。。。。。
你确定你想自己做这些操作吗。。。
mooncakejs
2017-01-18 16:53:32 +08:00
基本上买过的 vps 这种都是这样的,同时只能作为入口用,不能用 interface 绑定出口,只有一台实体服务器是绑定到网卡的。
suomy
2017-01-18 18:27:14 +08:00
@wzxjohn 我是监听内网 IP ,比如 192.168.1.10 ,结果相当于监听 0.0.0.0 了
suomy
2017-01-18 18:27:51 +08:00
@wzxjohn 腾讯云的这个策略比较正常,阿里云默认是全开放的
suomy
2017-01-18 18:31:12 +08:00
@avastms
@mooncakejs

我的问题是,内部服务监听内网 IP ( e.g. 192.168.1.10 ),结果默认同时绑定到外网去了(相当于绑定 0.0.0.0 ),内部服务暴露出去了,其他的厂商也是这样的?
wzxjohn
2017-01-19 00:02:11 +08:00
@suomy 是的,基本上所有厂商都是这样的。只是默认安全组的策略不一样罢了。。。
hawhaw
2017-09-25 10:37:22 +08:00
vpc 的公网地址一对一 map 进来的就是这样的呀,外网的网络设备上对进来的包做了 DNAT 了呀,目标地址已经由公网转换成你的私网地址了呀,所以你的服务绑定在私网上也一样可以被访问到呀,所以,做好安全组以后再绑 eip 即可。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/335387

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX