it-wiki:kubernetes:role_rolebinding_authobjects
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| it-wiki:kubernetes:role_rolebinding_authobjects [2023/08/31 09:24] – [Anlegen einer eigenen kubeconfig auf Basis eines eigenen Rollenobjektes] marko | it-wiki:kubernetes:role_rolebinding_authobjects [2024/03/13 12:02] (aktuell) – marko | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Anlegen von Authentifizierungs Objekten (User), Rollen, Cluster-Rollen und die Bindings ====== | ====== Anlegen von Authentifizierungs Objekten (User), Rollen, Cluster-Rollen und die Bindings ====== | ||
| + | ===== Der richtig schnelle Weg ===== | ||
| + | <code bash> | ||
| + | kubeadm kubeconfig user -h | ||
| + | sudo kubeadm kubeconfig user \ | ||
| + | --client-name myuser \ | ||
| + | > kubeconfig-user.yaml | ||
| + | </ | ||
| ===== Erstellen eines Authentifizierung Objektes (User) mit Hilfe von OpenSSL Schlüssel und Zertifikat ===== | ===== Erstellen eines Authentifizierung Objektes (User) mit Hilfe von OpenSSL Schlüssel und Zertifikat ===== | ||
| ==== Schlüssel und Zertifikat erstellen ==== | ==== Schlüssel und Zertifikat erstellen ==== | ||
| Zeile 15: | Zeile 22: | ||
| ==== Erstellen eines Kubernetes CSR Objektes ==== | ==== Erstellen eines Kubernetes CSR Objektes ==== | ||
| - | < | + | < |
| apiVersion: certificates.k8s.io/ | apiVersion: certificates.k8s.io/ | ||
| kind: CertificateSigningRequest | kind: CertificateSigningRequest | ||
| Zeile 76: | Zeile 83: | ||
| \\ | \\ | ||
| \\ | \\ | ||
| + | ===== Keycloak / OAuth mit kubernetes (kube-apiserver) ===== | ||
| + | ==== Einen Client anlegen ==== | ||
| + | Lege ein neues Client Objekt vom Type " | ||
| + | |||
| + | ==== Den kube-apiserver konfigurieren ==== | ||
| + | Als nächstes muss der kube-apiserver Konfiguriert werden. Je nachdem wie Eurer Kubernetes deployt wurde passt Ihr folgende Dateien an | ||
| + | |||
| + | **kubeadm**\\ | ||
| + | / | ||
| + | <code yaml> | ||
| + | spec: | ||
| + | containers: | ||
| + | - command: | ||
| + | - kube-apiserver | ||
| + | - --advertise-address=10.6.6.22 | ||
| + | - --allow-privileged=true | ||
| + | ... | ||
| + | ... | ||
| + | - --tls-cert-file=/ | ||
| + | - --tls-private-key-file=/ | ||
| + | - --oidc-issuer-url=https://< | ||
| + | - --oidc-client-id=kube-api-server-prod | ||
| + | </ | ||
| + | |||
| + | **rke2** \\ | ||
| + | / | ||
| + | <code bash> | ||
| + | write-kubeconfig-mode: | ||
| + | disable: | ||
| + | - rke2-ingress-nginx | ||
| + | cni: calico | ||
| + | cluster-cidr: | ||
| + | service-cidr: | ||
| + | kube-apiserver-arg: | ||
| + | - oidc-issuer-url=https://< | ||
| + | - oidc-client-id=kube-api-server-test | ||
| + | </ | ||
| + | |||
| + | Beim rke2 muss zusätzlich noch der rke2-server.service mittels systemctl neu gestartet werden. | ||
| + | |||
| + | ==== kubectl (Clientseite) konfigurieren ==== | ||
| + | Wir werden uns mittels krew das oidc-login Plugin für kubectl installieren. Dazu muss man sich [[https:// | ||
| + | |||
| + | Im Anschluss installiert man sich oidc-login | ||
| + | <code bash> | ||
| + | kubectl krew install oidc-login | ||
| + | </ | ||
| + | Für die restliche Konfiguration folgt man einfach den Anweisungen von oidc-login | ||
it-wiki/kubernetes/role_rolebinding_authobjects.1693473889.txt.gz · Zuletzt geändert: von marko