본문 바로가기

kubernetes

(3)
[kubernetes] Authorization, cluster role authorization, 말그대로 권한이나 허가이다. 서버에 여러 component가 있고, 여러 user가 존재한다. 그런데 관리자가 아닌 일반 사용자가 node를 삭제하는등 component를 마음대로 조작해버리면 문제가 발생할 수 있다. 따라서 user에 따라 kubernetes 접근에 제한적 기능은 주고싶을 때 kuberenets는 권한을 부여할 수 있는 기능을 제공한다. 4가지 Authorization이 있다. 1. Node 2. ABAC(Attribute-Based Access Control) 3. RBAC(Rule-Based Access Control) 4. webhook 간단하게 뭔지 살펴보고, 제일 자주 사용한다는 3번을 좀 더 살펴보자. 1. Node 지난번에 kubelet에 cert..
[Kubernetes] kubeconfig kubernetes에서 보안이걸린 component에 접근하는 방법은 다음과 같다. 1. curl request >> curl https://kube-server:6443/api/v1/pods --key admin.key --cert admin.crt --cacert ca.crt 2. kubelet declarative >> kubectl get pods --server kube-server:6443 --clinet-key admin.key --client-certificate admin.crt --certificate-authority ca.crt 3 kubeconfig 사용 >> kubectl get pods --kubeconfig config 사실상 1,2번은 너무 길어서 사용성 떨어짐 따라서 3번..
TLS basic TLS?? user 가 key를 생성하고, 해당 key를 통해 데이터를 암호화한다. 서버에서는 user로 부터 해당 key와 암호화된 데이터를 전송하여, 서버는 해당 key로 복호화 한다. 근데 네트워크를 통해 key를 전송하다가 hacker가 key를 중간에 알아내버리면 큰일남.. 보안에 큰 문제가 생김 --> 따라서 symmetric key를 안전하게 서버에 전송하는게 중요함 어떻게?? 예를 들어 보자. 유저와 서버가 있고, 해커는 항상 모든 네트워크 패킷을 훔쳐본다고 하자. 1. server는 public key와 private key 2개를 발급 받음 그럼 저기 my-key.key, my-key.pem 같이 key가 public, private key가 생긴다. 2. user가 server에 접근..