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的用户,什么都干不了;

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

相关推荐
砚凝霜5 小时前
【软考信息安全】第一章 网络安全基础、管理与法律法规
安全·web安全·php
商业看点解说7 小时前
企业需要为大模型应用设置安全护栏,推荐使用哪些生成式AI平台?
人工智能·安全
是隼人8 小时前
buuctf-pwn inndy_echo(32位fmt)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
醉颜凉10 小时前
网络安全必学:粘性MAC地址(Sticky MAC)原理与应用全解析
运维·服务器·网络·安全·web安全
迪康Defender13 小时前
政企内网终端安全建设:资产‑管控‑防护‑审计闭环能力拆解
运维·网络·安全·web安全·终端安全管理
是隼人14 小时前
buuctf-pwn mrctf2020_easy_equation(64位fmt)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
商业白皮书14 小时前
企业大模型应用可获得哪些安全防护能力?Amazon Bedrock Guardrails 从内容过滤到规则验证搭建 AI 安全护栏
网络·人工智能·安全
知见漫记14 小时前
网站经常被攻击,WAF 选哪家比较好?
安全
CCYe、14 小时前
企业AI网关中的密钥生命周期:从一把Key走天下到自动轮换
网络·人工智能·安全
mounter62514 小时前
Linux 内核 binfmt_misc 深度全景解析:历史、架构、安全
linux·安全·linux kernel·kernel