CKS1.28【1】kube-bench 修复不安全项

Context

针对 kubeadm 创建的 cluster 运行 CIS 基准测试工具时,发现了多个必须立即解决的问题。

Task

通过配置修复所有问题并重新启动受影响的组件以确保新的设置生效。

修复针对 API 服务器发现的所有以下违规行为:

1.2.7 Ensure that the --authorization-mode argument is not set to AlwaysAllow FAIL

1.2.8 Ensure that the --authorization-mode argument includes Node FAIL

1.2.9 Ensure that the --authorization-mode argument includes RBAC FAIL

1.2.18 Ensure that the --insecure-bind-address argument is not set FAIL (v1.28 考题中这项没给出,但最好也检查一下)

修复针对 kubelet 发现的所有以下违规行为:

Fix all of the following violations that were found against the kubelet:

4.2.1 Ensure that the anonymous-auth argument is set to false FAIL

4.2.2 Ensure that the --authorization-mode argument is not set to AlwaysAllow FAIL

注意:尽可能使用 Webhook 身份验证/授权。

修复针对 etcd 发现的所有以下违规行为:

Fix all of the following violations that were found against etcd:

2.2 Ensure that the --client-cert-auth argument is set to true FAIL

 参考资料:

https://kubernetes.io/zh/docs/reference/config-api/kubelet-config.v1beta1/

答题:

1、切换到 Master 的 root 下

ssh master01
sudo -i

2、修改api-server

#备份配置文件
cp /etc/kubernetes/manifests/kube-apiserver.yaml /tmp
vim /etc/kubernetes/manifests/kube-apiserver.yaml
#修改、添加、删除相关内容
#修改 authorization-mode,注意 Node 和 RBAC 之间的符号是英文状态的逗号,而不是点。
 - --authorization-mode=Node,RBAC
#删除 insecure-bind-address。实际考试中,有可能本来就没写这行。
 - --insecure-bind-address=0.0.0.0

3、修改kubelet

cp /var/lib/kubelet/config.yaml /tmp
vim /var/lib/kubelet/config.yaml
#修改
apiVersion: kubelet.config.k8s.io/v1beta1
authentication:
  anonymous: #修改 anonymous 下的,将 true 改为 false
    enabled: false #将 true 改为 false
  webhook:
    cacheTTL: 0s
    enabled: true #修改为 true。注意,这两个 enabled 千万不要搞混,anonymous 应该为 false,webhook 应该为 true。考试时,可能只有一个是错误的。
  x509:
    clientCAFile: /etc/kubernetes/pki/ca.crt
authorization: #修改 authorization 下的
  mode: Webhook #改为 Webhook
  webhook:
......

4、修改etcd

cp /etc/kubernetes/manifests/etcd.yaml /tmp
vim /etc/kubernetes/manifests/etcd.yaml
修改
 - --client-cert-auth=true #修改为 true
#编辑完后重新加载配置文件,并重启 kubelet
systemctl daemon-reload
systemctl restart kubelet

修改完成后,等待 5 分钟,再检查一下所有 pod,确保模拟环境里的所有 pod 都正常。

