분류 전체보기 767

ssh키쌍으로 데이터 암호화, 복호화

안녕하세요. 이 글은 ssh 공개키와 개인키로 데이터를 암호화하는 방법을 설명합니다. 1.  들어가며ssh 공개키 또는 개인키로 데이터를 암호화, 복호화하는 것은 암호학 분야입니다. 수학 알고리즘을 사용하여 데이터를 암호화와 복호화를 해야 합니다. 다행히 openssl명령어를 사용하면 쉽게 데이터를 암호화와 복호화 할 수 있습니다. 암호화, 복호화 알고리즘은 키를 생성할 때 지정합니다. 알고리즘은 RSA, ECDSA 등이 있습니다.  2.  예제코드github 링크: https://github.com/choisungwook/portfolio/tree/master/computer_science/encryption_and_decryption 3.  예제3.1 키쌍 생성ssh-keygen명령어를 사용해서 개인..

Ansible mysql 플러그인을 잘못 사용해서 발생한 오류

1. 오류내용Ansible에서 mysql플러그인 동작을 잘 이해하지 못해 생긴 오류가 있었습니다. 개발환경에서 갑자기 애플리케이션이 mysql을 접속하지 못하는 오류가 발생했습니다. 2. 디버깅과 임시조치1. mysql이 잘 실행되고 있는지 확인mysql은 AWS RDS로 실행되기 때문에 mysql 는 멀쩡하다고 생각했습니다. 2. 애플리케이션을 실행하는 인스턴스에서 mysql연결 확인nc, telent을 사용해서 mysql과 네트워크 문제가 있는지 확인했습니다. 잘 연결되었습니다. 3. 최근 작업확인mysql DML는 ansible로 관리되고 있습니다. 그래서 ansible 실행이력을 확인했습니다. 마침 오류가 발생한 시점에 ansible실행이력이 있었습니다. 4. 임시조치ansible코드는 mysql..

의도하지 않는 DNS요청을 pod

https://youtu.be/cBUgtfXl_U8?si=dRckphcTIOBhsLJk&t=336 1. 들어가며pod가 DNS요청을 할 때, 클라이언트가 의도하지 않는 DNS 요청을 할 때가 있습니다.  예를 들어 google.com만 DNS 요청을 했지만, 의도하지 않은 DNS요청이 여러 번 수행되었습니다. coredns pod에서도 당연히 의도하지 않는 DNS요청을 받고 DNS응답을 줬습니다. 왜 의도하지 않는 DNS요청이 생성될까요? 2. 리눅스 리졸버의 ndots와 search의도하지 않은 DNS요청이 생긴 이유는 dots와 search설정 때문입니다. ndots와 search설정은 pod안에서 /etc/resolv.conf파일에서 확인할 수 있습니다.cat /etc/resolv.conf  nd..

쿠버네티스에서 DNS주소 끝에 cluster.local이 붙는 이유

https://youtu.be/B7IgpbOfPq8?si=b6xCbqY5oZ920lRK&t=1229  1. kubedns란?kubedns는 쿠버네티스에서 DNS(Domain Name system)서버 역할을 수행합니다. pod에서 DNS요청이 필요할 때 kube-dns pod에게 DNS요청을 합니다. kube-dns pod IP는 고정 IP가 아니므로 kubedns 서비스의 cluster IP를 사용합니다. pod에서 /etc/resolv.conf에 설정된 nameserver IP는 kube-dns 서비스 clusterIP입니다.  2. kubedns podkubedns pod는 애드온에 속합니다. 쉽게 표현하면 쿠버네티스가 어떤 애플리케이션으로 kubedns pod를 쓰라고 강제하지 않았습니다. kub..

ansible playbook에서 AWS Secret 값을 가져오는 방법

안녕하세요. 이 글은 ansible playbook에서 AWS Secret값을 가져오는 방법을 설명합니다. 1. 사용하는 모듈aws collection의 aws_secret 모듈을 사용합니다. aws collection은 ansible galaxy로 설치합니다.ansible-galaxy collection install amazon.aws ansible collection이 궁금하신분은 저의 이전 글을 참고하면 좋습니다.- ansible collection 설명 글: https://malwareanalysis.tistory.com/700 2. 사용방법aws.secret모듈은 lookup함수를 사용하여 secret manager 값을 불러옵니다. 가져온 시크릿값을 쉽게 파싱하려면 ansible from_j..