K8s容器云平台网络安全如何规划?容器之间的安全如何考虑?

参与12

4同行回答

liubin0521liubin0521  网信安全运营专家 , 中移动信息技术有限公司
容器平台面临的安全问题:1)隔离性较弱:容器基于进程的隔离,其隔离性不如虚拟机强,可能导致容器逃逸攻击宿主机2)镜像漏洞多:镜像是容器运行的基础,官方的镜像有30%的镜像存在高危 安全漏洞3)资产理不清:容器平均的存在时间为3分钟, 快建快消的特点导致容器资产 变化快4)安全控制难 :容...显示全部

容器平台面临的安全问题:

1)隔离性较弱:容器基于进程的隔离,其隔离性不如虚拟机强,可能导致容器逃逸攻击宿主机
2)镜像漏洞多:镜像是容器运行的基础,官方的镜像有30%的镜像存在高危 安全漏洞
3)资产理不清:容器平均的存在时间为3分钟, 快建快消的特点导致容器资产 变化快
4)安全控制难 :容器集群k8s只提供了编排框架, 额外的一切安全控制需要插来 件实现
5)合规需求:等级保护2.0对云计算环境提出 了合规要求,PaaS平台有合规 的需求

如何构建容器平台的安全方案:
1)基础设施安全:保证平台依赖的宿主机是安全的;
2)镜像安全 :保证无漏洞的镜像在 制作、传输、存储、 运行过程中不被篡改
3)容器运行防护: 对容器运行的进程、 文件、网络、系统调 研进行检测和控制
4)集群安全 :对容器集群的资源、 网络、权限进行监控、 审计和控制

具体的安全建议:
关于镜像安全:
•使用可信基础镜像
•精简镜像,减少受攻击面
•及时更新漏洞库并周期性执行镜像扫描
•在镜像使用之前,进行镜像扫描
•镜像依赖分析,漏洞影响分析
•使用镜像签名功能,以验证镜像的完整性
•使用带有认证功能的镜像仓库,保证与仓库交互的客户端身份有效性

关于容器的安全:
•禁止容器使用root用户
•控制特权模式使用
•控制系统调用使用
•限制能够使用的系统资源,如cpu/mem/磁盘空间/磁盘IO/网络吞吐等/pid/inode等
•使用secret保存敏感信息
•博云自研产品支持利用分区功能实现关键业务的隔离

关于运行时安全:采用第三方专业安全厂商的容器安全产品,能够在入侵行为发生时进行检测与阻断。但相应地会额外消耗资源。

关于k8s的权限控制、审计等安全措施
•组件采用独立证书
•禁用非安全端口访问
•禁用匿名用户访问K8S API server
•使用防火墙保护k8s组件使用的端口
•支持NetworkPolicy等网络隔离机制
•执行RBAC机制
•对etcd中的数据进行加密
•监控K8S审计日志
•利用网络插件获取容器间访问行为、侦测异常流量、基本的流量分析能力,例如博云自研的beyondFabric具备该能力
•发现恶意容器后,对其进行隔离

额外提一下,关于容器与 k8s 的安全基线,可以参考 CIS_Docker_Benchmark 与 CIS_Kubernetes_Benchmark。

收起
软件开发 · 2020-07-22
浏览3415
edwin1986edwin1986  系统架构师 , 上汽通用汽车
很大的问题。k8s官方有个汇总见https://kubernetes.io/docs/concepts/security/overview/从宏观角度,容器各层次具有不同best practices。比如网络networkpolicy,默认最好跨ns访问全堵塞,按需开放。比如容器避免root运行。比如rbac合理控制serviceaccount权限等等。从具体...显示全部

很大的问题。k8s官方有个汇总见https://kubernetes.io/docs/concepts/security/overview/
从宏观角度,容器各层次具有不同best practices。比如网络networkpolicy,默认最好跨ns访问全堵塞,按需开放。比如容器避免root运行。比如rbac合理控制serviceaccount权限等等。
从具体方案上,据我所知很多商业方案都通过实现k8s CXI的接口,将自身的探针注入到容器网络、存储等过程中,以便全方面嗅探和监控异常行为。

收起
汽车 · 2020-07-16
浏览4060
namelessnameless  技术总监 , 某云计算厂商
1、网络安全,一般结合SND自研CNI插件,支持vpc等,加强网络隔离,还有一种方法,就是一个租户一套k8s集群,这样做的好处是业务之间可以相互不影响;2、容器之间的安全,一般是隔离,用docker本身隔离性就较差,可以考虑沙箱容器,隔离性好一些;另外除了以上几种外,容器安全还有镜像的静态扫描,动...显示全部

1、网络安全,一般结合SND自研CNI插件,支持vpc等,加强网络隔离,还有一种方法,就是一个租户一套k8s集群,这样做的好处是业务之间可以相互不影响;
2、容器之间的安全,一般是隔离,用docker本身隔离性就较差,可以考虑沙箱容器,隔离性好一些;

另外除了以上几种外,容器安全还有镜像的静态扫描,动态扫描,k8s service扫描等等。

收起
软件开发 · 2020-07-20
浏览3379
van3012van3012  IT顾问 , free work
这个问题太复杂,需要结合自身需求还有不同的CNI插件来决定如何规划。显示全部

这个问题太复杂,需要结合自身需求还有不同的CNI插件来决定如何规划。

收起
IT咨询服务 · 2020-07-18
浏览3448

提问者

pwry
售前技术支持成都成冠实业有限公司
擅长领域: 云计算服务器容器

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-07-16
  • 关注会员:6 人
  • 问题浏览:6878
  • 最近回答:2020-07-22
  • X社区推广