Kubernetes Dashboard 配置用戶名密碼方式登錄操作流程
Kubernetes - Dashboard 配置用戶名密碼方式登錄
前言:為了 K8s 集群安全,默認(rèn)情況下 Dashboard 以 Token的形式登錄的,那如果我們想以用戶名/密碼的方式登錄該怎么操作呢?其實(shí)只需要我們創(chuàng)建用戶并進(jìn)行 ClusterRoleBinding綁定即可,接下來(lái)是具體的操作流程。
K8s的dashboard默認(rèn)是通過(guò)Token去登錄的,有時(shí)候也會(huì)不太方便,我們也可以通過(guò)賬號(hào)密碼的形式去登錄dashboard,不過(guò)賬號(hào)密碼登錄dashboard的方式僅在K8s v1.19以前的版本支持。
相關(guān)環(huán)境:
以下操作需要在master節(jié)點(diǎn)進(jìn)行操作
1、創(chuàng)建用戶密碼存放文件
cat << EOF | sudo tee /etc/kubernetes/pki/basic_auth_file admin,admin,1 EOF # 說(shuō)明: # 用戶名:admin # 密碼:admin # 用戶ID:1 或腳本 echo "admin,admin,1" > /etc/kubernetes/pki/basic_auth_file
2、修改 kube-apiserver 配置文件
# 先提前做個(gè)備份 cp /etc/kubernetes/manifests/kube-apiserver.yaml /etc/kubernetes/manifests/kube-apiserver.yaml.back
# 修改配置文件,配置增加密碼文件路徑 vim /etc/kubernetes/manifests/kube-apiserver.yaml --------------------------------------------------------------- apiVersion: v1 kind: Pod metadata: creationTimestamp: null labels: component: kube-apiserver tier: control-plane name: kube-apiserver namespace: kube-system ······ - --secure-port=6443 - --service-account-key-file=/etc/kubernetes/pki/sa.pub - --service-cluster-ip-range=10.96.0.0/12 - --tls-cert-file=/etc/kubernetes/pki/apiserver.crt - --tls-private-key-file=/etc/kubernetes/pki/apiserver.key - --basic-auth-file=/etc/kubernetes/pki/basic_auth_file #增加這一行 ····· # 保存退出后 kube-apiserver 會(huì)自動(dòng)重啟(大約10s左右,無(wú)需 kubectl apply -f ***)
3、查看 kube-apiserver 是否重啟
kubectl get pod -n kube-system
4、將admin用戶與集群角色權(quán)限進(jìn)行綁定
[root@k8s-master ~]# kubectl create clusterrolebinding DashBoardLogin --clusterrole=cluster-admin --user=admin clusterrolebinding.rbac.authorization.k8s.io/DashBoardLogin created # DashBoardLogin:自定義集群角色綁定name # 將admin用戶綁定到集群角色cluster-admin # cluster-admin是一個(gè)內(nèi)置的ClusterRole(集群角色),它具有最高級(jí)別的權(quán)限 # cluster-admin允許持有該角色的用戶或服務(wù)賬戶對(duì)整個(gè)Kubernetes集群進(jìn)行廣泛的控制
具體來(lái)說(shuō),cluster-admin ClusterRole 具有以下特征和權(quán)限:
全局權(quán)限:cluster-admin 具有對(duì)整個(gè)集群的權(quán)限,而不僅僅限于某個(gè)命名空間。這意味著擁有 cluster-admin角色的用戶可以管理整個(gè)集群的資源,包括節(jié)點(diǎn)、命名空間、服務(wù)、Pod 等。
權(quán)限廣泛:cluster-admin 具有廣泛的權(quán)限,包括創(chuàng)建、刪除和修改各種資源,以及查看集群中的所有資源的權(quán)限。這包括對(duì)ConfigMaps、Secrets、Deployments、Services等的完全控制權(quán)。
角色的高度特權(quán):由于cluster-admin 角色的特權(quán)級(jí)別非常高,因此授予它的用戶或服務(wù)賬戶將具有執(zhí)行集群中任何操作的能力,包括破壞性操作。因此,應(yīng)小心授予cluster-admin權(quán)限,確保只授予受信任的用戶或服務(wù)賬戶。
通常情況下,cluster-admin 角色應(yīng)該被保留用于緊急情況、集群管理和維護(hù)操作。該權(quán)限不應(yīng)該隨意授予普通用戶,以防止誤操作或?yàn)E用權(quán)限。對(duì)于普通應(yīng)用程序和開(kāi)發(fā)人員,通常會(huì)創(chuàng)建更嚴(yán)格的RBAC 角色,以限制其對(duì)資源的訪問(wèn)權(quán)限,從而提高集群的安全性。
5、查看集群角色綁定情況
[root@k8s-master ~]# kubectl get clusterrolebinding DashBoardLogin NAME ROLE AGE DashBoardLogin ClusterRole/cluster-admin 8s
6、修改 kubernetes-dashboard 認(rèn)證方式
# 先提前做個(gè)備份 cp /root/recommended.yaml /root/recommended.yaml.back
# 修改配置文件支持用戶密碼登錄 [root@k8s-master ~]# vim recommended.yaml --- ...... args: - --auto-generate-certificates - --namespace=kubernetes-dashboard - --token-ttl=21600 #新增內(nèi)容1 - --authentication-mode=basic #新增內(nèi)容2 ...... ---
7、啟動(dòng) Dashboard
kubectl apply -f recommended.yaml
8、Dashboard 訪問(wèn)驗(yàn)證
# 已經(jīng)可以通過(guò)用戶名密碼的方式登錄dashboard了 admin/admin
在Kubernetes Dashboard中,默認(rèn)情況下,賬戶和密碼的方式已經(jīng)被廢棄,取而代之的是使用Token進(jìn)行登錄。
到此這篇關(guān)于Kubernetes Dashboard 配置用戶名密碼方式登錄的文章就介紹到這了,更多相關(guān)Kubernetes Dashboard用戶名密碼方式登錄內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Istio 自動(dòng)注入 sidecar 失敗導(dǎo)致無(wú)法訪問(wèn)webhook服務(wù)的解決方法
最近工作中在部署Istio環(huán)境的過(guò)程中發(fā)現(xiàn)官方示例啟動(dòng)的pod不能訪問(wèn)不到Istio的webhook,這個(gè)問(wèn)題也是困擾了我一天,我把他歸類到sidecar注入失敗的情況下,本文給大家分享問(wèn)題解決方法,感興趣的朋友跟隨小編一起看看吧2023-10-10淺析k8s中各組件和kube?apiserver通信時(shí)的認(rèn)證和鑒權(quán)問(wèn)題
這篇文章主要介紹了k8s中各組件和kube?apiserver通信時(shí)的認(rèn)證和鑒權(quán),本文使用的k8s集群是用kubekey搭建,命令是./kk create cluster --with-kubernetes v1.21.5 --with-kubesphere v3.2.1,需要的朋友可以參考下2022-06-06kubernetes(k8s)安裝metrics-server實(shí)現(xiàn)資源使用情況監(jiān)控方式詳解
這篇文章主要介紹了kubernetes(k8s)安裝metrics-server實(shí)現(xiàn)資源使用情況監(jiān)控,包括Metrics?Server下載方式,?k8s集群安裝部署metrics的問(wèn)題,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04Rainbond配置組件自動(dòng)構(gòu)建部署官方文檔講解
這篇文章主要為大家介紹了Rainbond配置組件自動(dòng)構(gòu)建部署官方文檔講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Rainbond功能架構(gòu)及應(yīng)用管理官方文檔介紹
這篇文章主要為大家介紹了Rainbond功能機(jī)構(gòu)及使用官方文檔,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04php redis擴(kuò)展支持scan命令實(shí)現(xiàn)方法
這篇文章主要介紹了php redis擴(kuò)展支持scan命令實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下2016-10-10K8s中的臨時(shí)容器Ephemeral?Containers使用
這篇文章主要介紹了K8s中的臨時(shí)容器Ephemeral?Containers使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07