![](/img/trans.png)
[英]Unable to access NGINX nodePort service in K8 cluster running on RPI
[英]Unable to access Ambassador in K8 RBAC environment
在 RBAC 環境中部署大使並使用節點端口創建服務
[root@-1 xxxxx]# kb get svc -n ambassador
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ambassador NodePort 172.18.0.216 12.197.35.74 80:31270/TCP,443:31729/TCP 17h
嘗試訪問 UI https://12.197.35.74/ ,出現以下錯誤
{
"kind": "Status",
"apiVersion": "v1",
"metadata": { },
"status": "Failure",
"message": "forbidden: User \"system:anonymous\" cannot get path \"/\"",
"reason": "Forbidden",
"details": { },
"code": 403
}
看起來我缺少與 RBAC 相關的東西,任何幫助都非常感謝
此錯誤意味着您無權訪問 API 服務器,因為它不知道您是誰。 這很好,否則任何人都可以操縱您的集群。
最新的 kubernetes 部署工具在集群上啟用了 RBAC。 當大使訪問https://12.197.35.74/
時,它被降級為全能用戶system:anonymous
。 該用戶幾乎沒有 kube-apiserver 的權限。
最重要的是,大使需要使用 kube-apiserver 進行身份驗證 - 使用不記名令牌或由 k8s 集群的 CA 密鑰簽名的客戶端證書。
https://12.197.35.74/
時使用 ServiceAccount 的令牌Kubernetes API 服務器是 Kubernetes 集群的大腦。 您應該將對其的訪問限制在絕對最低限度,使用標准網絡和防火牆機制限制從集群外部對 API 服務器的訪問,以及使用 Kubernetes 網絡策略從集群內部訪問。
看一看: kube-apiserver-error 、 kubernetes-api-server 、 kube-apiserver-forbidden-messages 、 systemanonymous -cannot-get-path 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.