Context

由 kubeadm 创建的cluster 的kubernetes API 服务器,出于测试目的,

临时配置允许未经身份验证和未经授权的访问,授予匿名用户 cluster-admin 的访问权限。

Task

重新配置cluster的Kubernetes APl 服务器,以确保只允许经过身份验证和授权的 REST请求。

使用授权模式 Node,RBAC 和准入控制器 NodeRestriction。

删除用户 system:anonymous 的 ClusterRoleBinding来进行清理。

注意:所有kubectl 配置环境/文件也被配置使用未经身份验证和未经授权的访问。

你不必更改它,但请注意,一旦完成 cluster 的安全加固, kubectl 的配置将无法工作。

您可以使用位于 cluster 的 master 节点上,cluster 原本的 kubectl 配置文件

/etc/kubernetes/admin.conf ,以确保经过身份验证的授权的请求仍然被允许。

参考资料

https://kubernetes.io/zh-cn/docs/reference/command-line-tools-reference/kube-apiserver/

解答

切换集群

kubectl config usr-contextKSSH00401
  1. 切换到master
ssh master && sudo -i
  1. 确保只有认证并且授权过的 REST 请求才被允许
编辑 /etc/kubernetes/manifests/kube-apiserver.yaml 修改下面内容

- --authorization-mode=AlwaysAllow

- --enable-admission-plugins=AlwaysAdmit

vim /etc/kubernetes/manifests/kube-apiserver.yaml

修改为

- -- authorization-mode=Node,RBAC

- --enable-admission-plugins=NodeRestriction

重启kubelet

systemctl daemon-reload

systemctl restart kubelet

修改完后,等待3分钟,查看集群是否正常

  1. 删除题目要求的角色绑定
查

kubectl get clusterrolebinding system:anonymous

删

kubectl delete clusterrolebinding system:anonymou

CKS 考试题整理 (14)-启用API Server认证的更多相关文章

  1. 033.Kubernetes集群安全-API Server认证及授权

    一 Kubernetes集群安全 1.1 安全机制 Kubernetes通过一系列机制来实现集群的安全控制,其中包括API Server的认证授权.准入控制机制及保护敏感信息的Secret机制等.集群 ...

  2. k8s之API Server认证

    集群安全性 在生产环境中,必须保障集群用户的角色以及权限问题,不能给所有用户都赋予管理员权限. 1.集群的安全性必须考虑如下几个目标 (1)保证容器与其所在宿主机的隔离 (2)限制容器给基础设置或其他 ...

  3. K8S Api Server认证

    目录 认证类型 基于CA证书的双向认证 apiserver端配置 生成客户端私钥和证书 master核心组件与apiserver的认证方式 HTTP Token认证 HTTP Basic认证 kube ...

  4. 拿nodejs快速搭建简单Oauth认证和restful API server攻略

    拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最 ...

  5. k8s使用自定义证书将客户端认证接入到API Server

    自定义证书使用kubectl认证接入API Serverkubeconfig是API Server的客户端连入API Server时使用的认证格式的客户端配置文件.使用kubectl config v ...

  6. kubernetes API Server安全

    用户访问API Server(以下简称Server),K8S的安全检查步骤:认证和授权. 认证解决用户是谁的问题,就是验证用户名密码;授权解决用户能做什么的问题,就是检查该用户是否拥有权限访问请求的资 ...

  7. k8s 组件介绍-API Server

    API Server简介 k8s API Server提供了k8s各类资源对象(pod,RC,Service等)的增删改查及watch等HTTP Rest接口,是整个系统的数据总线和数据中心. kub ...

  8. RESTful Api 身份认证安全性设计

    REST是一种软件架构风格.RESTful Api 是基于 HTTP 协议的 Api,是无状态传输.它的核心是将所有的 Api 都理解为一个网络资源.将所有的客户端和服务器的状态转移(动作)封装到 H ...

  9. Web APi之认证

    Web APi之认证(Authentication)两种实现方式后续[三](十五)   前言 之前一直在找工作中,过程也是令人着实的心塞,最后还是稳定了下来,博客也停止更新快一个月了,学如逆水行舟,不 ...

  10. spring cloud+dotnet core搭建微服务架构:Api授权认证(六)

    前言 这篇文章拖太久了,因为最近实在太忙了,加上这篇文章也非常长,所以花了不少时间,给大家说句抱歉.好,进入正题.目前的项目基本都是前后端分离了,前端分Web,Ios,Android...,后端也基本 ...

随机推荐

  1. 怎么在php7项目中安装event扩展

    今天就跟大家聊聊有关怎么在php7项目中安装event扩展,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获. 安装支持库libevent wget ...

  2. ffmpeg protocol concat 进行ts流合并视频的时间戳计算及其音画同步方式一点浅析

    ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式一点浅析 目录 ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式一点 ...

  3. 前端里那些你不知道的事儿之 【window.onload】

    作者:京东科技 孙凯 一.前言 相信很多前端开发者在做项目时同时也都做过页面性能优化,这不单是前端的必备职业技能,也是考验一个前端基础是否扎实的考点,而性能指标也通常是每一个开发者的绩效之一.尤其马上 ...

  4. 高可用(keepalived)部署方案

    前言:为了减少三维数据中心可视化管理系统的停工时间,保持其服务的高度可用性.同时部署多套同样的三维可视化系统,让三维数据中心可视化系统同时部署并运行到多个服务器上.同时提供一个虚拟IP,然后外面通过这 ...

  5. day90:luffy:基于vue+drf的路飞学城项目前端部署

    目录 1.域名备案 2.域名解析 3.设置安全组 4.部署架构图 5.一些准备工作 6.docker 7.把前端项目通过nginx容器来运行 后端部署传送门:基于vue+drf的路飞学城项目后端部署 ...

  6. day66:Linux:nginx+uwsgi+django跑python项目

    目录 0.uwsgi简述 1.使用uwsgi+django运行demo 2.nginx+uwsgi+django跑pythonav项目 0.uwsgi简述 1.什么是wsgi WSGI,全称Web S ...

  7. SELECT COUNT(*) 会造成全表扫描?回去等通知吧

    本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...

  8. 线上诊断神器-arthas基本应用

    Arthas基本应用 一.Arthas作用 什么是Arthas呢? ​ Arthas 是一款阿里推出的线上监控诊断产品,通过全局视角实时查看应用 load.内存.gc.线程的状态信息,并能在不修改应用 ...

  9. flume组件以及通过命令监控大数据平台转态

    实验一.Flume 组件安装配置 1.下载和解压 Flume 可 以 从 官 网 下 载 Flume 组 件 安 装 包 , 下 载 地 址 如 下 URL 链 接 所 示 https://archi ...

  10. gradle下载

    gradle下载:https://services.gradle.org/distributions/src.zip源码 .bin.zip安装文件.all.zip源码+安装文件 配置环境变量.