随笔分类 - Kubernetes(k8s)管理
Kubernetes(k8s)管理
摘要:Kubernetes集群证书过期解决方案:使用kubeadm为证书续期。Kubernetes证书过期及续期简介,使用kubeadm为Kubernetes集群证书续期,查看k8s集群证书过期时间,为master节点续期证书,为worker节点替换最新的证书
阅读全文
摘要:Kubernetes 审计(Auditing),Kubernetes 审计简介,审计策略简介,引入审计,启用审计,记录审计阶段为:ResponseStarted,审计级别为Metadata,apiVersion为group: "" 的日志,只记录audit命名空间里的日志,只记录audit命名空间的pods操作日志,只记录audit命名空间的pods,services,deployments操作日志,只记录audit命名空间的pods操作,审计级别为RequestResponse,只记录audit命名空间下的tom用户的pods操作,其他用户操作不记录,rules规则是从上往下匹配的,第一条规则已经匹配了,第二条就不匹配了,在 Metadata 级别为所有请求生成日志
阅读全文
摘要:配置pod拉取harbor容器镜像仓库私有镜像:secret保存账号密码,Docker-Registry类型的Secret简介,镜像仓库简介,搭建Harbor容器镜像仓库,安装Harbor,创建项目,推送镜像到harbor镜像仓库,使用secret保存harbor账号密码拉取私有仓库的镜像
阅读全文
摘要:使用Kubesec检查YAML文件安全,YAML文件是Kubernetes配置的主要载体,因此,检查YAML文件的安全性对于确保Kubernetes集群的安全至关重要,Kubesec简介,使用Kubesec检查YAML文件安全,kubesec scan podyamlsafe.yaml
阅读全文
摘要:容器镜像安全:安全漏洞扫描神器Trivy,Trivy是一款由aquasecurity团队开发的容器镜像安全漏洞扫描工具,Trivy简介,Trivy漏洞扫描原理,CVE全称是Common Vulnerabilities and Exposures,即通用漏洞披露,Trivy漏洞扫描原理简单来说就是:**Trivy下载漏洞数据库CVE到本地,Trivy本地数据库记录了常见的漏洞信息,Trivy读取镜像里的程序和本地数据库进行比对,确定镜像是否存在漏洞**。利用trivy检测容器镜像的安全性,trivy image,trivy缓存漏洞数据库目录,.cache/trivy/,检测redis镜像漏洞,检测nginx镜像漏洞,Trivy 漏洞报告格式也可以设置为JSON格式(-f), -o指定输出打印到文件里
阅读全文
摘要:准入控制器(Admission Controller):ResourceQuota,ImagePolicyWebhook ,准入控制器简介,为什么需要准入控制器,启用/禁用ResourceQuota资源配额,查看默认启用/禁用的准入控制器插件,ResourceQuota资源配额示例,禁用ResourceQuota ,配置ImagePolicyWebhook准入控制器禁止使用后缀为latest的镜像,搭建Webhook服务器,配置kubernetes连接后端webhook服务器,验证
阅读全文
摘要:以沙箱的方式运行容器:安全容器Kata Containers,Kata Containers,安全容器,gVisor,Kata Containers 的本质,就是一个轻量化虚拟机,Gvisor与Kata区别对比,配置docker使用kata作为runtime,安装docker,安装kata,配置docker支持kata作为runtime,docker使用kata作为runtime创建容器,配置containerd使用kata作为runtime,安装containerd,配置containerd支持kata作为runtime,containerd使用kata作为runtime创建容器,在k8s环境里,配置containerd作为高级别runtime,containerd使用kata作为低级别runtime,配置kubelet使其支持Kata,创建容器运行时类(Runtime Class),使用kata创建pod
阅读全文
摘要:以沙箱的方式运行容器:安全容器gvisor,安全容器隔离技术,Gvisor简介,容器runtime简介,docker容器缺陷,配置docker使用gVisor作为runtime,升级系统内核,安装gvisor,配置docker默认的runtime为gVisor,docker使用gVisor作为runtime创建容器,配置containerd使用gvisor作为runtime,containerd使用gvisor作为runtime创建容器,在k8s环境里,配置containerd作为高级别runtime,containerd使用gvisor作为低级别runtime,配置kubelet使其支持gVisor,创建容器运行时类(Runtime Class),使用gVisor创建pod
阅读全文
摘要:OPA Gatekeeper:Kubernetes的策略和管理,在kubernetes上安装OPA Gatekeeper,gatekeeper规则,使用gatekeeper禁止某些网站的镜像创建pod,使用gatekeeper禁止创建LoadBalancer类型的Services服务,CustomResourceDefinition (CRD)
阅读全文
摘要:docker使用Open Policy Agent(OPA)进行访问控制,OPA 是一个开源的通用策略引擎,可以评估策略并做出决策,Rego 是一种用于编写策略的语言,是 OPA 的核心组成部分,docker安装OPA插件,启用OPA,OPA规则之允许docker所有操作,OPA规则之禁止docker所有操作,OPA规则之禁止创建允许所有系统调用的docker容器,OPA规则之根据Authz-User判断用户是否具有创建pod权限
阅读全文
摘要:Pod安全策略:PodSecurityPolicy(PSP),PodSecurityPolicy 简介,为什么需要 PodSecurityPolicy,启用PodSecurityPolicy(PSP),PSP规则之禁止创建特权用户pod,PSP规则之限定数据卷使用某一个目录,PSP规则之限定数据卷的类型为emptyDir,PSP规则之指定使用宿主机网络,PSP规则之pod使用特定的UID运行,PSP规则之指定hostport端口,有三个命名空间ns1,ns2,ns3,tom用户只有在ns1命名空间里可以创建特权用户pod,其他命名空间都不能创建特权用户pod,需要怎么做?PSP规则实战:创建deployment
阅读全文
摘要:使用sysdig查看容器里的系统调用,sysdig -p "*%evt.num %evt.cpu %proc.name (%thread.tid) %evt.dir %evt.type %evt.args",sysdig -p "*%evt.time,%proc.name,%evt.type" container.id=a74aff1e39a2,docker run -i -dt --name sysdig --restart=always --privileged -v /var/run/docker.sock:/host/var/run/docker.sock -v /dev:/host/dev -v /proc:/host/proc:ro -v /boot:/host/boot:ro -v /lib/modules:/host/lib/modules:ro -v /usr:/host/usr:ro sysdig/sysdig,alias sysdig='docker exec -it sysdig sysdig'
阅读全文
摘要:在kubernetes里使用seccomp限制容器的系统调用,Secure Computing Mode,系统调用,使用seccomp限制docker容器系统调用,strace -fqc,SCMP_ACT_ALLOW,SCMP_ACT_LOG,SCMP_ACT_ERRNO,配置seccomp允许pod进行所有系统调用,配置seccomp禁止pod进行所有系统调用,配置seccomp允许pod进行50个系统调用
阅读全文
摘要:在kubernetes里使用AppArmor限制容器对资源的访问,AppArmor,强制访问控制(MAC),SELinux,使用AppArmor限制nginx程序访问目录,complain模式,enforce模式,aa-autodep,aa-logprof,aa-complain,aa-enforce,#include
阅读全文
摘要:删除不必要的内核模块,lsmod,删除模块:modprobe -r i2c_piix4,加载模块:modprobe i2c_piix4 ,blacklist evbug
阅读全文
摘要:配置Ingress支持HTTPS访问(二):使用cert-manager申请证书,Kubernetes,Docker,Ubuntu ,Ingress,HTTPS,Let's Encrypt,cert-manager,CA,SSL/TLS证书,SSL/TLS证书,ClusterIssuer,Issuer,Cloudflare DNS服务器,secret存储API token
阅读全文
摘要:Kubernetes集群中配置Ingress支持HTTPS访问(一):cfssl ,Kubernetes,docker ,HTTPS,Ingress,对称加密,非对称加密,中间人攻击,CA,NodePort,LoadBalancer
阅读全文
摘要:设置服务账号Service Accounts(sa)的token不挂载到pod,Service Accounts(sa)简介,在pod里设置sa的token不挂载到pod,在sa里设置sa对应的token不挂载到pod上
阅读全文
摘要:MD5算法简介,什么是校验和,使用MD5算法和sha512sum校验和检验文件完整性
阅读全文
摘要:使用kube-bench检测Kubernetes集群安全,CIS (Center for Internet Security)简介,什么是Kube-Bench?,使用kube-bench检测不安全的设置,安装kube-bench,kube-bench检测etcd组件,kube-bench检测master节点,kube-bench检测worker节点
阅读全文