Rainbond结合NeuVector实践容器安全管理( 二 )


「学习模式」
学习和记录容器、主机间网络连接情况和进程执行信息 。
自动构建网络规则白名单,保护应用网络正常行为 。
为每个服务的容器中运行的进程设定安全基线,并创建进程配置文件规则白名单 。
「监控模式」
NeuVector 监视容器和主机的网络和进程运行情况,遇到非学习模式下记录的行为将在 NeuVector 安全事件中进行告警 。
「保护模式」
NeuVector 监视容器和主机的网络和进程运行情况,遇到非学习模式下记录的行为直接拒绝 。
针对于以上三种模式,可以总结出来适于生产环境的最佳实践,当新的业务准备上线的时候,可以先默认是学习模式,经过一段时间的学习,记录容器的以及主机的规则,然后转换成监控模式,运行一段时间,监控是否有特殊的网络流量以及主机进程,帮助我们把特殊的网络动向记录下来,并进行告警确认是否放行,最后转换成监控模式,避免一些恶意的操作对我们的环境造成不必要的危险 。
基于集群的镜像仓库做漏洞检查kubernetes 集群部署业务的最小单元是 pod 但是pod 的组成部分最重要的其实是镜像, NeuVector 也是可以基于镜像进行漏洞检查,避免在镜像被注入特殊的漏洞机制
对接 Rainbond 时,在不使用外部的镜像仓库的情况下,Rainbond 会提供一个默认的用于存储镜像的仓库 goodrain.me ,它是用来存储通过 Rainbond 构建的所有业务的镜像,所以通过检查里面的镜像,可以清楚的看出业务所依赖的镜像都存在那些漏洞,已避免因为镜像漏洞问题所造成的影响 。
如果在对接 Rainbond 时使用了外部的镜像仓库,且域名可以被解析到的情况,可以直接填写域名即可,因为 goodrain.me 本身是不能被 NeuVector 解析的,所以需要通过集群的 coreDNS 手动添加对应的解析,来确保 NeuVector 可以连接上 。
编辑coredns
kubectl edit cm coredns -n kube-system

Rainbond结合NeuVector实践容器安全管理

文章插图
 
获取 goodrain.me 解析的 IP
kubectl get rainbondcluster -n rbd-system -oyaml | egrep -v [A-Za-z{}]在指定位置添加以下内容,注意修改 IP
hosts {192.168.0.1 goodrain.mefallthrough}在 NeuVector web界面左侧选择 资产 > 镜像库 添加仓库
Rainbond结合NeuVector实践容器安全管理

文章插图
 
goodrain.me 默认用户为 admin,密码通过以下命令获取
kubectl get rainbondcluster -n rbd-system -oyaml | grep password | sed "1d"镜像扫描结束以后,镜像的信息会在下面进行呈现,点击想要查看的镜像名称,即可查看详细信息,以下供参考
Rainbond结合NeuVector实践容器安全管理

文章插图
 
写在最后通过本文,希望大家可以基于 Rainbond 成功把 NeuVector 容器安全平台部署起来,并且可以根据最佳实践,做好相对应的操作,当然NeuVector 的功能远远不止于此,还是需要大家不断的探索,不断的实践 。




推荐阅读