• 프로필사진
    Home
  • Portfolio
  • github [#ffffff] Created with Sketch.
    Github
  • linkedin
    Linkedin
  • Setting
  • Posting
    • 분류 전체보기 (105)
      • Aws (96)
      • Backend (3)
      • Extension (1)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • Lambda Revoke
        2024년 12월 24일
        • wngnl05
        • 작성자
        • 2024.12.24.:51

        보안그룹에 포트를 추가하거나 삭제하면 22, 2220포트를 제외한 포트를

        자동으로 삭제되도록 만들어보겠습니다.

         

         

        Lambda Code

        IAM Role : EC2 FULL ACCESS

        Lambda 실행시간 : 30초

        더보기
        import boto3
        
        def lambda_handler(event, context):
        
            # 보안 그룹 ID
            security_group_id = '<보안그룹 아이디>'
        
        
            # EC2 클라이언트 생성
            ec2 = boto3.client('ec2')
            #보안 그룹의 현재 인바운드 규칙 가져오기
            response = ec2.describe_security_groups(GroupIds=[security_group_id])
            security_group = response['SecurityGroups'][0]
            ingress_permissions = security_group['IpPermissions']
        
            #인바운드 규칙 중 22와 2220 포트를 제외한 모든 포트 삭제
            for permission in ingress_permissions:
                if 'FromPort' in permission and permission['FromPort'] not in [22, 2220]:
                    ec2.revoke_security_group_ingress(
                        GroupId=security_group_id,
                        IpPermissions=[permission]
                    )
                    
            # 아웃바운드 규칙 중 80와 443 포트를 제외한 모든 포트 삭제
            for permission in egress_permissions:
                if 'FromPort' in permission and permission['FromPort'] not in [80, 443]:
                    ec2.revoke_security_group_egress(
                        GroupId=security_group_id,
                        IpPermissions=[permission]
                    )  
                    
                    
            return {
                'statusCode': 200,
                'body': '22와 2220 포트를 제외한 모든 인바운드 규칙이 삭제되었습니다.'
            }

         

         

        Cloud Trail

        추적을 생성해줍니다.

        추적을 생성할 반드시 "Cloud Watch Logs"를 활성화 해주어야 합니다.

        그 뒤로는 상황에 맞게 선택해줍니다.

         

         

         

        1분 정도 기다리고 람다 트리거에 생성한 Cloud Watch Logs를 연결해줍니다

        이제 보안그룹에 포트를 추가하거나 삭제하면 자동으로 22이나 2220을 제외한 모든 포트가 삭제됩니다.

         

         

         

         

         

         

         

        저작자표시 비영리 변경금지

        'Aws' 카테고리의 다른 글

        Docker로 Java ( jar, war ) 배포하기  (0) 2024.12.24
        EKS - Grafana  (0) 2024.12.24
        Lambda를 이용한 Kinesis firehose 레코드 변환  (0) 2024.12.24
        Lambda를 대상으로 한 ALB 생성하기  (0) 2024.12.24
        EC2에서 SQS에 메세지 전송하는 코드  (0) 2024.12.24
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바