Python을 활용한 업무의 일부를 공유하는 게시물입니다.
아직 공부하는 입장이기에 부족한 부분이 있을 수 있습니다. 지적해주시면 적극 반영하도록 하겠습니다.
퍼가시거나, 업무에서 도움이 되었다면 댓글 하나씩 부탁드립니다 :) 감사합니다.
Summary
NACL_ID를 입력받아서 해당 NACL에 지정된 IP/Port 기반으로 차단 정책을 넣는 코드이다.
NACL_ID, def change_nacl에서 CidrBlock, PortRange를 변경하여 사용하면 된다.
#! /usr/bin/ python3
from multiprocessing.sharedctypes import Value
import boto3
from requests import session
import re
#Define AWS Account Profile
PROFILES = 'service-name' <<< 상황에 맞게 수정하시면 됩니다.
AWS_REGION = 'ap-northeast-2' <<< 상황에 맞게 수정하시면 됩니다.
NACL_ID = ['acl-xxxxxxx','acl-xxxxxxx'] <<< 상황에 맞게 수정하시면 됩니다.
session = boto3.Session(profile_name=PROFILES, region_name=AWS_REGION)
client = session.client('ec2')
def chagne_nacl(): <<< 상황에 맞게 수정하시면 됩니다.
print('\n----------Start NACL Change----------')
for id in NACL_ID:
a = client.create_network_acl_entry(
CidrBlock='192.168.0.0/16',
Egress=False,
NetworkAclId=id,
PortRange={
'From': 22,
'To': 22
},
Protocol='6',
RuleAction='allow',
RuleNumber=31
)
a = client.create_network_acl_entry(
CidrBlock='192.168.0.0/16',
Egress=False,
NetworkAclId=id,
PortRange={
'From': 22,
'To': 22
},
Protocol='6',
RuleAction='allow',
RuleNumber=32
)
print('\n----------{} NACL change complete----------'.format(id))
print('\n----------Finish NACL Change----------')
if __name__ == "__main__":
chagne_nacl()
'개발 이모저모 > Python' 카테고리의 다른 글
[Python] CloudFront, ALB WAF 미연결 리소스 찾기 (0) | 2022.12.29 |
---|---|
[Python] ECR Image Trivy 취약점 점검하기 (0) | 2022.12.11 |
[Python] 사용자별 Workspace 마지막 사용일 구하기 (0) | 2022.12.10 |
[Python] VirusTotal API + Response Save Bot 만들기 (0) | 2022.03.12 |