基于阿里的Node全栈之路(六)专有网络VPC的应用
2023-09-27 14:27:25 时间
如果用过阿里云容器服务的同学应该都知道,容器的载体还是用镜像生成的的服务器,而这些镜像是阿里自己搞的,所以会有所滞后,所以很多时候,会遇到像图中这种情况,而这些漏洞的升级,又逼得你不得不天天维护,因为这种漏洞出现的概率好高。如何低成本并便捷的解决问题,就是本文想要达到的效果。
购买不带公网IP的ECS。购买可配置公网EIP,并绑定到该ECS上。(端口专有网络连接公网的时候,只需要解绑公网EIP就可以了) 创建专有网络
创建交换机
按照阿里云的VPC通过有公网IP的ECS访问外网的配置文档,进行配置,得到如下结果。
基于此专有网络,购买容器所需要的ECS,并不配置公网IP,或者直接在容器服务内创建ECS,并选择不保留公网EIP。
创建集群,此时因为专有网络可以通过上述绑定好公网EIP访问外网,所以创建的集群成功,如果创建集群后,集群管理节点失败,或者阿里云的监控安装失败,都是因为专有网络无法访问外网导致,这时,需要查看专有网络是否不能访问外网。
【你的第二个socket应用】Vue3+Node实现一对一即时聊天应用 上一篇文章通过WebSocket实现了一个即时通讯聊天室,使用是Vue3+Node,那篇文章点我进入,这篇文章在上一篇文章的基础上进行一个简单的扩展,实现一个一对一即时聊天应用。
本来打算继续讲讲前后端分离的,但是因为我准备的自开发的博客还没做好,所以还是放到后面几篇文章上好了。
这一篇文章,主要想介绍一下一种网络安全的应用。我也希望有高人能一起交流下这种方式的弱点。
如果用过阿里云容器服务的同学应该都知道,容器的载体还是用镜像生成的的服务器,而这些镜像是阿里自己搞的,所以会有所滞后,所以很多时候,会遇到像图中这种情况,而这些漏洞的升级,又逼得你不得不天天维护,因为这种漏洞出现的概率好高。
![image image](https://yqfile.alicdn.com/9aaa8bbc5c1d53f5677c8a16051f20bdf9418c98.png)
我们除了天天去检查漏洞外,还有没有其它的办法能够去处理这些问题呢?做个检查漏洞的,一有漏洞自动补全?那不是和阿里要做的这个东西一样吗?购买阿里的服务吧,我作为一个个人开发者,那是能省就省的,而且,我认为最好的防御就是不被发现。
经历过负载均衡和OSS这些阿里云实用的功能后。我觉得在阿里云,应该是要能够找到解决的办法的,在经过一段时间的研究,我的新的方案出来了,其实很简单,就是隔离一切!
这里对专有网络隔离的原理进行一些简单解释,简单的说,阿里云docker专有在创建服务器和维护的时候,打开docker访问外网的接口,同时也只是通过代理的方式进行访问,在不需要外网的环境下,关闭外网,这样极大的提高了安全性。
还是和以前一样的,在开始介绍这种方案之前,我们做个前期的准备工作,这里用到的技术:
专有网络: 顾名思义,就是局域网,外部完全不能访问这个网络。弹性公网IP: 也就是购买一个公网IP,可以挂载在想要访问网络的ECS上。
提醒:
阿里云容器服务没有完全支持专有网络,这点阿里云上也有说明(见下图),当你的容器完全创建在专有网络的时候,如果不能访问外网,一些阿里云和外部工具在docker初始化的时候会不被安装。所以这里要提醒大家,创建专有网络下的容器前,先部署好专有网络的环境。![image image](https://yqfile.alicdn.com/cdecf8d7f8a2fcfd02ddb9e0ea9b95639f7a8744.png)
购买不带公网IP的ECS。购买可配置公网EIP,并绑定到该ECS上。(端口专有网络连接公网的时候,只需要解绑公网EIP就可以了) 创建专有网络
![image image](https://yqfile.alicdn.com/f4305cff6c546ba0ffb7d5140419d327ec777e46.png)
![image image](https://yqfile.alicdn.com/da973ae340092c03ccadfe8f79defa06ed55d26f.png)
![image image](https://yqfile.alicdn.com/8f4c8ad56542358fec7d289064e8314586272bdd.png)
【你的第二个socket应用】Vue3+Node实现一对一即时聊天应用 上一篇文章通过WebSocket实现了一个即时通讯聊天室,使用是Vue3+Node,那篇文章点我进入,这篇文章在上一篇文章的基础上进行一个简单的扩展,实现一个一对一即时聊天应用。
相关文章
- nodemon command is not recognized in terminal for node js server
- JS访问数据库[非Node.js]
- Node.js 命令行程序开发教程
- 使用 HTTP/2 服务端推送技术加速 Node.js 应用
- Node fs模块异步读取验证并异步写入
- nodeJS+express+Jade写一个局域网聊天应用(node基础)
- node通过session保存登录状态
- 使用V8和node轻松profile分析nodejs应用程序
- cannot launch node of type [arbotix_python/arbotix_driver]: arbotix_python
- node中的crypto内置模块
- 浅析前端依赖知识体系:依赖是什么(可执行代码与声明)、npm i 的依赖机制、node应用如何使用依赖(声明)、web应用的模块化导致依赖复杂、webpack如何把依赖打包(代码与声明)、组件开发如何更好的被依赖
- 浅析部署遇到的2个报错:Caused by: java.net.SocketTimeoutException: connect timed out的原因及解决、no suitable node (host-mode port already in use on 1 node)原因及解决
- Node Web开发ORM框架 Sequelize
- Node.js:创建应用+回调函数(阻塞/非阻塞)+事件循环
- 安装Node.js、npm和环境变量的配置
- [LeetCode] 1026. Maximum Difference Between Node and Ancestor 结点与其祖先之间的最大差值
- node 中的定时器, nextTick()和setImmediate()的使用
- Node的webpack打包的核心思想就是单页面富应用(SPA)
- Node.js readline模块
- Node.js Buffer
- Node.js 子进程(exec、spawn、fork)
- Node.js GET与POST请求