使用计算巢打造纯内网部署的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做了一系列工作:
- 计算巢需要验证用户的身份和权限,保证只有服务实例的Owner才可以访问。
- 计算巢需要从内网WEB地址中,解析出底层的VPC信息、ECS信息、IP和端口信息等等。
- 计算巢调用Workbench接口,传入访问信息,Workbench对访问者鉴权后返回VPC内网WEB代理地址。
- 计算巢控制台在新窗口打开代理地址,Workbench将用户请求转发到对应的内网ECS端口上,并返回WEB服务的响应。
- 代理链路对用户透明,Workbench提供https服务保证用户数据安全。
客户案例 - AutoMQ
AutoMQ for Kafka 是基于云原生理念重新设计的新一代 Kafka 发行版。在保持和 Apache Kafka 100%兼容前提下,AutoMQ 可以为用户提供高达 50% 的成本节省以及百倍的弹性优势,同时支持秒级分区迁移和流量自动重平衡,解决运维痛点。
AutoMQ依赖其控制台来进行Kafka实例的创建,因此控制台是一个必须使用的组件。在以前,AutoMQ在部署时默认给用户开启公网访问。现在,此选项可以默认关闭了,只有少量有需求的用户需要。
在计算巢部署了AutoMQ实例后,可以通过计算巢控制台访问VPC内网部署的控制台。
参考
使用计算巢打造纯内网部署的PaaS服务的更多相关文章
- Redis-3.2.1集群内网部署
摘要: Redis-3.2.1集群内网部署 http://rubygems.org国内连不上时的一种Redis集群部署解决方案.不足之处,请广大网友指正,谢谢! 一. 关于redis cluster ...
- Nginx代理实现内网主机访问公网服务
通过Nginx代理实现内网主机访问公网和接口服务 1.需求: m2.test.com为公司测试环境的微信测试域名,因为要调用微信服务接口需要访问外网,现通过Nginx代理现实此功能. 2.环境如下: ...
- centos7谷歌chrome内网部署演示
上传需要的包,注释网关创建内网环境 [root@localhost ~]# ls anaconda-ks.cfg chrome mcw4 mcw4.tar.gz mcwchromerpm.tar.gz ...
- 内网部署Docker版本Gitlab
Gitlab部署: 1. 还原备份文件后记得拷贝gitlab-secrets.json,不然会遇到500错误 2. 下载Docker以及依赖项rpm包 3. 在外网机器下载镜像 a. 拉取——Dock ...
- 内网部署YApi
官网地址:https://hellosean1025.github.io/yapi/devops/index.html 环境要求 nodejs(7.6+) mongodb(2.6+),安装看这篇文章: ...
- yapi内网部署 centos
1.部署方案 官方说明: https://hellosean1025.github.io/yapi/devops/index.html 2.需要注意的点 (1)在centos等服务启上最好使用“命令行 ...
- DLINK 企业路由器内网部署web开启端口转发后还需要开启是否支持端口回流功能
跑后台使用的服务器,配置一般都很低,带宽只有2Mb 一些大型文件比如app的更新包使用这种服务器不可行 但是公司的网络是100Mb对等静态ip专线 所以能利用起来,每年将会省下8万块 说干就干,这个步 ...
- 内网探测之SPN服务扫描及相关利用
在写下一个大块之前,补充一些小知识点,也没啥新东西 0x01简介 如果常规扫描服务,结果不理想,非常GG,可以考虑使用SPN进行服务扫描,这是为了借助Kerberos的正常查询行为(向域控发起LDAP ...
- 记一次metasploitable2内网渗透之samba服务的攻击
80端口中对应一些web靶场,在这里不记录 111端口的利用是向rpcbind服务的UDP套接字发送60字节载荷,便可填充目标内存,搞崩主机系统.在这里也不记录 Samba服务简介 Samba是在Li ...
- 内网学习之MySQL服务提权
利用MySQL提权原理: 1.具有mysql的root权限,且mysql以system权限运行. 2.具有执行sql语句的权限,webshell或者外连皆可 UDF提权 UDF(user define ...
随机推荐
- 2024-04-13:用go语言,给定一个整数数组 `nums`, 请编写一个函数,返回一个新的数组 `counts`。 满足以下条件:对于每个 `nums[i]`, `counts[i]` 表示在
2024-04-13:用go语言,给定一个整数数组 nums, 请编写一个函数,返回一个新的数组 counts. 满足以下条件:对于每个 nums[i], counts[i] 表示在 nums[i] ...
- nginx 如何代理websocket
前言 下面是配置nginx websocket 的代码. # HTTPS server map $http_upgrade $connection_upgrade { default upgrade; ...
- CSS之定位Position
前言 之前在<CSS之浮动>中,我当时是想一起说说定位的,因为我在很多地方看到有把float和position放在一起讲的,说它们的一些属性值可以使元素脱离文档流,但是没想到在准备内容的时 ...
- 使用ISS服务器方式跑C#程序
使用ISS服务器方式跑C#程序 VS2010,临时接了一个C#系统的小系统,需要本地调试跑一下 但是老是在conn.open提示06413,简单来说就是连接不上数据库 尝试了很多方法,最后还是决定配置 ...
- ORA-01555:snapshot too old: rollback segment number X with name "XXXX" too small
ORA-01555:snapshot too old: rollback segment number X with name "XXXX" too small 在查询快照的时候 ...
- N个技巧,编写更高效 Dockerfile|云效工程师指北
简介:云原生时代下软件的构建和部署离不开容器技术.提到容器,几乎大家下意识都会联想到 Docker .而 Docker 中有两个非常重要的概念,一个是Image(镜像),一个是Container(容器 ...
- ADBPG&Greenplum成本优化之磁盘水位管理
简介:本文我们将通过一个实际的磁盘空间优化案例来说明,如何帮助客户做成本优化. 作者 | 玉翮 来源 | 阿里技术公众号 一 背景描述 目前,企业的核心数据一般都以二维表的方式存储在数据库中.在 ...
- [Go] golang 去除 URI 链接中的 query string 参数
思路是使用 golang 的 net/url 包提供的方法解析url各部分,其中 URL.RawQuery 为查询参数部分,格式如 :a=b&c=d 然后我们再通过 strings.Repla ...
- SpringBoot项目预加载数据——ApplicationRunner、CommandLineRunner、InitializingBean 、@PostConstruct区别
0.参考.业务需求 参考: https://www.cnblogs.com/java-chen-hao/p/11835120.html#_label1 https://zhuanlan.zhihu.c ...
- jemeter中json提取器
1.A接口中的单个参数提取,之后用于其他接口 a. 在需要提取字段的接口上右击添加----后置处理器-----json extractor b. 填写json提取器的数据 1.名称:随便填写,方便自己 ...