AA (AWS Automation)
AWS 운영 자동화를 위한 CLI 도구입니다.
미사용 리소스 탐지, 보안 점검, IAM 감사, ALB 로그 분석 등 AWS 운영에 필요한 도구들을 하나로 통합했습니다. 멀티 계정·멀티 리전 환경을 지원하며, 대화형 메뉴에서 키워드 검색으로 필요한 도구를 빠르게 찾을 수 있습니다. 분석 결과는 Excel 보고서로 저장됩니다. 현재 19개 AWS 서비스를 지원하며, 지속적으로 새로운 도구를 추가할 예정입니다.
주요 기능
- 멀티 계정 & 리전: 여러 AWS 계정과 리전을 동시에 분석
- 다중 인증 지원: SSO Session, SSO Profile, Access Key 자동 감지
- Excel 보고서: 분석 결과를 Excel 파일로 자동 저장
- 키워드 검색: 대화형 메뉴에서 도구를 빠르게 검색
- 플러그인 구조: 새로운 도구를 쉽게 추가 가능
설치
PyPI (권장)
pip install aws-automation
소스에서 설치
git clone https://github.com/expeor/aws-automation.git
cd aws-automation
pip install -e .
사용법
aa # 대화형 메인 메뉴
aa ec2 # EC2 도구 바로 실행
aa vpc # VPC 도구 바로 실행
메인 메뉴
| 키 | 설명 |
|---|---|
a |
전체 도구 |
s |
AWS 서비스별 (EC2, RDS…) |
c |
AWS 분류별 (Compute…) |
t |
점검 유형 (보안, 비용…) |
f |
즐겨찾기 |
p |
프로필 |
g |
프로필 그룹 |
q |
종료 |
검색
> rds # 서비스명
> 미사용 # 한글 키워드 (비용)
> 보안 # 한글 키워드 (보안)
> snapshot # 영문 키워드
CLI 명령어
기본 사용법
aa # 대화형 메뉴
aa ec2 # EC2 도구 실행
aa --help # 도움말
aa --version # 버전 표시
Headless 모드 (CI/CD용)
대화형 프롬프트 없이 도구를 실행합니다. SSO Profile 또는 Access Key 프로파일만 지원합니다. 도구 경로는 aa list-tools로 확인하세요.
# 도구 경로 확인
aa list-tools
# 기본 실행
aa run ec2/ebs_audit -p my-profile -r ap-northeast-2
# 다중 리전
aa run ec2/ebs_audit -p my-profile -r ap-northeast-2 -r us-east-1
# 전체 리전
aa run ec2/ebs_audit -p my-profile -r all
# 프로파일 그룹으로 실행
aa run ec2/ebs_audit -g "개발 환경" -r ap-northeast-2
# JSON 출력
aa run ec2/ebs_audit -p my-profile -f json -o result.json
옵션:
| 옵션 | 설명 |
|---|---|
-p, --profile |
SSO Profile 또는 Access Key 프로파일 |
-g, --profile-group |
저장된 프로파일 그룹 이름 |
-r, --region |
리전 (다중 가능, all 또는 패턴) |
-f, --format |
출력 형식 (console, json, csv) |
-o, --output |
출력 파일 경로 |
-q, --quiet |
최소 출력 모드 |
도구 목록 조회
aa list-tools # 전체 도구 목록
aa list-tools -c ec2 # EC2 카테고리만
aa list-tools --json # JSON 출력
프로파일 그룹 관리
여러 프로파일을 그룹으로 묶어 한 번에 실행할 수 있습니다.
aa group list # 그룹 목록
aa group show "개발 환경" # 그룹 상세
aa group create # 그룹 생성 (인터랙티브)
aa group delete "개발 환경" # 그룹 삭제
지원 서비스
| 서비스 | 주요 도구 |
|---|---|
| EC2 | EBS/EIP/Snapshot/AMI 미사용 분석 |
| VPC | 보안 그룹, NAT Gateway, 엔드포인트 |
| S3 | 빈 버킷 탐지, 수명 주기 분석 |
| IAM | 사용자/역할 감사, 정책 분석 |
| RDS | 스냅샷 감사, 인스턴스 분석 |
| ELB | ALB/NLB 감사, 로그 분석 |
| CloudWatch | 로그 그룹 감사 |
| Route53 | 빈 호스팅 영역 탐지 |
| ECR | 미사용 저장소 탐지 |
| KMS | 키 사용 감사 |
| Secrets Manager | 미사용 시크릿 탐지 |
| SSO | SSO 구성 감사 |
| ACM | 미사용/만료 임박 인증서 탐지 |
| EFS | 미사용 파일시스템 탐지 |
| SNS | 미사용 토픽 탐지 |
| SQS | 미사용 큐 탐지 |
| ElastiCache | 미사용 클러스터 탐지 |
| API Gateway | 미사용 API 탐지 |
| EventBridge | 미사용 규칙 탐지 |
요구 사항
- Python 3.10 ~ 3.13
- AWS CLI 프로필 설정 (
~/.aws/config)
업데이트
# PyPI 설치 시
pip install --upgrade aws-automation
# 소스 설치 시
git pull && pip install -e .
라이선스
MIT License - LICENSE
Metadata
Release files for aws-automation 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| aws_automation-0.1.1.tar.gz | 446.7 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aws_automation-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / aws_automation-0.1.1.tar.gz
| Download URL | aws_automation-0.1.1.tar.gz |
|---|---|
| Size | 446.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2597b53f6cb820d43772797158831ade2948a309b857a3450b763da1c7d17ebd
|
|
BLAKE2b-256 checksum How to use checksums |
49cb0e4596f071e7cc45123b074c97c1ed7b8772cca352298e7026afe248d63f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency logRelease files / aws_automation-0.1.1-py3-none-any.whl
| Download URL | aws_automation-0.1.1-py3-none-any.whl |
|---|---|
| Size | 607.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
16049f15351ecef1c12a88ea09c831ae4bebd0a0317f95ae79d599b949594f7d
|
|
BLAKE2b-256 checksum How to use checksums |
09ccec400ae6b5a2837c7176b978e8ffa2dedefa1b6883720ec5b73dd22d4a81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency logSecurity for aws-automation 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for aws_automation-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.