본문 바로가기

반응형

전체 글

(151)
[AWS] Multi Account에서 IAM 내역 감사하기 #2 - 테라폼으로 인프라 프로비저닝 1. 개요 Multi Account 환경에서 IAM 관련 Action에 대한 감사를 하기 위해서는 Log들을 Security 관련 Account에서 수집해야 한다. 이에 대한 인프라 프로비저닝은 Terraform을 사용하였다. (부분 부분 웹 콘솔로 진행한 부분도 있기 때문에 참고만 하면 좋을 것이다.) 2. 구조 프로젝트의 폴더 구조는 아래와 같다. 별도의 모듈은 굳이 사용하지 않았으며, resource, data, variable, local 등을 활용하여 리소스를 Code로써 표현하였다. # another-accounts EventBridge에서 기 정의한 IAM Action이 Pattern에 걸릴 경우 Security Account의 EventBus로 전달한다. # security-accounts..
[AWS] Multi Account에서 IAM 내역 감사하기 #1 - 개요, 아키텍쳐, 고려 사항 1. 개요 Multi Account 환경에서 IAM 관련 Action에 대한 감사를 하기 위해서는 Log들을 Security 관련 Account에서 수집해야 한다. 이에 대해 다음의 AWS 서비스들을 활용하였다. Terraform : 인프라스트럭쳐 프로비저닝 CloudTrail : AWS API 감사해주는 서비스 Event Bus : AWS Event가 흐르는 통로 Event Rule : AWS 특정 Pattern을 지닌 API를 잡아내기 위함 CloudWatch Logs : 각 Account에서 발생하는 Log들을 수집 Subscription Filter : CloudWatch Logs로 적재되는 Log들을 Amazon ES로 보내기 위한 구독 필터 설정 Amazon OpenSearch : Log 중앙..
[Kubernetes] Istio 개념, 아키텍쳐 정리 1. 개요 기존 Monolithic Architecture의 단점을 극복하고 작은 서비스들로 하나의 서비스를 이루는 것은 각각의 서비스들을 독립적으로 관리할 수 있다는 장점이 있지만 또 어떻게 보면 수십개의 MircoService가 분리되어 관리가 힘들어질 수가 있다. 각 서비스들의 개수가 많아질수록 각 Node 내의 iptables 규칙 또한 증가하면서 서비스간의 통신 또한 매우 복잡해지고 오버헤드가 발생할 수 있다. 이와 같은 서비스 간 네트워크 트래픽 관리 및 오버헤드를 낮추기 위해 Service Mesh란 기술이 나오게 되었다. 2. 서비스 매쉬 이러한 마이크로 서비스의 문제점을 해결하기 위해 Software 계층에서, 즉 Programming Code 내부에 특정 코드를 삽입하여 관리하는 것이 ..
[Security] SSO 개념 (SAML, OAuth, OIDC) IT 회사에서는 특정 서버에 대한 접근 제어 / DB 접근 제어 / AWS 콘솔 및 권한 부여 등을 관리하기 위해 다양한 솔루션들을 도입하고, 혹은 단일 관리 포인트로 두어 관리하곤 합니다. 예를 들어 AWS 멀티 어카운트 환경에서 IAM Role에 대해 관리하기 위한 consoleMe, 서버 혹은 DB 접근 제어를 위한 ChakraMax, DBSafer, TelePort, QueryPie, Systems Manager의 Session Manager 등이 있겠습니다. 이러한 내용들을 이해하는데 필요한 기본 개념이 있는데 바로 SSO, SAML, OAuth, JWT, OIDC, .. 등이 있습니다. 위와 같은 보안에 대한 기반 지식을 이해하고 있어야 보안 솔루션을 도입하는 데 있어 좀 더 효율적으로 관리할..
[JavaScript] 비동기, Promise, Async 정리 [1] Keyword : 동기, 비동기, Promise, Async, Await # 출처 (아래 출처를 보고 정리한 내용입니다.) https://elvanov.com/2597 # 동기 - 동시에 여러 작업을 수행할 수 없다. - 흐름을 예측하기 쉽다. # 비동기 - 동시에 여러 작업을 수행할 수 있다. - 흐름을 예측하기 어렵다. (무엇이 먼저 완료될 지 보장 X) > 의존성이 길게 이어져 있는 비동기 작업들을 처리할 때 곤혹에 치를 수 있음 예시 #1 function finishJob(num) { console.log(`${num}번 요원의 정보를 받아왔음`); } setTimeout(finishJob, 2000, 1); setTimeout(finishJob, 1500, 2); setTimeout(fi..
[Python] 웹크롤링으로 AWS Personal health dashboard 이벤트 긁어오기 자동화 1. 개요 [1] AWS PHD(Personal Health Dashboard)에서는 하드웨어 메인터넌스 및 VPN 싱글 터널 알림, 보안 패치 등에 대한 내용을 알려준다. [2] AWS Support Plan은 Basic, Developer, Business, Enterprise, ..로 구성되어 있다. => 여기서 AWS Health API는 Business 티어 이상부터 사용이 가능하다. 그 말은 즉슨 Basic 티어나 Developer 티어는 AWS Health API를 사용할 권한이 부여되지 않는다는 뜻이다. => Developer 이하 고객사는 AWS API를 활용하여 프로그래밍 방식으로 PHD를 확인할 수 없다. [3] Developer 이하 고객사가 여러개일 경우 AWS Web Consol..
[Kubernetes] Calico CNI 개념 알아보기 - 가시다님 주관 Kubernetes network 스터디를 진행하고 있었지만, 개인 사유로 인해 스터디를 진행하지 못하게 되어 이번이 마지막 쿠버네티스 네트워크 글이 될 것 같습니다. (물론 스터디 수행하면서 관련 내용 정리 얘기이며, 다른 글은 꾸준히 올릴 예정입니다.) - 이번 글은 실습 내용이 없으며, Caclico CNI 개념만 정리할 예정입니다. 1. 개요 Calico가 무엇이며 어떤 역할을 하고 어떻게 동작하는지 확인해본다. Calico CNI가 파드 to 파드 통신, 외부 통신, 다른 노드 간 파드 to 파드 통신에서 어떻게 동작하는지 확인해본다. Calico의 네트워크 모드로는 IPIP 모드, Direct 모드, BGP 모드, VXLAN 모드가 있는데 각각 어떻게 설정이 되어 있으며 어떻..
[운영 체제] Segmentation Falut란? 페이징과 세그멘테이션 얕게 이해하기 1. 개요 업무 중 특정 고객사의 프로세스에서 segfault가 발생하였다. 대학교 3학년 때 운영 체제 수업을 들으면서 분명히 배웠던 내용이지만 자세한 기억이 나지 않아 정리하게 되었다. 2. 기본 개념 정리 참고 : https://steady-coding.tistory.com/524 2.1) 메모리 메인 메모리 : CPU가 직접 접근할 수 있는 기억 장치 (CPU는 연산을 수행하는 장치로 Memory에 적재되어 있는 프로그램 코드를 참조하여 연산을 수행한다.) 가상 메모리 : 메모리의 공간은 한정적이기 때문에 사용자에게 더 많은 메모리를 제공하기 위해 가상 주소를 사용한다. 메모리 관리 장치는 가상 주소를 이용해 실제 데이터가 담겨 있는 주소로 변환해준다. 가상 메모리의 장점 프로그램 용량이 실제 물..

반응형