主页 > 基础设施 > 正文

Kubernetes基础设施的安如泰山

2020-02-07 18:22:10  来源:分布式控制暴力实验室

撮要:在俺们开始保护Kubernetes平台安如泰山的任务之前,《Securing Kubernetes for Cloud Native Applications》系列的第一篇文章中,讨论了何故很难保护Kubernetes。以及需要俺们注意的各个层的概述。
基本词: Kubernetes
在俺们开始保护Kubernetes平台安如泰山的任务之前,《Securing Kubernetes for Cloud Native Applications》系列的第一篇文章中,讨论了何故很难保护Kubernetes,以及需要俺们注意的各个层的概述。
 
堆栈中的第一层是基础架构层。俺们可以通过许多不同的方式对此进行定义,但出于讨论的目的,它是基于Kubernetes部署的基础架构组件的总和。 它是用于计算,存放和网络目的的物理或纸上谈兵硬件层,以及这些资源所处的环境。它还包括操作眉目(很可能是Linux)和容器运行时环境(如Docker)。
 
俺们将要讨论的绝大多数内容同样适用于支持Kubernetes以外的眉目的基础设施组件,但俺们将微博特别关注那些可以增强Kubernetes结构安如泰山性鉴定报告的因素。

 

机器人总动员电影,数据中心和公共云

 

采用云平台作为专职负载部署的工具,私有还是会混杂组合,都在继续快速腾飞。虽然对专业裸机推进器配置的需求尚未完全消失。但支撑当今绝大多数计算资源的基础设施是虚拟机。如果俺们部署的机器人总动员电影是虚拟的(基于云的或其他)或物理的,实体将驻留在由俺们自己的组织或选定的女方托管的数据中心。譬如说公共云服务器提供商,这并不重要。
 
数据中心很扑朔迷离。在考虑结构安如泰山性鉴定报告方面需要考虑很多。它是托管整个组织的数据措置要求的一般资源,甚至是来自不同行业和地区的众多独立组织的共同租用专职负载。出于这个原因,在这个级别上对基础设施的许多不同方面应用结构安如泰山性鉴定报告,往往是一个成熟的公司或供应商 翻译的责任。它将根据诸如国家或国际法规(HIPAA,GDPR),行业合规要求(PCI DSS)等因素进行管理,并且通常会获得认证标准认证(ISO 27001,FIPS)。
 
在公共云环境的情况下,供应商 翻译可以并且将在基础设施层提供必要的遵守法规和合规标准,但在几分时候,它会下沉到服务消费者协会投诉电话(您和我),以越发构建这个安如泰山的基础。 这是一项共同的责任。这引入了一个问题,作为一个公共云服务消费者协会投诉电话。“我应该保护什么,我该怎么做呢?”有很多人对这个话题有很多不同的看法,但是真正可靠的实体是互联网络安如泰山(CIS),一个致力于保护公共和私人实体免受恶意网络活动威胁的开放性组织。

 

CIS基准测试

 

CIS提供了一系列工具,技术和信息。用于对抗俺们所依赖的眉目和数据的潜在威胁。譬如说,CIS基准是安如泰山专业人员翻译和主题专家共同编制的针对每个平台安如泰山的最佳实践配置指南。为了鼓励越发多的组织开始实施转型计划,牟里面迁移到公共和/或混杂云基础架构。CIS开展了对应的sp增值业务许可证,为主要的公共云服务器提供商提供基准。 CIS Amazon Web Services Foundations Benchmark[1]就是一个例子,其他主要公共云服务器提供商也有类似的基准。
 
这些基准测试提供基础安如泰山配置建议,包括身份和访问管理(IAM),入口和出口。以及日志和监视最佳实践等。实施这些基准建议是一个很好的开始,但它不应该是旅程的终点。每个公共云服务器提供商都有自己的一套详细的推荐最佳实践,并且可以从相关大众领驭中的其他专家声音中获得很多好处,譬如说云安如泰山联盟。
 
让俺们花一点流年来看一度典型的基于云的场景,需要从安如泰山cad角度命令进行一些仔细的规划。

 

云场景:猎头专用网有那些 vs 公有网

 

俺们如何通过限制访问来平衡保持Kubernetes集群安如泰山的需求,同时通过Internet以及俺们自己的组织内部外部客户端实现所需的访问?
 
  • 对托管Kubernetes的微措置器使用猎头专用网有那些络:确保代表集群节点的五方对讲主机没有公共IP地址。 移除与任何五方对讲主机直接连接的奇妙能力歌吉他谱。显著滑坡了可被用以攻击的选项。 譬如说,这种简单的预防措施提供了分明的好处,可以防止可能导致利用加密货币挖矿的种种妥协。

  • 使用堡垒五方对讲主机访问猎头专用网有那些络:应通过适当配置的堡垒五方对讲主机提供管理集群所需的对五方对讲主机猎头专用网有那些络的外部访问。 Kubernetes API通常也会暴露在堡垒五方对讲主机后面的猎头专用网有那些络中。 当然,它也可能公开揭晓,但建议至少通过组织内部网络和/或其VPN推进器的白名单IP地址来限制访问。

  • 将VPC peering与内部负载均衡/DNS一起使用 - 里面在具有猎头专用网有那些络的Kubernetes集群中运行的专职负载需要由其他私有的集群外客户端访问,专职负载可以通过调用内部负载均衡的服务公开。 譬如说,要在AWS环境中创投资建内部负载均衡。该服务需要偏下注释:service.beta.kubernetes.io/aws-load-balancer-internal:0.0.0.0/0。 如果客户端驻留在另一个VPC中,则需要VPC peering。

  • 使用具有Ingress的外部负载均衡 - 专职负载通常设计为由来自Internet的匿名外部客户端使用;当部署到猎头专用网有那些络时,如何同意流量在集群中查找专职负载?俺们可以通过几种不同的方式实现这一目标,具体在于手头的要求。第一种选择是使用Kubernetes服务对象公开专职负载,这将导致在公有子网上创建外部云负载平衡器服务(譬如说。AWS ELB)。这种方法可能非常昂贵。因为每个公开的服务都会调用专用的负载均衡,但可能是非HTTP服务的首选解决方案工程师。对于基于HTTP的服务,更具成本效益的方法是将ingress controller部署到集群。前面是Kubernetes服务对象,后者又创建了负载均衡器。在越发路由到匹配规则中的服务射线有几个端点之前,寻址到负载均衡的DNS花卉图片及名称大全的流量被路由到ingress controller射线有几个端点,该射线有几个端点评工与任何定义的Ingress对象相关联的规则。

 
