12-资源注解annotations和安全行下文securityContext(了解即可)

一、资源注解annotations

资源注解,annotations就是对资源进行注释;

应用场景:

给资源(例如pod资源)提供配置信息,类似于帮助信息;

早期使用比较多,很多开源组件一般都会使用;

1,编辑一个pod资源清单加资源注解案例

root@k8s231 annottations\]# cat pod.yaml apiVersion: v1 kind: Pod metadata: name: pod-01 labels: k8s: xinjizhiwa kubernetes: k8s #资源注解(也是键值对写法) annotations: help: is a playbook,please user know it a: b b: c c: d spec: containers: - name: c1 image: centos:7 command: - "tail" - "-f" - "/etc/hosts"

2,创建pod资源

root@k8s231 annottations\]# kubectl apply -f pod.yaml

3,查看资源注解

root@k8s231 annottations\]# kubectl describe pods pod-01 Name: pod-01 Namespace: default Priority: 0 Node: k8s233/10.0.0.233 Start Time: Thu, 15 Feb 2024 19:14:00 +0800 Labels: k8s=xinjizhiwa kubernetes=k8s #资源注解位置; Annotations: a: b b: c c: d help: is a playbook,please user know it ..................

二、安全上下文securitycontext

当我们运行一个pod的容器的时候,存在一个风险,就是当有人登录到容器当中时,使用root用户登录,并修改文件等危险操作,会导致业务出现严重的安全问题,因此,k8s提供了安全上下文securitycontext,用来控制有人登录到容器当中进行的操作;

1,编辑pod资源清单配置安全上下文

root@k8s231 securitycontext\]# cat pod.yaml apiVersion: v1 kind: Pod metadata: name: pod-centos7 spec: containers: - name: c1 image: centos:7 command: \["tail","-f","/etc/hosts"

#配置pod的容器中安全相关属性

securityContext:

#配置容器为特权容器,若配置了特权容器,可能对capabilities测试有影响;

#privileged: true

#自定义linux内核特性

capabilities:

#添加所有的linux内核功能

add:

  • ALL

#移除指定linux内核特性

drop:

#代表禁用网络管理的配置

  • NET_ADMIN

#代表禁用uid和gid,表示你无法使用chown命令;

  • CHOWN

#禁用chroot命令

  • SYS_CHROOT

#如果容器的进程以root身份运行,则禁止容器启动;

runAsNonRoot: true

#指定运行容器的用户uid,注意该用户的uid必须事先存在于镜像中;

runAsUser: 666

2,创建pod

root@k8s231 securitycontext\]# kubectl apply -f pod.yaml

3,进入容器查看是否配置成功

root@k8s231 securitycontext\]# kubectl exec -it pod-centos7 -- sh sh-4.2$ whoami whoami: cannot find name for user ID 666 sh-4.2$ cd /root sh-4.2$ ls -l total 4 -rw------- 1 root root 3416 Nov 13 2020 anaconda-ks.cfg sh-4.2$ touch 1.txt touch: cannot touch '1.txt': Permission denied

可以看见,没有这个666的用户,什么都干不了;

至此,安全上下文于资源注解完毕;

相关推荐
Du_chong_huan8 分钟前
1.6 面对攻击的网络 | 《计算机网络:自顶向下方法》精读版
网络·安全·php
科技林总21 分钟前
如何安全地使用龙虾[特殊字符]
人工智能·安全
℡終嚸♂6801 小时前
钓鱼攻击全面解析:原理、手段与实战防御
网络·安全·web安全
彭波39611 小时前
.NET Framework 3.5问题修复教程!可以离线修复
windows·安全·电脑·.net·开源软件
黄焖鸡能干四碗13 小时前
网络安全建设实施方案(Word文件参考下载)
大数据·网络·人工智能·安全·web安全·制造
hzhsec13 小时前
MSF-CobaltStrike实现内网socks代理转发上线
服务器·网络·安全·网络安全
xixixi7777714 小时前
2026 年 03 月 20 日 AI+通信+安全行业日报(来更新啦)
大数据·人工智能·安全·ai·大模型·通信
SuperEugene16 小时前
TypeScript+Vue 实战:告别 any 滥用,统一接口 / Props / 表单类型,实现类型安全|编码语法规范篇
开发语言·前端·javascript·vue.js·安全·typescript
always_TT16 小时前
字符串输入:gets vs fgets(安全问题)
数据库·安全
努力的lpp17 小时前
2024小迪安全课程第三节复习笔记
笔记·安全