본문 바로가기

Personal

(107)
90DaysOfDevOps 1~2일차 - 개요 보호되어 있는 글입니다.
코드트리 dx,dy 테크닉 시뮬레이션명령에 맞게 동작하는 코드를 작성하는 것 학습 콘텐츠: 인접한 칸으로 이동 - dx, dy 테크닉1. 문제(x, y) 위치에서 시작하여 한 칸 이동하려 합니다.숫자 0이 주어지면 동쪽으로, 숫자 1이 주어지면 남쪽으로,숫자 2가 주어지면 서쪽으로, 숫자 3이 주어지면 북쪽으로 이동하려 합니다. 2. 예시 답변 코드dir_num = 2 # 주어진 방향이 서쪽인 경우x, y = 1, 5 # 현재 위치가 (1, 5)인 경우if dir_num == 0: nx, ny = x + 1, yelif dir_num == 1: nx, ny = x, y - 1elif dir_num == 2: nx, ny = x - 1, yelse: nx, ny = x, y + 1dx와 dy값을 위와 같이 정하..
aws 아키텍처 사례 5 - 보안성 높은 재택근무 환경을 위한 AWS 아키텍처 출처: https://aws.amazon.com/ko/blogs/korea/improving-security-architecture-controls-for-wfh/ Amazon Client VPN사용자가 Amazon Virtual Private Cloud(VPC)에 대한 보안 연결을 설정할 수 있게 해주는 서비스Private Subnet에 있는 EC2에 접근 가능상호인증 방식과 사용자 기반 인증방식을 제공Amazon Certificate ManagerCA(Certificate Authority) 역할을 하는 서비스VPN의 상호인증을 위한 서버 및 클라이언트 키 발급 가능SSL/TLS X.509 인증서와 키를 생성, 저장 및 갱신AWS Directory ServiceAWS가 관리하는 AD를 통해 아이디, ..
aws 아키텍처 사례 4 - Codeguru를 활용한 코드 보안 자동화 참고 링크: https://aws.amazon.com/ko/blogs/security/automate-and-enhance-your-code-security-with-ai-powered-services/ Amazon CodeWhispererCopilot처럼 코드 생성만 해주는 줄 알았는데 보안 스캔 기능이 내장되어 있어서 취약한 코드를 알려준다.Python, Java, JavaScript로 코드를 생성하여 OWASP TOP 10 취약점과 안전하지 않은 암호화 라이브러리, 잠재적인 보안 취약성 등을 검색하여 해결을 위한 실행 가능한 제안 제공코드 대안을 생성하여 애플리케이션의 전반적인 보안 상태 강화 가능사용 가능 언어: Python, Java, JavaScript, TypeScript, C#, Go, R..
aws 아키텍처 사례 3 - AWS Serverless 기반 채팅 아키텍처 참고 링크: https://www.youtube.com/watch?v=XnEYjgoPUfw도메인과 HTTPS 연결 설정Route 53: 가지고 있는 도메인 연결CloudFront: 배포 및 HTTPS 연결ACM(AWS Certificate Manager): SSL/TLS 인증서정적 웹 호스팅S3: 웹에 필요한 파일 버킷에 저장유저 및 채팅API Gateway: REST api와 Web Socket으로 Lambda 함수와 연계하여 채팅 목록과 유저에 관한 기능 처리Lambda: 함수 호출을 통해 채팅 목록 불러오기 및 저장, 유저 목록 추가 및 삭제 기능 구현DynamoDB: AWS에서 제공하는 완전 관리형 NoSQL 데이터베이스DynamoDB Stream: DynamoDB 테이블의 변경사항(항목 추가, ..
aws 아키텍처 사례 2 - Session Manager로 서버 접근통제 구현 출처: https://tech.cloudmt.co.kr/2022/09/29/aws-systems-manager%EC%9D%98-session-manager%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%98%EC%97%AC-%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B9%97-%ED%99%98%EA%B2%BD%EC%9D%98-%EC%84%9C%EB%B2%84-%EC%A0%91%EA%B7%BC%ED%86%B5%EC%A0%9C-%EA%B5%AC%ED%98%84/ 아키텍처아키텍처 설명IAM 정책으로 인스턴스에 접근할 수 있는 권한을 부여한 사용자로 세션 시작Systems Manager의 Session Manager 서비스에서 사용자 ID 인증, 권한 확인 후 연결이 이루어진다.VPC..
aws 아키텍처 사례 - AWS AppSync를 사용한 실시간 라이브 스포츠 업데이트 참고 자료: https://d1.awsstatic.com/architecture-diagrams/ArchitectureDiagrams/real-time-live-sports-updates-sol.pdf?did=wp_card&trk=wp_card 설명: 실시간 스포츠 점수 업데이트, 게임 및 경기 통계, 소셜 미디어 상호 작용 등을 제공하는 아키텍처 아키텍처 중앙의 Main stack1. 외부에서 Amazon Kinesis Data Streams는 실시간 스포츠 데이터를 수집한다.2. AWS Lambda로 DynamoDB의 정보를 사용해서 데이터를 변환하고 강화한다.3. AWS AppSync로 구독자에게 새로운 이벤트 사용 가능 여부를 알리고 DynamoDB와 상호 작용한다. 아키텍처 왼쪽의 Optinal..
CloudGoat 실습 - cloud_breach_s3 예전에 실습을 한 번 했던 시나리오라서 저장해뒀던 실습 내용을 복습하면서 작성한다. 시나리오의 이름을 봤을 때 클라우드의 s3에서 데이터가 유출되는 시나리오일 것이라고 예상이 가능하다. 먼저 cloud_breach_s3 시나리오를 create 해준다. 아래 사진들처럼 명령어 치고 기다리면 성공도 하고, 필요한 정보들이 같이 출력된다. 작년에 실습했을 때는 시나리오 생성부터 오류가 났어서 임의로 수정 후에 시나리오를 실습할 수 있었는데, 이 부분도 어느새 수정된 것 같다! ec2_server_ip에 주목해야 한다. 메타데이터 서비스가 사용 가능한지 정보를 얻는 명령어를 실행시켜주자. 메타데이터 정보를 얻어봤다. 이제 여기서 iam/security-credentials/ 경로에서 role-name을 출력시킬..