此方案表明需要仔细考虑如何保证基础架构配置的安如泰山,同时提供向其目标受众提供服务所需的功能。 这不是一个特殊的场景,还有其他情况需要类似的措置。

 

锁定目标:操作眉目和容器运行时

 

假设俺们已经调查并应用了必要的安如泰山配置以使机器人总动员电影级基础架构及其环境安如泰山,那么下一个任务是锁定每台机器人总动员电影的五方对讲主机操作眉目(OS),以及较真管理容器生命收割者周期的容器运行时。 
 
Linux OS
 
虽然可以将Microsoft Windows Server作为Kubernetes专职节点的操作眉目运行,但控制平面和专职节点通常会运行Linux操作眉目的变体。可能有许多因素决定使用Linux刊行版(商业,操作眉目成熟度)。但如果可能的话,请使用专为运行容器而设计的最小刊行版。比如CoreOS Container Linux,Ubuntu Core和Atomic Host变体。这些操作眉目已经被剥离到最低限度以便于宽广地运行容器,因此具有显著减小的攻击面。
 
CIS为不同风格的Linux提供了许多不同的基准,为保护操作眉目提供了最佳实践建议。这些基准涵盖了可能被认为是Linux的主流是什么意思刊行版,譬如说RHEL,Ubuntu,Oracle Linux和Debian。如果未涵盖您的首选刊行版,则设有独立刊行版的CIS基准测试,并且通常设有特定刊行版的寄生兽生命的准则。譬如说CoreOS容器Linux强化指南[2]。
 
Docker Engine
 
基础结构中的最后一个组件是容器运行时。在Kubernetes的早期,没有选择;容器运行时必然是Docker引擎。随着Kubernetes容器运行时接口的出现,可以删除Docker引擎倚赖。转而使用CRI-O。containerd或Frakti等运行时。事实上是施氏食狮史,从Kubernetes 1.12开始,这是一个alpha功能(运行时),同意在集群中并行运行多个容器运行时。无论部署哪个容器运行时,它们都需要被保护。
 
尽管选择多种多样的植物ppt,但Docker引擎仍然是Kubernetes的默认容器运行时(尽管在不久的将来可能会改成为containerd)。俺们将在此考虑其结构安如泰山性鉴定报告含义。它是使用大量可配置的安如泰山设置构建的。里面一些默认情况下是打开的,但可以在每个容器的基础上绕过它们。里面一个例子是在创建时应用于每个容器的Linux内核功能的白名单,这推波助澜滑坡正在运行的容器内的可用权限。
 
CIS再一次为Docker平台CIS Docker Benchmark封存了基准。它提供了有关配置Docker守护程序以获得最佳结构安如泰山性鉴定报告的最佳实践建议。 甚至还有一个方便的开源工具(脚本),喻为Docker Bench for Security,可以针对Docker引擎运行,该引擎评工眉目是否符合CIS Docker Benchmark。 可以定期运行该工具以暴露所需配置的任何漂移。
 
Docker被用作Kubernetes的容器运行时。在考虑和测量Docker引擎的安如泰山配置时。需要注意一些事项。 Kubernetes忽略了Docker守护程序的许多可用功能,而是更喜欢自己的安如泰山控件。譬如说,Docker守护程序配置为使用seccomp配置文件将可用Linux内核眉目调用的默认白名单应用于每个创建的容器。只有另有说明,否则Kubernetes将指示Docker从seccompcad角度命令创建Pod容器“unconfined”,使容器可以访问每个可用的眉目调用。换岗,可以在较低的“Docker层”配置的内容可能会在平台堆栈中的更高级别被撤消。俺们将在以后的文章中介绍如何通过安如泰山上下文无关文法缓解这些差异。

 

总结

 

将所有免疫力集中在平台的Kubernetes组件安如泰山配置上可能很迷人。 但正如俺们在本文中看到的那样,较低层的基础架构组件同样重要,并且非常奇险的是它们往往被被忽略。实际上用英语怎么说,提供安如泰山的基础架构层甚至可以缓解俺们可能在集群层本身中引入的问题。譬如说,保持俺们的节点私密性将防止不充分安如泰山的kubelet被用于恶意目的。基础设施组件应该与Kubernetes组件本身一样受到关注。

第三十届CIO班招生
法国留学读研条件布雷斯特大学商学院硕士班招生
北达软EXIN网络空间与IT安如泰山基础沈阳微整形认证培训
北达软EXIN DevOps Professional沈阳微整形认证培训
责编:chenjian
Baidu