kubectl get pod -A

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
{"success":true,"message":null,"code":0,"data":[{"LotNr":"H73228_44","PartName":"TCS3449","SerialNr":"3D09402250","FmtVer":"v1.0.6","c_time":"Fri-Jan-13-08:29:00-2023","ATIME":"9","AGAIN":"11","ATIME_calib":"9","AGAIN_calib":"11","Peak_shift_F1":"0.1","Peak_shift_F2":"-0.7","Peak_shift_FZ":"0.1","Peak_shift_F3":"-0.7","Peak_shift_F4":"-1.3","Peak_shift_FY":"-0.5","Peak_shift_F5":"-2.2","Peak_shift_FXI":"-0.1","Peak_shift_F6":"-1.1","Peak_shift_F7":"-3.1","Peak_shift_Clear":"-0.9","Peak_shift_IR":"0.2","Peak_shift_Flicker":"-0.8","s_cks":"11.0","responsitivity_F1":"0.959","responsitivity_F2":"1.014","responsitivity_FZ":"1.073","responsitivity_F3":"1.0659999999999998","responsitivity_F4":"1.054","responsitivity_FY":"1.0590000000000002","responsitivity_F5":"1.011","responsitivity_FXI":"1.007","responsitivity_F6":"0.993","responsitivity_F7":"1.032","responsitivity_Clear":"1.004","responsitivity_IR":"0.997","responsitivity_Flicker":"1.01","r_cks":"-13.279000000000002","G31":"1.01","G32":"0.999","G33":"1.024","G34":"0.978","G35":"1.025","G36":"0.982","g3_cks":"-6.018","G41":"0.978","G42":"0.98","G43":"0.994","G44":"0.978","G45":"0.981","G46":"0.982","g4_cks":"-5.893","G51":"0.978","G52":"0.989","G53":"0.979","G54":"0.994","G55":"0.992","G56":"0.982","g5_cks":"-5.914","G61":"0.994","G62":"0.994","G63":"0.994","G64":"0.994","G65":"0.997","G66":"0.991","g6_cks":"-5.964","G71":"0.998","G72":"1.004","G73":"1.002","G74":"1.002","G75":"1.003","G76":"1.0","g7_cks":"-6.009","G81":"1.0","G82":"1.0","G83":"1.0","G84":"1.0","G85":"1.0","G86":"1.0","g8_cks":"-6.0","G91":"1.02","G92":"1.023","G93":"1.019","G94":"1.021","G95":"1.024","G96":"1.036","g9_cks":"-6.143","Ga1":"1.0590000000000002","Ga2":"1.065","Ga3":"1.064","Ga4":"1.065","Ga5":"1.0659999999999998","Ga6":"1.105","g10_cks":"-6.424","Gb1":"1.045","Gb2":"1.051","Gb3":"1.033","Gb4":"1.022","Gb5":"1.04","Gb6":"1.0759999999999998","g11_cks":"-6.267","Gc1":"1.102","Gc2":"1.113","Gc3":"1.067","Gc4":"1.046","Gc5":"1.063","Gc6":"1.1740000000000002","g12_cks":"-6.565","Gd1":"1.304","Gd2":"1.283","Gd3":"1.13","Gd4":"1.09","Gd5":"1.112","Gd6":"1.493","g13_cks":"-7.412000000000001"}],"useTime":88,"srvTime":1686040244843}
06-07
这是一个JSON格式的字符串。它包含一个名为"data"的数组,数组中包含一个对象,该对象有许多键和值。如果你想从这个JSON字符串中获取特定的值,可以使用JSON解析器将其转换为一个QJsonObject对象,然后使用QJsonObject的value()函数获取该对象中特定键的值。例如,如果你想获取LotNr的值,可以这样做: ```c++ #include <QJsonDocument> #include <QJsonObject> #include <QJsonArray> QString jsonString = "{\"success\":true,\"message\":null,\"code\":0,\"data\":[{\"LotNr\":\"H73228_44\",\"PartName\":\"TCS3449\",\"SerialNr\":\"3D09402250\",\"FmtVer\":\"v1.0.6\",\"c_time\":\"Fri-Jan-13-08:29:00-2023\",\"ATIME\":\"9\",\"AGAIN\":\"11\",\"ATIME_calib\":\"9\",\"AGAIN_calib\":\"11\",\"Peak_shift_F1\":\"0.1\",\"Peak_shift_F2\":\"-0.7\",\"Peak_shift_FZ\":\"0.1\",\"Peak_shift_F3\":\"-0.7\",\"Peak_shift_F4\":\"-1.3\",\"Peak_shift_FY\":\"-0.5\",\"Peak_shift_F5\":\"-2.2\",\"Peak_shift_FXI\":\"-0.1\",\"Peak_shift_F6\":\"-1.1\",\"Peak_shift_F7\":\"-3.1\",\"Peak_shift_Clear\":\"-0.9\",\"Peak_shift_IR\":\"0.2\",\"Peak_shift_Flicker\":\"-0.8\",\"s_cks\":\"11.0\",\"responsitivity_F1\":\"0.959\",\"responsitivity_F2\":\"1.014\",\"responsitivity_FZ\":\"1.073\",\"responsitivity_F3\":\"1.0659999999999998\",\"responsitivity_F4\":\"1.054\",\"responsitivity_FY\":\"1.0590000000000002\",\"responsitivity_F5\":\"1.011\",\"responsitivity_FXI\":\"1.007\",\"responsitivity_F6\":\"0.993\",\"responsitivity_F7\":\"1.032\",\"responsitivity_Clear\":\"1.004\",\"responsitivity_IR\":\"0.997\",\"responsitivity_Flicker\":\"1.01\",\"r_cks\":\"-13.279000000000002\",\"G31\":\"1.01\",\"G32\":\"0.999\",\"G33\":\"1.024\",\"G34\":\"0.978\",\"G35\":\"1.025\",\"G36\":\"0.982\",\"g3_cks\":\"-6.018\",\"G41\":\"0.978\",\"G42\":\"0.98\",\"G43\":\"0.994\",\"G44\":\"0.978\",\"G45\":\"0.981\",\"G46\":\"0.982\",\"g4_cks\":\"-5.893\",\"G51\":\"0.978\",\"G52\":\"0.989\",\"G53\":\"0.979\",\"G54\":\"0.994\",\"G55\":\"0.992\",\"G56\":\"0.982\",\"g5_cks\":\"-5.914\",\"G61\":\"0.994\",\"G62\":\"0.994\",\"G63\":\"0.994\",\"G64\":\"0.994\",\"G65\":\"0.997\",\"G66\":\"0.991\",\"g6_cks\":\"-5.964\",\"G71\":\"0.998\",\"G72\":\"1.004\",\"G73\":\"1.002\",\"G74\":\"1.002\",\"G75\":\"1.003\",\"G76\":\"1.0\",\"g7_cks\":\"-6.009\",\"G81\":\"1.0\",\"G82\":\"1.0\",\"G83\":\"1.0\",\"G84\":\"1.0\",\"G85\":\"1.0\",\"G86\":\"1.0\",\"g8_cks\":\"-6.0\",\"G91\":\"1.02\",\"G92\":\"1.023\",\"G93\":\"1.019\",\"G94\":\"1.021\",\"G95\":\"1.024\",\"G96\":\"1.036\",\"g9_cks\":\"-6.143\",\"Ga1\":\"1.0590000000000002\",\"Ga2\":\"1.065\",\"Ga3\":\"1.064\",\"Ga4\":\"1.065\",\"Ga5\":\"1.0659999999999998\",\"Ga6\":\"1.105\",\"g10_cks\":\"-6.424\",\"Gb1\":\"1.045\",\"Gb2\":\"1.051\",\"Gb3\":\"1.033\",\"Gb4\":\"1.022\",\"Gb5\":\"1.04\",\"Gb6\":\"1.0759999999999998\",\"g11_cks\":\"-6.267\",\"Gc1\":\"1.102\",\"Gc2\":\"1.113\",\"Gc3\":\"1.067\",\"Gc4\":\"1.046\",\"Gc5\":\"1.063\",\"Gc6\":\"1.1740000000000002\",\"g12_cks\":\"-6.565\",\"Gd1\":\"1.304\",\"Gd2\":\"1.283\",\"Gd3\":\"1.13\",\"Gd4\":\"1.09\",\"Gd5\":\"1.112\",\"Gd6\":\"1.493\",\"g13_cks\":\"-7.412000000000001\"}],\"useTime\":88,\"srvTime\":1686040244843}"; QJsonDocument doc = QJsonDocument::fromJson(jsonString.toUtf8()); QJsonObject obj = doc.object(); QJsonArray dataArray = obj.value("data").toArray(); QJsonObject dataObject = dataArray.at(0).toObject(); QString lotNr = dataObject.value("LotNr").toString(); ``` 现在,变量lotNr包含了LotNr的值"H73228_44"。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值