This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
безопасность_в_kubernetes [2025/10/27 12:10] val |
безопасность_в_kubernetes [2025/10/27 16:51] (current) val [Шаг 2. Создание учетной записи] |
||
|---|---|---|---|
| Line 21: | Line 21: | ||
| ===== Шаг 1. Что у нас есть для начала ===== | ===== Шаг 1. Что у нас есть для начала ===== | ||
| - | ===== Шаг 2. Что у нас есть для начала ===== | + | ===== Шаг 2. Создание учетной записи ===== |
| * [[Управление учетными записями в Linux#Создание тестового набора учетных записей]] | * [[Управление учетными записями в Linux#Создание тестового набора учетных записей]] | ||
| Line 28: | Line 28: | ||
| <code> | <code> | ||
| user2@server:~$ cat user2.req | base64 -w0 | user2@server:~$ cat user2.req | base64 -w0 | ||
| + | </code> | ||
| + | * [[https://stackoverflow.com/questions/75735249/what-do-the-values-in-certificatesigningrequest-spec-usages-mean|What do the values in CertificateSigningRequest.spec.usages mean?]] | ||
| + | <code> | ||
| + | kube1:~/users# kubectl explain csr.spec.usages | ||
| kube1:~/users# cat user2.req.yaml | kube1:~/users# cat user2.req.yaml | ||
| Line 39: | Line 43: | ||
| expirationSeconds: 8640000 # 100 * one day | expirationSeconds: 8640000 # 100 * one day | ||
| usages: | usages: | ||
| - | - digital signature | + | # - digital signature |
| - | - key encipherment | + | # - key encipherment |
| - client auth | - client auth | ||
| Line 54: | Line 58: | ||
| kube1:~/users# kubectl get csr/user2 -o jsonpath="{.status.certificate}" | base64 -d | tee user2.crt | kube1:~/users# kubectl get csr/user2 -o jsonpath="{.status.certificate}" | base64 -d | tee user2.crt | ||
| + | |||
| + | |||
| + | user2@server:~$ scp root@kube1:users/user2.crt . | ||
| + | </code> | ||
| + | * [[Система Kubernetes#Инструмент командной строки kubectl]] | ||
| + | <code> | ||
| + | user2@server:~$ kubectl config set-cluster cluster.local --insecure-skip-tls-verify=true --server=https://192.168.13.221:6443 | ||
| + | |||
| + | user2@server:~$ cat .kube/config | ||
| + | |||
| + | user2@server:~$ kubectl config set-credentials user2 --client-certificate=user2.crt --client-key=user2.key --embed-certs=true | ||
| + | |||
| + | user2@server:~$ kubectl config set-context default-context --cluster=cluster.local --user=user2 | ||
| + | |||
| + | user2@server:~$ kubectl config use-context default-context | ||
| + | |||
| + | user2@server:~$ kubectl auth whoami | ||
| + | |||
| + | user2@server:~$ kubectl get pods | ||
| + | Error from server (Forbidden) | ||
| </code> | </code> | ||