목록Security/리눅스 (24)
wonder

☞ Secret secret은 암호화로 민감한 정보를 암호화하여 저장하고 관리합니다. DB username, password 등이 있습니다. 말이 암호화지 사실 디코딩을 통한 평문 확인이 쉬운 base64인코딩 입니다. base64는 말그대로 64개의문자로 인코딩을 합니다. 대문자, 소문자, 숫자, 끝에 =(00) 을 포함합니다. base32는 소문자없이 대문자, 숫자만 사용합니다. base16은 대문자,숫자 일부만 사용합니다. 인코딩 과정 평문을 cisco ascii 코드 중 바이너리(2진법)으로 변환합니다. 전체 8비트 중에서 끝에 2비트를 빼고 ... 10진법으로 바꾸고 그것을 base64로 확인하여 변환합니다. .. 중요한점은 과정까지는 몰라도 형태를 보고 무슨 인코딩인지 구분할 줄 알아야합니다...

☞ docker와 kubernetes를 사용하는이유에 대해서 명확하게 차이점을 알고 있어야합니다. 도커는 서버1에 이미지를 가져와서 컨테이너 여러곳에 만드는 것입니다. 만들어진 개발환경을 이미지로 만들어서 복제다운받을 수있는 것이 큰 장점입니다. kubernetes는 이미지를 가져오는 것은 동일하지만 컨테이너가 아닌 실제 물리(가상)서버를 만들고 싶다면 master - slave nodes 형태로 연결시키고 전달해주어야합니다. 각각 네트워크 설정하고, 설치하기가 귀찮으니 그 부분에 대해서 장점입니다. 웹서버를 만들더라도 디플로이먼트로 복제3개를 만들고 한곳에 연결을 몰아놓지 않고 분산접속을 합니다. 파드에는 컨테이너 여러개를 만들 수 있습니다. 스케줄러가 노드당 하나씩 파드를 붙입니다. 외부에서 서버에 ..

☞ 파드 종류 init 컨테이너 파드 initContainers: name: init-myservice name: init--mydb 메인 컨테이너를 작동시키기 전에 미리 테스트로 동작시킬 컨테이너입니다. until ~ do ~ done 이 실행되고 종료되었다면 메인 컨테이너를 실행합니다. 인프라 컨테이너 파드는 파드의 환경을 만들어주는 컨테이너 입니다. ip주소, 호스트이름 등을 관리 합니다. static 파드 cat /var/lib/kubelet/config.yaml > /etc/kubernetes/manifests 설정디렉토리에 test.yml 파일을 생성하기만해도 실행이됩니다. 파드 설정 가능한 옵션 initservice 리소스 cpu, 메모리 제한할 수 있습니다. lscpu lsmem reque..

☞ 쿠버네티스(Kubernetes) 파드는 컨테이너를 그룹화시켜서 관리해줍니다. 예를 들어 웹서버, 로그 수집기, DB서버, 모니터링 서버 등 하나의 시스템에 여러 서버가 필요하고 서로다른 4개의 서버를 파드라는 하나의 그룹에 담아서 이미지를 불러오고 관리합니다. 도커와 비슷해보이지만 한곳에 모아서 컨트롤 한다는 개념이 도커와는 조금 다릅니다. master - node1,2,3 Ansible 노드 구성은 이렇게 됩니다. 저번시간에 Ansible 키배포를 하고 현재 연결한 상태입니다. 노드에 파드를 할당시키고 할당받은 노드를 변함없이 쭉 사용합니다. 만약 노드에 장애가 발생했을 경우 다른 노드로 변경할 수 있습니다. kubectl get nodes -o wide master와 노드1,2,3 레디 상태를 확..

☞ Ansible 이때까지 하나의 서버가 컨테이너에게 만든 이미지를 도커로 나눠줬다면 지금하는 건 서버끼리 master- slave 개념으로 나눠주게 됩니다. ansible은 레드햇에서 만들어 배포하며 ansible을 이용해서 마스터가 클라이언트에게 생성한 시스템을 나눠줍니다. ssh 키를 이용해 배포하는데 배포할 때는 클라이언트가 굳이 ansible을 깔거나 하지 않아도 배포되는 것이 장점입니다. 물리 서버이든 가상서버 이든 서버가 여러대 있는데 ansible이 없다면 그걸 일일이 네트워크 설정을 해야되고, 깔아야되고 등등 반복작업이 번거로워집니다. 초기세팅 master - 4RAM, 4CPU node1,2,3 2RAM minikube 6RAM 램 메모리, CPU를 세팅하고 일단 OS설치, 네트워크 세..

☞ docker-compose docker-compose란 쉽게 생각해서 이미지 다운, 네트워크 설정, 포트설정 등 한번에 설정할 수 있어서 관리하기 더 편합니다. dockerfile과 다르지 않지만 여러개의 컨테이너를 관리하기에는 compose가 좋습니다. 웹 시스템의 경우 여러 서버가 필요하며 그에 따라 컨테이너도 여러개가 필요합니다. 컨테이너들을 한번에 관리, 운용이 가능한 docker-compose를 사용합니다. yml 또는 yaml 등의 파일로 설정을 합니다. 환경 구성전에 자동 완성을 시켜주는 스크립트를 다운받기도 합니다. curl -SL https://raw.githubusercontent.com/docker/compose/1.29.2/contrib/completion/bash/\ docke..