使用计算巢打造纯内网部署的PaaS服务

私有化部署PaaS软件的公网访问需求

在阿里云计算巢,我们发现,很多本来应该只在VPC内网使用的三方PaaS软件和中间件,在部署时都开启了公网IP,这并不符合最佳实践。

以数据库为例,数据库保存了对企业来说最重要的核心数据,一般来说,只应该只开放给部署在内网的应用访问。阿里云官方的RDS数据库,创建完成后是默认是不开放公网访问的,内网访问也需要加入白名单才可以连接。

但计算巢上私有化部署的数据库软件,很多开放了公网,原因是数据库软件需要提供基于WEB的管控面板和监控面板(比如Grafana)。如果不提供公网服务,用户就没有办法登录基于WEB GUI的管控面板进行管理。除非用户的本地网络通过VPN与线上VPC打通,但大部分用户无法满足这个条件。

公网访问带来的问题

数据库服务提供了公网服务以后,其管控面板和监控面板的公网暴漏成为了安全的突破口,给用户的数据安全会带来很大风险。

为了安全,要求服务商的WEB服务能够支持HTTPS等安全机制,更进一步,可能要求用户部署SSL证书。另一方面,服务商要经常更新软件修复漏洞,但是对于私有化部署的服务,服务商无法像托管服务一样很便捷的更新软件。

从用户角度,除了安全风险,公网访问也会给用户带来额外的流量费用、增加了部署的复杂性。如果一套生产环境中部署了多个PaaS软件或中间件,可能会部署多个公网IP,给用户带来了管理成本。

计算巢内网WEB服务安全代理

计算巢提供了内网WEB服务安全代理,解决了服务商无法纯内网部署软件的痛点。

如果一个服务的输出中存在内网的WEB服务地址(http/https),计算巢控制台在WEB地址盘展示一个”安全代理直接访问的“按钮,用户点击后,即可在新窗口打开网页。

使用此功能,服务商只有少量的接入工作:

  • WEB服务所在的ECS实例安全组需要对Workbench内网地址开放
  • 服务输出增加内网的WEB地址

对用户来说,带来了很多好处:

  • 和公网访问WEB服务完全一致的体验
  • 消除了公网访问,大大提升安全度、
  • 通过RAM鉴权,只有实例的Owner账号才可以访问
  • 没有公网费用

在用户点击背后,计算巢和Workbench做了一系列工作:

  1. 计算巢需要验证用户的身份和权限,保证只有服务实例的Owner才可以访问。
  2. 计算巢需要从内网WEB地址中,解析出底层的VPC信息、ECS信息、IP和端口信息等等。
  3. 计算巢调用Workbench接口,传入访问信息,Workbench对访问者鉴权后返回VPC内网WEB代理地址。
  4. 计算巢控制台在新窗口打开代理地址,Workbench将用户请求转发到对应的内网ECS端口上,并返回WEB服务的响应。
  5. 代理链路对用户透明,Workbench提供https服务保证用户数据安全。

1.jpg

客户案例 - AutoMQ

AutoMQ for Kafka 是基于云原生理念重新设计的新一代 Kafka 发行版。在保持和 Apache Kafka 100%兼容前提下,AutoMQ 可以为用户提供高达 50% 的成本节省以及百倍的弹性优势,同时支持秒级分区迁移和流量自动重平衡,解决运维痛点。

AutoMQ依赖其控制台来进行Kafka实例的创建,因此控制台是一个必须使用的组件。在以前,AutoMQ在部署时默认给用户开启公网访问。现在,此选项可以默认关闭了,只有少量有需求的用户需要。

2.jpg

在计算巢部署了AutoMQ实例后,可以通过计算巢控制台访问VPC内网部署的控制台。

3.gif

参考

计算巢产品文档

使用计算巢安全代理功能消除公网依赖

使用安全代理访问服务实例的VPC私网Web地址

posted @ 2024-05-23 13:44  阿里云CloudOps  阅读(13)  评论(0编辑  收藏  举报